以文本方式查看主题

-  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=126600)

--  作者:watchbird
--  发布时间:2018/10/25 4:46:00
--  [求助]根据条件跨表引用的问题
产品表及销售渠道表。
产品表有:商品ID、商品名称、一级报价、二级报价、三级报价 等列
销售渠道表有:渠道名称、渠道级别、商品名称、供货价

目标要求:
1、在产品表会录入所有的商品,并都有三个供货报价以适应不同销售渠道的要求
2、在销售渠道表中,当选择如:渠道级别为一级,那录入的商品名称在产品表有记录的,则供货价自动获取产品表中对应商品的一级报价;如果渠道级别为二级的,则供货价自动获得产品表中对应商品的二级报价,以次类推

现希望通过DataColChanged 事件来实现这一目的。或什么更好的方法可以推荐。不想用关联表,因为有些渠道就算选了
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.zip

级别可能还会临时改供货价。
[此贴子已经被作者于2018/10/25 4:48:04编辑过]

--  作者:有点蓝
--  发布时间:2018/10/25 9:17:00
--  
销售渠道表,datacolchanged

Select Case e.DataCol.Name
    Case "商品名称","渠道级别"
        If e.DataRow.IsNull("商品名称") OrElse e.DataRow.IsNull("渠道级别") Then
            e.DataRow("供货价") = Nothing
        Else
            Dim dr As DataRow
            dr = DataTables("产品表").Find("[商品名称] = \'" & e.DataRow("商品名称") & "\'")
            If dr IsNot Nothing Then \'如果找到了同名的产品行,也就是dr不是Nothing
                e.DataRow("供货价") = dr(e.DataRow("渠道级别") & "报价")
            End If
        End If
End Select

--  作者:watchbird
--  发布时间:2018/10/25 16:34:00
--  
感谢!我的思维方向错了,点醒梦中人