Select Case e.DataCol.Name Case "账户名称","收入","金额","报销日期"
3楼
张海兵 发表于:2011/9/1 21:21:00
好像没什么用啊
4楼
czy 发表于:2011/9/1 21:32:00
Select Case e.DataCol.Name Case "账户名称","收入","金额","报销日期" Dim dr As DataRow Dim mr As DataRow = e.DataRow If mr.IsNull("报销日期") Then mr("余额") = Nothing Return End If
5楼
czy 发表于:2011/9/1 21:45:00
Select Case e.DataCol.Name Case "账户名称","收入","金额","报销日期" Dim dr As DataRow Dim mr As DataRow = e.DataRow If mr.IsNull("报销日期") Then mr("余额") = Nothing Return End If Dim drs As List(of DataRow) dr = e.DataTable.Find("[_SortKey] < " & mr("_SortKey") & " And [账户名称] = '" & mr("账户名称") & "' And 报销日期 IS NOT NULL", "[_SortKey] Desc") If dr Is Nothing Then mr("余额") = mr("收入") - mr("金额") dr = mr End If drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey") & " And [账户名称] = '" & dr("账户名称") & "' And 报销日期 IS NOT NULL", "[_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 & "' And 报销日期 IS NOT NULL", "[_SortKey] Desc") If dr Is Nothing Then dr = e.DataTable.Find("[账户名称] = '" & e.OldValue & "' And 报销日期 IS NOT NULL", "[_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("账户名称") & "' And 报销日期 IS NOT NULL", "[_SortKey]") For i As Integer = 1 To drs.Count - 1 drs(i)("余额") = drs(i-1)("余额") + drs(i)("收入") - drs(i)("金额") Next End If End If mr.Locked = True End Select