以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  一码多品如何处理  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=96237)

--  作者:dzz9826
--  发布时间:2017/2/16 10:00:00
--  一码多品如何处理
老师好,我在看高效流水账时,不知道如何处理一码多品的问题;库存如何获取入库明细里的同一商品编号,但商品名称又有区别。如:商品编号为:123456,名称为套装A,另一个名称为套装B(只是套装内的物品有所区别)。
谢谢

--  作者:有点色
--  发布时间:2017/2/16 10:08:00
--  

参考

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=82029&skin=0

 


--  作者:dzz9826
--  发布时间:2017/2/16 10:24:00
--  
谢谢老师


--  作者:dzz9826
--  发布时间:2017/2/16 15:25:00
--  
不好意思,看到那个多条件但不明白如何利用这两个条件插入到另外一表里?谢谢
--  作者:有点蓝
--  发布时间:2017/2/16 15:53:00
--  
上传你的例子说明
--  作者:dzz9826
--  发布时间:2017/2/16 16:35:00
--  
老师,如何上传附件?


--  作者:dzz9826
--  发布时间:2017/2/16 16:38:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:kc.zip


--  作者:有点色
--  发布时间:2017/2/16 18:34:00
--  
Select Case e.DataCol.name
    Case "商品编号","商品名称"
        Dim dr As DataRow
        If e.DataCol.name = "商品名称" Then
            If e.oldvalue <> Nothing Then
                dr = DataTables("库存").Find("商品编号 = \'" &  e.DataRow("商品编号") & "\' and 商品名称 = \'" & e.OldValue & "\'")
            Else
                dr = DataTables("库存").Find("商品编号 = \'" &  e.DataRow("商品编号") & "\' and 商品名称 = \'" & e.NewValue & "\'")
            End If
        Else
            If e.oldvalue <> Nothing Then
                dr = DataTables("库存").Find("商品编号 = \'" & e.OldValue & "\' and 商品名称 = \'" & e.DataRow("商品名称") & "\'")
            Else
                dr = DataTables("库存").Find("商品编号 = \'" & e.newValue & "\' and 商品名称 = \'" & e.DataRow("商品名称") & "\'")
            End If
        End If
        If dr Is Nothing Then
            If e.DataRow.isnull("商品编号") = False AndAlso e.DataRow.Isnull("商品名称") = False Then
                dr = DataTables("库存").AddNew()
                dr("商品编号") = e.DataRow("商品编号")
                dr("商品名称") = e.DataRow("商品名称")
                dr("规格型号") = e.DataRow("规格型号")
            End If
        Else
            dr("商品编号") = e.DataRow("商品编号")
            dr("商品名称") = e.DataRow("商品名称")
        End If
    Case "规格型号"
        Dim dr As DataRow = DataTables("库存").Find("商品编号 = \'" & e.DataRow("商品编号") & "\' and 商品名称 = \'" & e.DataRow("商品名称") & "\'")
        If dr IsNot Nothing Then
            dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
        End If
End Select

--  作者:dzz9826
--  发布时间:2017/2/16 19:53:00
--  
谢谢老师,原来是两个条件要分别组合判断。