If e.DataCol.Name = "产品名称" Then '发生变化的是产品名称吗? '在产品设置找出该产品
Dim dr As DataRow
dr = DataTables("产品设置").Find("产品名称 = " & "'" & e.DataRow("产品名称") & "'" )
If dr IsNot Nothing '如果找到, 则设置各列内容
e.DataRow("产品名称")= dr("产品名称")
e.DataRow("出粉率")= dr("出粉率")
e.DataRow("规格")= dr("规格")
e.DataRow("类别")= dr("类别")
e.DataRow("产品编号")= dr("编号")
End If
End If
Select Case e.DataCol.Name
Case "数量"
Dim dr As DataRow
dr = e.DataTable.Find("[_SortKey] < " & e.DataRow("_SortKey"), "[_SortKey] Desc") '找出上一行
If dr Is Nothing Then '如果没有找到上一行,说明本行就是第一行
e.DataRow("总重量") = e.DataRow("规格") * e.DataRow("数量")
dr = e.DataRow
End If
Dim drs As List(of DataRow)
drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey"), "[_SortKey]")
For i As Integer = 1 To drs.Count - 1 '重算余下行的总重量
drs(i)("总重量") = drs(i)("规格") * drs(i)("数量")
Next
NET Framework 版本:2.0.50727.5472
Foxtable 版本:2013.10.14.1
错误所在事件:表,产品入库,DataColChanged
详细错误信息:
调用的目标发生了异常。
从字符串“”到类型“Double”的转换无效。
输入字符串的格式不正确。