以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  非关联表之间的数据同步问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=123633)

--  作者:h16846791
--  发布时间:2018/8/19 22:49:00
--  非关联表之间的数据同步问题
 非关联表之间的数据同步已经做好,表A的数据通过复制(或者手输入)的数据表B可以根据需要显示出来,可是表A的数据如果从SQL数据到入显示的数据表B就不能显示出来(SQL导入数据A表有10个空行,这个可以删除可是数据还是不同步过来,请问是哪里做错了、?
--  作者:有点蓝
--  发布时间:2018/8/19 23:05:00
--  
任何行都可以删除。

具体问题,贴出详细代码并截图说明一下

--  作者:jsbaijin
--  发布时间:2021/9/4 20:09:00
--  
你好!请教一下 非关联表之间的数据同步,数据全部能同步,但同步删除时仅删除了商品编号,其他的删除不了?

DataColChanged事件代码

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("规格型号")
        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
End Select

DataRowDeleting事件代码

Dim dr As DataRow = DataTables("库存明细").Find("商品编码 = \'" & e.DataRow("商品编码") & "\'" )
If dr IsNot Nothing Then
    dr.Delete()
End If







--  作者:有点蓝
--  发布时间:2021/9/5 20:18:00
--  
肯定是可以的。所谓的同步删除,是指仅删除了商品编号这个单元格的数据?还是指删除了整行