以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  两数相加缺少一个值的时候会四舍五入  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=28438)

--  作者:冰31脚
--  发布时间:2013/1/29 17:11:00
--  两数相加缺少一个值的时候会四舍五入

Select Case e.DataCol.Name
    Case "执行信息_派送_费用","执行信息_回收_费用"
        If e.DataRow.IsNull("执行信息_派送_费用") Or e.DataRow.IsNull("执行信息_回收_费用") Then
            e.DataRow("月份营运报表_成本")  = e.DataRow("执行信息_派送_费用") Or e.DataRow("执行信息_回收_费用")
        Else
            e.DataRow("月份营运报表_成本") = e.DataRow("执行信息_派送_费用") + e.DataRow("执行信息_回收_费用")
        End If
    Case "执行信息_派送_重量","执行信息_回收_重量"
        If e.DataRow.IsNull("执行信息_派送_重量") Or e.DataRow.IsNull("执行信息_回收_重量") Then
            e.DataRow("月份营运报表_重量")  = e.DataRow("执行信息_派送_重量") Or e.DataRow("执行信息_回收_重量")
        Else
            e.DataRow("月份营运报表_重量") = e.DataRow("执行信息_派送_重量") + e.DataRow("执行信息_回收_重量")
        End If
       
End Select

 

代码如上,相加缺少一个值的时候会四舍五入,不知道怎么回事,大家帮看下,谢谢

 

 

 


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

两个都有值时正常

[此贴子已经被作者于2013-1-29 17:12:36编辑过]

--  作者:冰31脚
--  发布时间:2013/1/29 17:12:00
--  


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

缺少一个值时就会四舍五入了

[此贴子已经被作者于2013-1-29 17:12:59编辑过]

--  作者:lin_hailun
--  发布时间:2013/1/29 17:34:00
--  
 呃,你的代码错了。如果有一列是空,也这样计算就行了。

Select Case e.DataCol.Name
    Case "执行信息_派送_费用","执行信息_回收_费用"
                e.DataRow("月份营运报表_成本") = e.DataRow("执行信息_派送_费用") + e.DataRow("执行信息_回收_费用")    
    Case "执行信息_派送_重量","执行信息_回收_重量"    
            e.DataRow("月份营运报表_重量") = e.DataRow("执行信息_派送_重量") + e.DataRow("执行信息_回收_重量")
End Select


--  作者:冰31脚
--  发布时间:2013/1/29 18:05:00
--  

好了 感谢林老师