这是跨表计算的代码:
Dim dr1 As DataRow = e.DataRow
Dim dr2 As DataRow
If e.DataCol.Name = "客户" Then
Dim Sum As Double
if e.datarow("生产进度")="已计划" then
Sum = DataTables("生产清单").Compute("Sum(重量)","[客户] = '" & dr1("客户") & "'And [颜色编号]='" & dr1("颜色编号") & "'And [幅宽] = " & dr1("幅宽") & "And [克重] = '" & dr1("克重") & "'")
e.DataRow("生产数量") = Sum
end if
End If
自动更新的代码
if e.datacol.name="重量" then
dim dr as datarow=e.datarow
dim dr1 as datarow
dim dr2 as datarow
Dim s1 As String = "[克重] = " & dr("克重") & " And [颜色编号] = '" & dr("颜色编号") & "' And [客户] = '" & dr("客户") & "' And [幅宽] = " & dr("幅宽")
dr1=datatables("订单管理").find(s1)
dr2=datatables("订单管理").find("[生产进度]='" & "已计划'" & " or [生产进度]='" & "生产中'" & " or [生产进度]='" & "发货中'" )
if dr1 isnot nothing and dr2 isnot nothing then
datatables("订单管理").datacols("客户").RaiseDataColChanged(dr1)
end if
end if
下午查了一下午,都要抓狂了,请版主看下哪里有问题,谢谢
[此贴子已经被作者于2009-8-31 22:43:32编辑过]
现在都不知道哪里有问题,代进去还是无法解决问题,
if e.datacol.name="重量" then
dim dr as datarow=e.datarow
dim dr1 as datarow
dim dr2 as datarow
dr1=datatables("订单管理").find("[克重] = '" & dr("克重") & "' And [颜色编号] = '" & dr("颜色编号") & "' And [客户] = '" & dr("客户") & "' And [幅宽] = '" & dr("幅宽") & "'" )
if dr1 isnot nothing then
datatables("订单管理").datacols("客户").RaiseDataColChanged(dr1)
end if
end if
这样的代码也有错,哪里有错?
是订单管理表的
Dim dr1 As DataRow = e.DataRow
If e.DataCol.Name = "客户" Then
if e.datarow("生产进度")="已计划" or e.datarow("生产进度")="生产中" or e.datarow("生产进度")="待发货" then
e.DataRow("生产数量")=0
e.DataRow("生产数量")= DataTables("生产清单").Compute("sum(重量)","[客户] = '" & dr1("客户") & "'And [颜色编号]='" & dr1("颜色编号") & "'And [幅宽] = " & dr1("幅宽") & "And [克重] = '" & dr1("克重") & "'")
end if
End If
这个是订单表管理的代码
没有看出问题了,用个简单的例子说明。
另外代码中既然定义了dr1引用e.Datarow,那么应改这样:
Dim dr1 As DataRow = e.DataRow
If e.DataCol.Name = "客户" Then
if dr1("生产进度")="已计划" orelse dr1("生产进度")="生产中" orelse dr1("生产进度")="待发货" then
dr1("生产数量")=0
dr1("生产数量")= DataTables("生产清单").Compute("sum(重量)","[客户] = '" & dr1("客户") & "'And [颜色编号]='" & dr1("颜色编号") & "'And [幅宽] = " & dr1("幅宽") & "And [克重] = '" & dr1("克重") & "'")
end if
End If
郁闷啊。。。。
该怎么办?生产清单里的重量改变 就会弹出错误窗口。。。。未将对象引用设置到对象的实例