If e.DataCol.name = "每箱净重" Then
Dim dr As DataRow = e.DataRow
If dr("计价") = 1 AndAlso dr("等级") = "一等品" Then
Dim dr1 As DataRow = DataTables("订单明细表").SQLfind("客户订单号 = '" & e.DataRow("客户订单号") & "'and 客户代号 = '"& e.DataRow("客户代号") & "'and 规格 = '"& e.datarow("产品规格") & "'and 厂商代号 = '" & e.DataRow("厂商代号") & "' and 作废 = 0")
If dr1 IsNot Nothing Then
dr("单价") = dr1("单价")
End If
End If
If dr("计价") = 1 AndAlso dr("等级") <> "一等品"Then
Dim dr2 As DataRow = DataTables("销售价格表").SQLfind("客户代号 = '" & e.DataRow("客户代号") & "'and 物料类型 = '" & e.DataRow("物料类型") & "' and 规格 = '"& e.datarow("产品规格") & "'and 型号 = '"& e.datarow("产品型号") & "'and 基材来源 = '" & e.DataRow("基材来源") & "' and 厂商代号 = '" & e.DataRow("厂商代号") & "'and 物料等级 = '二等品'")
If dr2 IsNot Nothing Then
dr("单价") = dr2("单价")
End If
End If
If dr("计价") = 0 Then
dr("单价") = 0
End If
End If
以上代码用来生成单价,想实现以下功能:
1.当“计价”列为true时,“等级”列为一等品时,从“订单明细表”中提取单价;
2.当“计价”列为true时,“等级”列不等于一等品时,从“销售价格表”中提取单价;
2.当“计价”列为true时,单价为0;
在运行以上代码时,提示错误:“未将对象引用设置到对象的实例。”,请问是何原因?