Foxtable(狐表)用户栏目专家坐堂 → 跨表导数据(以解决)


  共有5872人关注过本帖树形打印复制链接

主题:跨表导数据(以解决)

美女呀,离线,留言给我吧!
caiyt0
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:63 积分:488 威望:0 精华:0 注册:2013/4/9 14:47:00
跨表导数据(以解决)  发帖心情 Post By:2013/4/22 15:03:00 [只看该作者]

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

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

代码该如何写

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

 回到顶部
帅哥哟,离线,有人找我吗?
XYT
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1418 积分:7167 威望:0 精华:0 注册:2013/3/18 8:37:00
  发帖心情 Post By: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
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:63 积分:488 威望:0 精华:0 注册:2013/4/9 14:47:00
  发帖心情 Post By: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
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/4/22 15:17:00 [只看该作者]


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

代码该如何写


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



 回到顶部
帅哥哟,离线,有人找我吗?
XYT
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1418 积分:7167 威望:0 精华:0 注册:2013/3/18 8:37:00
  发帖心情 Post By:2013/4/22 15:17:00 [只看该作者]

那不是更简单吗,都不用FIND了,直接赋值就好了

 回到顶部
美女呀,离线,留言给我吧!
caiyt0
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:63 积分:488 威望:0 精华:0 注册:2013/4/9 14:47:00
  发帖心情 Post By:2013/4/22 15:32:00 [只看该作者]

以下是引用Bin在2013-4-22 15:17:00的发言:

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

代码该如何写


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


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


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

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


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

 回到顶部
帅哥哟,离线,有人找我吗?
XYT
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1418 积分:7167 威望:0 精华:0 注册:2013/3/18 8:37:00
  发帖心情 Post By: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编辑过]

 回到顶部