以文本方式查看主题

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

--  作者:hz1717
--  发布时间:2014/3/6 15:25:00
--  求助:非关联表之间的数据同步
老师好:
      我有一张  “入库明细表”,在其添加一行后,我希望在“库存表”中去增加相关内容。
      “入库明细表”中的“物料编号”、“库位”、“唯一码”三个字段,到“库存表”中去找对应三个字段的值,如果有三个对应的值,“库存表”中就不用增添了,如果没有对应的值,在“库存表”中增添。
      我参考  帮助文件 ,输入了如下代码,但是,在运行中,三个字段即使在“库存表”中有对应的值,三个字段还是会增添一遍。
      我的代码是否存在问题,请指导!

Select Case e.DataCol.name
    Case "物料编号","库位","唯一码"
        Dim dr As DataRow = DataTables("库存表").Find("物料编号 = \'" & e.DataRow("物料编号") & "\' and 库位 = \'" & e.DataRow("库位") & "\' and 唯一码 = \'" & e.DataRow("唯一码") & "\'")
        If dr Is Nothing Then
            dr = DataTables("库存表").AddNew()
            dr("物料编号") = e.DataRow("物料编号")
            dr("库位") = e.DataRow("库位")
            dr("唯一码") = e.DataRow("唯一码")
        Else
            dr("物料编号") = e.DataRow("物料编号")
            dr("库位") = e.DataRow("库位")
            dr("唯一码") = e.DataRow("唯一码")
        End If
    Case "数量"
        Dim dr As DataRow = DataTables("库存表").Find("物料编号 = \'" & e.DataRow("物料编号") & "\' and 库位 =\'" & e.DataRow("库位") & "\' and 唯一码 = \'" & e.DataRow("唯一码") & "\'")
        If dr IsNot Nothing Then
            dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
        End If
End Select

--  作者:Bin
--  发布时间:2014/3/6 15:37:00
--  
请上例子.
--  作者:hz1717
--  发布时间:2014/3/6 15:52:00
--  
入库明细增添了两行,库存也增添了 两行,
上述代码  写在 “入库明细表”里面的

--  作者:hz1717
--  发布时间:2014/3/6 15:54:00
--  
http://www.foxtable.com/bbs/fileshow.asp?boardid=2&id=43124 入库明细
--  作者:狐狸爸爸
--  发布时间:2014/3/6 18:23:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目214.rar