Foxtable(狐表)用户栏目专家坐堂 → 表A自动复制行到表B,求表A的相应行自动删除的代码


  共有5184人关注过本帖树形打印复制链接

主题:表A自动复制行到表B,求表A的相应行自动删除的代码

帅哥哟,离线,有人找我吗?
13315253800
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:543 积分:3942 威望:0 精华:0 注册:2018/1/3 16:03:00
表A自动复制行到表B,求表A的相应行自动删除的代码  发帖心情 Post By:2022/9/2 18:19:00 [只看该作者]

请教表A自动复制行到表B,表A的相应行自动删除的代码

假定表A有个逻辑列,希望在某行选中此逻辑列时,自动将此行复制到表B,表A的相应行自动删除的代码怎样补充,请老师指导。

If e.DataCol.Name = "逻辑列名" AndAlso e.DataRow("逻辑列名") = True Then
    Dim nma() As String = {"A1","A2","A3","A4"'A表数据来源列
    
Dim nmb() As String = {"B1","B2","B3","B4"} 'B表数据接收列
    
Dim dr As DataRow = DataTables("B").AddNew
    
For i As Integer = 0 To nma.Length - 1
        dr(nmb(i)) = e.DataRow(nma(i))
    
Next
End
 If


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107034 积分:544401 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/9/3 8:52:00 [只看该作者]

……
    For i As Integer = 0 To nma.Length - 1
        dr(nmb(i)) = e.DataRow(nma(i))
    
Next
e.DataRow.delete
End
 If

 回到顶部
帅哥哟,离线,有人找我吗?
13315253800
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:543 积分:3942 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2022/9/3 10:51:00 [只看该作者]

蓝老师,按您的提示,我试了一下,结果是复制到表B的这一行在表B中删除了。如果想只删除表A中的这一行,也就是从表A中复制到了表B,表A中删除,表B中保留,代码怎么修改一下?请蓝老师再指导

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107034 积分:544401 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/9/3 11:53:00 [只看该作者]

代码放错地方了吧,应该放到表A

 回到顶部
帅哥哟,离线,有人找我吗?
13315253800
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:543 积分:3942 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2022/9/3 12:06:00 [只看该作者]

是在表A的DataColChanged事件里

 回到顶部
帅哥哟,离线,有人找我吗?
13315253800
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:543 积分:3942 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2022/9/3 12:09:00 [只看该作者]

是我搞错了,谢谢蓝老师的指导!

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107034 积分:544401 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/9/3 13:48:00 [只看该作者]

那不可能会删除表b。除非触发了其它代码。a和b是关联表?

 回到顶部