以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  跨表导数据(以解决)  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=31884)

--  作者:caiyt0
--  发布时间:2013/4/22 15:03:00
--  跨表导数据(以解决)

一张空表,该如何引用另外一张表的内容。

例如一张订单表,如果他的类型为“自产”,那么计划表不将导用其表的"订单名称”“订单数量”(计划表中没有类型这列)

代码该如何写

[此贴子已经被作者于2013-4-25 11:27:49编辑过]

--  作者:XYT
--  发布时间:2013/4/22 15:07:00
--  

DataColChanged事件代码设置为:

 

Select Case e.DataCol.name
    Case "工厂","工段","日期"
        Dim dr As DataRow = e.DataRow
        If dr.IsNull("工厂") = False AndAlso dr.IsNull("工段") = False AndAlso dr.IsNull("日期") =False Then
            Dim pr As DataRow = DataTables("工资标准").Find("分厂 = \'" & dr("工厂") & "\' and 工段  = \'" & dr("工段") & "\' And 执行日期 <= #" & dr("日期") & "#", "执行日期 Desc")
            If pr IsNot Nothing Then
                dr("工资标准")  = pr("工资标准")    
            End If
        End If
End Select

 

参考


--  作者:caiyt0
--  发布时间:2013/4/22 15:14:00
--  
以下是引用XYT在2013-4-22 15:07:00的发言:

DataColChanged事件代码设置为:

 

Select Case e.DataCol.name
    Case "工厂","工段","日期"
        Dim dr As DataRow = e.DataRow
        If dr.IsNull("工厂") = False AndAlso dr.IsNull("工段") = False AndAlso dr.IsNull("日期") =False Then
            Dim pr As DataRow = DataTables("工资标准").Find("分厂 = \'" & dr("工厂") & "\' and 工段  = \'" & dr("工段") & "\' And 执行日期 <= #" & dr("日期") & "#", "执行日期 Desc")
            If pr IsNot Nothing Then
                dr("工资标准")  = pr("工资标准")    
            End If
        End If
End Select

 

参考

你这个是要两个表都有相同的媒介才能用把


--  作者:Bin
--  发布时间:2013/4/22 15:17:00
--  

例如一张订单表,如果他的类型为“自产”,那么计划表不将导用其表的"订单名称”“订单数量”(计划表中没有类型这列)

代码该如何写


什么意思? 某一列名称为类型列,值如果为"自产" 则 计划表隐藏 "订单名称”“订单数量”两个列?



--  作者:XYT
--  发布时间:2013/4/22 15:17:00
--  
那不是更简单吗,都不用FIND了,直接赋值就好了
--  作者:caiyt0
--  发布时间:2013/4/22 15:32:00
--  
以下是引用Bin在2013-4-22 15:17:00的发言:

例如一张订单表,如果他的类型为“自产”,那么计划表不将导用其表的"订单名称”“订单数量”(计划表中没有类型这列)

代码该如何写


什么意思? 某一列名称为类型列,值如果为"自产" 则 计划表隐藏 "订单名称”“订单数量”两个列?


订单表的‘订单分解’类型为“自产”


此主题相关图片如下:未命名.jpg
按此在新窗口浏览图片

那么计划表的将自动导入订单表的“订单编号”“品名”“品名规格”


此主题相关图片如下:未命名1.jpg
按此在新窗口浏览图片
[此贴子已经被作者于2013-4-22 15:32:12编辑过]

--  作者:XYT
--  发布时间:2013/4/22 15:43:00
--  
Dim Val As String = e.Table.Current("订单分解")
        Select
Case
Val
            Case
"自产"
Dim dr As DataRow = e.DataRow
 If dr IsNot Nothing \'如果找到, 则设置各列内容
        e.DataRow("XX")= dr("品名")
        e.DataRow("xx")= dr("型号")
        e.DataRow("xx")= dr("规格")
    End If
 End select
[此贴子已经被作者于2013-4-22 15:44:00编辑过]