以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]增加行,子表增加行  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=103346)

--  作者:whyxd
--  发布时间:2017/7/6 13:41:00
--  [求助]增加行,子表增加行
表A(父表,关联列“ID”)共计5行,当前行:第五行
表B(子表,关联列“ID”)

表A的DataRowadded事件中代码:
Tables("表A.表B").AddNew(10)

表A新增行后,tables("表A.表B")新增的10行关联"ID"列的值等于 “表A”第五行(新增行之前的当前行)的“ID”列的值。


想要实现的效果是,新增行,触发表事件(datarowadded),实现tables("表A.表B")新增的10行关联"ID"列的值等于 “表A”新增行(第六行)的“ID”列的值。

请教如何实现

--  作者:有点甜
--  发布时间:2017/7/6 14:11:00
--  

你应该在表A的DataColChanged事件写代码

 

If e.DataCol.Name = "ID" Then

    Tables("表A.表B").AddNew(10)

End If


--  作者:whyxd
--  发布时间:2017/7/6 14:33:00
--  回复:(有点甜)你应该在表A的DataColChanged事件写代...
试过了,结果一样,子表增加行不是父表新增行的子表。。。
--  作者:有点甜
--  发布时间:2017/7/6 14:49:00
--  
以下是引用whyxd在2017/7/6 14:33:00的发言:
试过了,结果一样,子表增加行不是父表新增行的子表。。。

 

这样写

 

If e.DataCol.Name = "ID" Then

    for i as integer = 1 to 10

        Dim nr As DataRow = DataTables("表B").AddNew

        nr("ID") = e.DataRow("ID")

    next

End If


--  作者:whyxd
--  发布时间:2017/7/6 14:59:00
--  回复:(有点甜)以下是引用whyxd在2017/7/6 14:33:00...
好吧,这样可以了。多谢图片点击可在新窗口打开查看