Select Case e.DataCol.Name
Case "客户名称","收款","合计"
Dim dr As DataRow
Dim mr As DataRow = e.DataRow
Dim drs As List(of DataRow)
dr = e.DataTable.Find("[_SortKey] < " & mr("_SortKey") & " And [客户名称] = '" & mr("客户名称") & "'", "[_SortKey] Desc")
If dr Is Nothing Then
mr("余额") = mr("收款") - mr("合计")
dr = mr
End If
drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey") & " And [客户名称] = '" & dr("客户名称") & "'", "[_SortKey]")
For i As Integer = 1 To drs.Count - 1
drs(i)("余额") = drs(i-1)("余额") + drs(i)("收款") - drs(i)("合计")
Next
If e.DataCol.Name = "客户名称" AndAlso e.OldValue IsNot Nothing AndAlso e.OldValue <> e.NewValue Then
dr = e.DataTable.Find("[_SortKey] < " & mr("_SortKey") & " And [客户名称] = '" & e.OldValue & "'", "[_SortKey] Desc")
If dr Is Nothing Then
dr = e.DataTable.Find("[客户名称] = '" & e.OldValue & "'", "[_SortKey]")
If dr IsNot Nothing Then
dr("余额") = dr("收款") - dr("合计")
End If
End If
If dr IsNot Nothing Then
drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey") & " And [客户名称] = '" & dr("客户名称") & "'", "[_SortKey]")
For i As Integer = 1 To drs.Count - 1
drs(i)("余额") = drs(i-1)("余额") + drs(i)("收款") - drs(i)("合计")
Next
End If
End If
End Select
这个是我表的代码,
当我表里填入客户名称时,余额会自动出来,但是后面填入数量和单价,合计是表达式列(数量*单价),里面算出的数字不能及时更改后面的余额(收款-合计)
我另外一个表的出入库统计直接填入的数字却可以及时改变余额,这个是什么原因呢??
此主题相关图片如下:未命名文件.jpg

这个是第一张图:填入客户名称自动出现余额
此主题相关图片如下:2.jpg

这个是第二张图:看合计的数值已经出来,但余额都没有变化