以下代码写在原料采购入库明细的DataColChanged事件
代码用意:
1、当表“原料采购入库明细”中录入“凭证号”(即原料采购入库通知单的通知单号),表“原料采购入库通知明细”的逻辑列“是否入库”打上TRUE,此功能已经实现
2、当表“原料采购入库明细”“凭证号”列发生变化后,检查表“原料采购入库通知明细”中的“通知单号”是否出现在“原料采购入库明细”中,如果不存在,将通知单的逻辑列“是否入库”打上False,说明还没入库。
现在出现一个问题,dr3 = DataTables("原料采购入库明细").Find("[凭证号] <> '" & dr2.("通知单号") & "'") 此条语句错误,不知错哪了,无法保存表事件
'凭证号录入后锁定对应的"原料采购入库通知明细"的"是否入库"列
If e.DataCol.Name = "凭证号" Then '如果内容发生变动的是凭证号列
If e.NewValue Is Nothing Then '如果新值是空白
e.DataRow("牌号") = Nothing '那么清空此行此列的内容
e.DataRow("厚度") = Nothing '那么清空此行此列的内容
e.DataRow("宽度") = Nothing '那么清空此行此列的内容
e.DataRow("重量") = Nothing '那么清空此行此列的内容
Else
Dim dr1 As DataRow
'在"原料采购入库通知明细"查找凭证号的行
dr1 = DataTables("原料采购入库通知明细").Find("[通知单号] = '" & e.NewValue & "'")
If dr1 IsNot Nothing Then '如果找到了,也就是dr不是Nothing
dr1("是否入库")=True
End If
‘以上代码执行正常,下面的开始出错
For Each dr2 As DataRow In DataTables("原料采购入库通知明细").DataRows
Dim dr3 As DataRow
dr3 = DataTables("原料采购入库明细").Find("[凭证号] <> '" & dr2.("通知单号") & "'")
If dr3 IsNot Nothing Then '如果找到了,也就是dr3不是Nothing
dr2("是否入库")=False
End If
Next
End If
End If