以文本方式查看主题

-  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=165275)

--  作者:江南小镇
--  发布时间:2021/5/12 12:54:00
--  [求助]计算
老师,下面代码的“年度合计”列的结果总是要重置列后才能有计算的数据。


Dim dr As DataRow = e.DataRow
Select Case e.DataCol.Name
    Case "M1","M2","M3","M4","M5","M6","M7","M8","M9","M10","M11","M12"
        
        If dr.IsNull("M1") OrElse dr.IsNull("M2")  OrElse dr.IsNull("M3")  OrElse dr.IsNull("M4")  OrElse dr.IsNull("M5")  OrElse dr.IsNull("M6")  OrElse dr.IsNull("M7")  OrElse dr.IsNull("M8")  OrElse dr.IsNull("M9")  OrElse dr.IsNull("M10")  OrElse dr.IsNull("M11")  OrElse dr.IsNull("M12") Then
            dr("年度合计") = Nothing
        Else
            dr("年度合计") = dr("M1") + dr("M2") + dr("M3") + dr("M4") + dr("M5") + dr("M6") + dr("M7") + dr("M8") + dr("M9") + dr("M10") + dr("M11") + dr("M12")
            
        End If
End Select

--  作者:linyunu1
--  发布时间:2021/5/12 13:20:00
--  

[此贴子已经被作者于2021/5/12 13:25:12编辑过]

--  作者:江南小镇
--  发布时间:2021/5/12 13:38:00
--  
还是要重置列
--  作者:有点蓝
--  发布时间:2021/5/12 14:09:00
--  
"年度合计"是表达式列?
--  作者:江南小镇
--  发布时间:2021/5/12 14:20:00
--  
双精度小数
--  作者:有点蓝
--  发布时间:2021/5/12 14:31:00
--  
请上传实例说明
--  作者:江南小镇
--  发布时间:2021/5/12 14:56:00
--  
老师,“年度合计”列的结果总是要重置列后才能有计算的数据


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:复制.table


--  作者:有点蓝
--  发布时间:2021/5/12 15:02:00
--  
我测试没有问题。关闭退出项目,删除项目所在的文件夹里的bin目录,然后重启项目试试。

只是代码里控制了只有这个12个列都有值才会计算到合计