请教老师:“原材料采购明细表”中“到齐”列全部勾选,则“预算清单”中的“当前进展_完成"自动打钩,只要“原材料采购明细表”“到齐”列有任何一行未打钩,则“预算清单”中的“当前进展_完成"都不打钩
下面的代码有什么问题?“预算清单”没有自动勾选
Select Case e.DataCol.name
Case "预算编号"
If e.DataRow.IsNull("预算编号") Then
DataTables("原材料采购明细表").DeleteFor("预算编号='" & e.DataRow("预算编号") & "'")
e.DataRow("当前进展_完成") = False
Else
If e.DataRow.GetChildRows("原材料采购明细表").Count > 0
Dim cnt As Integer = DataTables("原材料采购明细表").Compute("count(预算编号)","预算编号='" & e.NewValue & "' and (到齐 = False )")
e.DataRow("当前进展_完成") = (cnt=0)
End If
End If
End Select
"原材料采购明细表"datacolchanged事件
Select Case e.DataCol.Name
Case "到齐"
Dim pr As DataRow
pr = DataTables("预算清单").Find("预算编号 = '" & e.DataRow("预算编号") & "'")
If pr IsNot Nothing Then
DataTables("预算清单").DataCols("预算编号").RaiseDataColChanged(pr)
End If
End Select
很奇怪,点击“到齐”会自动增加一行
Dim dr2 As DataRow = e.DataRow
Select Case e.DataCol.Name
Case "到货_数量"
If dr2.IsNull("到货_数量") = False Then '如果数量或单价为空
dr2("收货人") = User.name
Else
dr2("收货人") = Nothing
End If
Case "到齐"
Dim dr As DataRow = DataTables("预算清单").Find("[预算编号] = '" & e.DataRow("预算编号") & "'")
If dr IsNot Nothing Then
DataTables("预算清单").DataCols("预算编号").RaiseDataColChanged(dr)
End If
End Select