以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 非关联表之间的数据同步 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=113157) |
-- 作者:kittyzhang -- 发布时间:2018/1/10 11:24:00 -- 非关联表之间的数据同步 Select Case e.DataCol.name Case "编号" Dim dr As DataRow = DataTables("采购验证表").Find("编号 = \'" & e.OldValue & "\'") If dr Is Nothing Then dr = DataTables("采购验证表").AddNew() dr("编号") = e.DataRow("编号") dr("设备名称") = e.DataRow("设备名称") dr("型号规格") = e.DataRow("型号规格") dr("数量") = e.DataRow("数量") dr("单位") = e.DataRow("单位") dr("申购人") = e.DataRow("申购人") Else dr("编号") = e.DataRow("编号") End If Case "设备名称","型号规格","数量","单位","申购人" Dim dr As DataRow = DataTables("采购验证表").Find("编号 = \'" & e.DataRow("编号") & "\'") If dr IsNot Nothing Then dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name) End If 我想实现,当“采购表”增加一行,“采购验证表”也增加一行。并且把采购表新增行里“设备名称”“型号规格”“数量”“单位”“申购人”列的内容复制“采购验证表”中 按上面这样写只能实现当编号发生更改才能复制内容 请教大大,改如何写?
|
-- 作者:有点甜 -- 发布时间:2018/1/10 11:42:00 -- DataRowAdded事件
e.DataRow.Save dim dr = DataTables("采购验证表").AddNew() dr("编号") = e.DataRow("_Identify")
DataColChanged事件
Select Case e.DataCol.name
Case "编号","设备名称","型号规格","数量","单位","申购人" Dim dr As DataRow = DataTables("采购验证表").Find("编号 = \'" & e.DataRow("_Identify") & "\'") If dr IsNot Nothing Then dr("设备名称") = e.DataRow("设备名称") dr("型号规格") = e.DataRow("型号规格") dr("数量") = e.DataRow("数量") dr("单位") = e.DataRow("单位") dr("申购人") = e.DataRow("申购人") End If End Select [此贴子已经被作者于2018/1/12 12:06:06编辑过]
|
-- 作者:kittyzhang -- 发布时间:2018/1/12 11:50:00 -- 按上面的操作不正确,不能复制过去 有两张表,一张采购表 一张采购验证表 当采购表新增一行数据的时候,采购验证表里面也增加一行数据,采购表新增的这一行数据里面的“设备名称”“型号规格”“数量”“单位”“申购人”“编号”复制到采购验证表的相同名称行里。 当采购表对应行数据发生变更的时候采购验证表数据也发生变更。 |
-- 作者:有点甜 -- 发布时间:2018/1/12 12:06:00 -- 2楼代码肯定没问题。(请重新看一下,测试一下)
如果有问题,请上传实例说明。 [此贴子已经被作者于2018/1/12 12:06:24编辑过]
|