以文本方式查看主题

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

--  作者:jygyyl
--  发布时间:2014/5/23 17:58:00
--  求助 非关联表之间的数据同步

Select Case e.DataCol.name
    Case "产品编号"
        Dim dr As DataRow = DataTables("库存").SQLFind("产品编号 = \'" & e.OldValue & "\'")
       
If dr Is Nothing Then
            dr = DataTables(
"
库存").AddNew()
            dr(
"
产品编号") = e.DataRow("产品编号")
            dr(
"
产品名称") = e.DataRow("产品名称")
            dr(
"
产品规格") = e.DataRow("产品规格")
        Else
            dr(
"
产品编号") = e.DataRow("产品编号")
        End If
    Case
"
产品名称","产品规格"
        Dim dr As DataRow = DataTables(
"
库存").SQLFind("产品编号 = \'" & e.DataRow("产品编号") & "\'")
        If dr IsNot Nothing Then
            dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
       
End If
End
Select


    上述代码在应用中有两个问题:

    1、如何实现库存表不存在“产品编码”增加行,存在则不增加行?

    2、如果两个表不属于同一个数据源,上述代码好像不能同步,如何修改?


--  作者:Bin
--  发布时间:2014/5/23 18:00:00
--  
不同一个数据源也可以的,代码这样没问题啊.
--  作者:jygyyl
--  发布时间:2014/5/26 17:24:00
--  已解决
库存初始不加载数据,查找 用SQlFind,修改用Find可以,修改也用SQlFind不行,不知什么原因
--  作者:有点甜
--  发布时间:2014/5/26 17:28:00
--  

 sqlFind,查找的已经保存的数据,如果改行数据没有保存,查找是查不到了。

 

 建议sqlFind之后,都把查找修改后的dr保存一下 dr.Save