老师,怎样把购气_数量列的数据加到总表_上期列中。
此主题相关图片如下:计算.png
老师,项目为燃气的才能相加,购气_数量和下一行项目为燃气的总表_上期相加。谢谢老师
和这里的用法一样,使用find查询最后一个
购气日期的行,然后赋值:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=194487&skin=0
老师,搞不好。
If e.DataCol.Name = "项目" Then
If e.DataRow.IsNull("项目") = False Then
Dim dr2 As DataRow = e.DataTable.Find("项目='" & e.NewValue & "' and _sortkey <" & e.DataRow("_sortkey"),"_sortkey desc")
If dr2 IsNot Nothing Then
dr2("总表_本期读数") = dr("总表_上期读数") + dr("购气_数量")
End If
End If
End If
此主题相关图片如下:2024-12-16 19 50 21.jpg
老师,我想加在上期上否则总表_消耗数为出现负数。老师谢谢了
Dim dr2 As DataRow = e.DataTable.Find("项目='" & e.NewValue & "' and 购气_日期 is not null and _sortkey <" & e.DataRow("_sortkey"),"_sortkey desc") If dr2 IsNot Nothing Then
dr("总表_上期读数") = dr("总表_上期读数") + dr2("购气_数量")
End If
[此贴子已经被作者于2024/12/16 22:23:22编辑过]
老师,标出的代码不计算
Dim dr As DataRow = e.DataRow
Select Case e.DataCol.Name
Case "总表_本期读数","总表_上期读数"
If dr.IsNull("总表_本期读数") OrElse dr.IsNull("总表_上期读数") Then
dr("总表_消耗数") = Nothing
Else
If dr("项目") <>"燃气" Then
dr("总表_消耗数") = dr("总表_本期读数") - dr("总表_上期读数")
Else
dr("总表_消耗数") = dr("总表_上期读数") - dr("总表_本期读数")
End If
End If
End Select
If e.DataCol.Name = "项目" Then
If e.DataRow.IsNull("项目") = False Then
Dim dr2 As DataRow = e.DataTable.Find("项目='" & e.NewValue & "' and 购气_日期 is not null and _sortkey <" & e.DataRow("_sortkey"),"_sortkey desc")
If dr2 IsNot Nothing Then
dr("总表_上期读数") = dr2("购气_数量") + dr("总表_上期读数")
End If
End If
End If
If e.DataCol.Name = "项目" Then
If e.DataRow.IsNull("项目") = False AndAlso e.DataRow.IsNull("抄表日期") = False Then
Dim dr1 As DataRow = e.DataTable.Find("项目='" & e.NewValue & "' and 抄表日期 is not null and _sortkey <" & e.DataRow("_sortkey"),"_sortkey desc")
If dr1 IsNot Nothing Then
e.DataRow("总表_上期读数") = dr1("总表_本期读数")
End If
End If
End If