以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助] 帮看个新增行代码出错  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=174646)

--  作者:dokings
--  发布时间:2022/1/25 10:36:00
--  [求助] 帮看个新增行代码出错
用下面代码限制已经审核的子表新增和删除, 为什么可以限制删除,但是对新增包括克隆,插入却没用?


Dim pr As DataRow = e.DataRow.GetParentRow("表A")
If pr IsNot Nothing Then
    If pr("审核") = True Then
    e.Cancel = True
    End If
End If

BeforeAddDataRow
详细错误信息:
未将对象引用设置到对象的实例。

但是限制删除工作正常。 是什么问题?
[此贴子已经被作者于2022/1/25 10:36:33编辑过]

--  作者:有点蓝
--  发布时间:2022/1/25 10:38:00
--  
父子表有做关联吗?

代码是放在哪个表的什么事件里的?

--  作者:dokings
--  发布时间:2022/1/25 10:42:00
--  
关联的,通过合同号关联。

放在子表的BeforeAddDataRow 里

--  作者:有点蓝
--  发布时间:2022/1/25 11:12:00
--  
BeforeAddDataRow的时候新增的行还没有添加到表格里的,没有办法使用GetParentRow。

另外新增行肯定所有列都没有值的,合同号也不存在。

只能直接判断父表当前行如

 If tabls("父表").current("审核") = True Then