Foxtable(狐表)用户栏目专家坐堂 → 运算溢出


  共有2318人关注过本帖平板打印复制链接

主题:运算溢出

帅哥哟,离线,有人找我吗?
狐表(小白)
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:368 积分:3973 威望:0 精华:0 注册:2019/9/17 10:06:00
运算溢出  发帖心情 Post By:2020/5/11 23:18:00 [只看该作者]

老师,这是什么情况?当产品分类选择的不是“复合”、“实木”和“原木”的时候就弹出以下提示!

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20200511231637.png
图片点击可在新窗口打开查看


datacolchanged代码如下:
'某一列的内容被更改后执行,此时列的内容已经是更改后的值
Dim dr As DataRow = e.DataRow
Select Case e.DataCol.Name
'门超尺加价    
Case "洞高","洞宽","产品分类","产品名称"
    Dim cmd As New SQLCommand
    cmd.C
    cmd.CommandText = "SELECT 超高参考值 F ROM [test].[dbo].[XS_门超尺加价]  where  材质类型='" & dr("产品分类") & "' "
    dr("超高参考值") = cmd.ExecuteScalar()
    Dim cmd1 As New SQLCommand
    cmd1.C
    cmd1.CommandText = "SELECT 超宽参考值 F ROM [test].[dbo].[XS_门超尺加价]  where  材质类型='" & dr("产品分类") & "' "
    dr("超宽参考值") = cmd1.ExecuteScalar()
    Dim cmd2 As New SQLCommand
    cmd2.C
    cmd2.CommandText = "SELECT 超高加减费用 F ROM [test].[dbo].[XS_门超尺加价]  where  材质类型='" & dr("产品分类") & "' "
    dr("超高加减费用") = cmd2.ExecuteScalar()
    Dim cmd3 As New SQLCommand
    cmd3.C
    cmd3.CommandText = "SELECT 超宽加减费用 F ROM [test].[dbo].[XS_门超尺加价]  where  材质类型='" & dr("产品分类") & "' "
    dr("超宽加减费用") = cmd3.ExecuteScalar()
    Dim cmd4 As New SQLCommand
    cmd4.C
    cmd4.CommandText = "SELECT 加减费递增尺寸 F ROM [test].[dbo].[XS_门超尺加价]  where  材质类型='" & dr("产品分类") & "' "
    dr("加减费递增尺寸") = cmd4.ExecuteScalar()
    Dim Val As Double= (dr("洞高")-dr("超高参考值"))/dr("加减费递增尺寸")
    Dim Lng As Long = Math.Ceiling(Val)
    Dim Val1 As Double= (dr("洞宽")-dr("超宽参考值"))/dr("加减费递增尺寸")
    Dim Lng1 As Long = Math.Ceiling(Val1)
If dr("产品名称") like "木门" And dr("洞高")-dr("超高参考值") > 0 Or dr("洞宽")-dr("超宽参考值") > 0 then
   If dr.IsNull("产品分类") = false AndAlso dr.IsNull("产品名称")=False AndAlso dr.IsNull("洞高")=False AndAlso dr.IsNull("洞宽")=False then
       dr.Save() '必须保存一下
       If dr("产品分类") like "*复合*" Then
          dr("门超尺加价") = (lng * dr("超高加减费用")) + (lng1 * dr("超宽加减费用")) 
            dr.Save() '必须保存一下 
       End If
       If dr("产品分类") like "*实木*" Then
          dr("门超尺加价") = (lng * dr("超高加减费用")) + (lng1 * dr("超宽加减费用")) 
            dr.Save() '必须保存一下
       End If    
       If dr("产品分类") like "*原木*" Then
          dr("门超尺加价") = (lng * dr("超高加减费用")) + (lng1 * dr("超宽加减费用")) 
            dr.Save() '必须保存一下
       End If
    End If 
Else
       dr("门超尺加价") = Nothing
       dr.Save() '必须保存一下
End If  
End Select


[此贴子已经被作者于2020/5/11 23:33:07编辑过]

 回到顶部