我在“JPK612备料”的datacolchanged里面有如下代码:
If e.DataCol.name = "需求数量"
If e.DataRow("批号") = ""
Else
Dim re As Boolean = False
For Each dr As DataRow In DataTables("批号表").DataRows
If dr("物料编号") = e.DataRow("零件号") Then
dr("库存数量") = dr("库存数量") - e.DataRow("需求数量") - e.OldValue
dr("批号变动记录") = "出入库变动:" & Date.now & " " & User.Name
dr("库存数量变动记录") = "出入库变动:" & Date.now & " " & User.Name
re = True
Exit For
Else
Continue For
End If
Next
If re = False
Dim dr As DataRow
dr = DataTables("批号表").AddNew()
dr("批号") = e.DataRow("批号")
dr("物料编号") = e.DataRow("零件号")
dr("库存数量") = 0 - e.DataRow("需求数量")
dr("批号变动记录") = "出入库变动:" & Date.now & " " & User.Name
dr("库存数量变动记录") = "出入库变动:" & Date.now & " " & User.Name
End If
End If
end if
我在“批号表”的datacolchanged里面有如下代码:
If e.DataCol.name = "库存数量"
If e.DataRow("库存数量") = 0
e.DataRow.delete
End If
End If
当我在“JPK612备料”输入一条记录,比如数量为1之后,此时“批号表”会增加一条记录,其数量也为1;如果我再在“JPK612备料”输入
一条记录,比如数量为-1之后,“批号表”里面此前增加的记录因为库存数量变为了0而删除,但是,却出现如下警告:
.NET Framework 版本:2.0.50727.8789
Foxtable 版本:2017.3.18.1
错误所在事件:表,JPK612备料,DataColChanged
详细错误信息:
调用的目标发生了异常。
不能通过已删除的行访问该行的信息。
这是为什么呢? 我们希望不要出现上述警告,该如何修改代码?谢谢。