If e.DataCol.name = "销售数量" Then
If e.DataRow("销售单号") IsNot Nothing Then
Dim Filter2 As String = "[产品代号] = '" & e.DataRow("产品代号") & "'"
Dim drs As List(Of DataRow) = DataTables("装配清单").Select(Filter2)
For Each dr As DataRow In drs
Dim dr2 As DataRow = DataTables("腾龙供料汇总").Find("销售单号 = '" & e.DataRow("销售单号") & "' and 指定用料 = '" & dr("零件代号") & "'")
If dr2 IsNot Nothing Then
If dr("零件类别") = "原料" Then
dr2("销售总重") = dr2("销售总重") + (e.newvalue - e.oldvalue) * dr("零件用量")/1000
Else
dr2("销售总重") = dr2("销售总重") + (e.newvalue - e.oldvalue) * dr("零件用量")
End If
dr2("销售总重输入记录") = User.Name & " " & Date.Now
Else
Dim dr3 As Row = Tables("腾龙供料汇总").AddNew()
dr3("销售单号") = e.DataRow("销售单号")
dr3("指定用料") = dr("零件代号")
If dr("零件类别") = "原料" Then
dr3("销售总重") = e.DataRow("销售数量") * dr("零件用量")/1000
Else
dr3("销售总重") = e.DataRow("销售数量") * dr("零件用量")
End If
dr3("销售总重输入记录") = User.Name & " " & Date.Now
End If
Next
End If
End If
上面的代码,当“销售数量”变大时,“腾龙供料汇总”那里的结果是“销售总量”的数值是加倍的;但是当“销售数量”变小时,“腾龙供料汇总”那里减的过程是没问题的。请问是哪里的问题呢?谢谢。