我想再指定某个列为“库号”,这样的话统计结果就是要求(某库内某产品的出入库统计),不同库内产品可以重复。请问这个代码怎么修改?
Select Case e.DataCol.Name
Case "疫苗ID","入库(领用)","出库(使用)"
Dim drs As List(of DataRow)
Dim Filter As String
Filter = "[_SortKey] >= " & e.DataRow("_SortKey") & " And [疫苗ID] = '" & e.DataRow("疫苗ID") & "'"
drs = e.DataTable.Select(Filter)
For Each dr As DataRow In drs
Filter = "[_SortKey] <= " & dr("_SortKey") & " And [疫苗ID] = '" & dr("疫苗ID") & "'"
Dim Val1 As Double = e.DataTable.Compute("Sum(入库(领用))",Filter)
Dim Val2 As Double = e.DataTable.Compute("Sum(出库(使用))",Filter)
dr("库存") = Val1 - Val2
Next
If e.DataCol.Name = "疫苗ID" AndAlso e.OldValue IsNot Nothing AndAlso e.OldValue <> e.NewValue Then
Filter = "[_SortKey] > " & e.DataRow("_SortKey") & " And [疫苗ID] = '" & e.OldValue & "'"
drs = e.DataTable.Select(Filter)
For Each dr As DataRow In drs
Filter = "[_SortKey] <= " & dr("_SortKey") & " And [疫苗ID] = '" & dr("疫苗ID") & "'"
Dim Val1 As Double = e.DataTable.Compute("Sum(入库(领用))",Filter)
Dim Val2 As Double = e.DataTable.Compute("Sum(出库(使用))",Filter)
dr("库存") = Val1 - Val2
Next
End If
End Select
[此贴子已经被作者于2013-9-24 11:55:05编辑过]