If e.DataCol.Name = ("欠货数") Then
Dim a As DataRow
a = DataTables("产品表").Find("产品名称 = \'" & e.DataRow("产品名称") & "\'")
If a IsNot Nothing Then
e.DataRow("欠货数材料KG") = e.DataRow("欠货数") * (((a("产品重量g") + a("水口重量g")) * (1 - a("水口比例") / 100)) / 1000)
End If
End If
If e.DataCol.Name = ("库存数") Then
Dim a As DataRow
a = DataTables("产品表").Find("产品名称 = \'" & e.DataRow("产品名称") & "\'")
If a IsNot Nothing Then
e.DataRow("库存数材料KG") = e.DataRow("库存数") * (((a("产品重量g") + a("水口重量g")) * (1 - a("水口比例") / 100)) / 1000)
End If
End If
If e.DataCol.Name = ("订单数量") Then
Dim a As DataRow
a = DataTables("产品表").Find("产品名称 = \'" & e.DataRow("产品名称") & "\'")
If a IsNot Nothing Then
e.DataRow("欠货数材料KG") = e.DataRow("欠货数") * (((a("产品重量g") + a("水口重量g")) * (1 - a("水口比例") / 100)) / 1000)
End If
End If
If e.DataCol.Name = "产品名称" Then \'如果内容发生变动的是品名列
If e.NewValue Is Nothing Then \'如果新值是空白,也就是品名列的内容为空
e.DataRow("单价") = Nothing \'那么清空此行单价列的内容
Else
Dim dr As DataRow
\'否则在产品表查找同名的产品行,将找到的行赋值给变量dr
dr = DataTables("产品表").Find("[产品名称] = \'" & e.NewValue & "\'")
If dr IsNot Nothing Then \'如果找到了同名的产品行,也就是dr不是Nothing
e.DataRow("单价") = dr("单价")
End If
End If
End If
If e.DataCol.Name = "产品名称" Then
If e.NewValue Is Nothing Then
e.DataRow("材料用量KG") = Nothing
Else
Dim a As DataRow
a = DataTables("产品表").Find("产品名称 = \'" & e.NewValue & "\'")
If a IsNot Nothing Then
e.DataRow("材料用量KG") = e.DataRow("订单数量") * (((a("产品重量g") + a("水口重量g")) * (1 - a("水口比例") / 100)) / 1000)
End If
End If
End If
If e.DataCol.Name = "订单数量" Then
If e.NewValue Is Nothing Then
e.DataRow("材料用量KG") = Nothing
Else
Dim a As DataRow
a = DataTables("产品表").Find("产品名称 = \'" & e.datarow("产品名称") & "\'")
If a IsNot Nothing Then
e.DataRow("材料用量KG") = e.DataRow("订单数量") * (((a("产品重量g") + a("水口重量g")) * (1 - a("水口比例") / 100)) / 1000)
End If
End If
End If