Foxtable(狐表)用户栏目专家坐堂 → [求助] 动态查询问题


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

主题:[求助] 动态查询问题

帅哥哟,离线,有人找我吗?
jackwin
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:123 积分:943 威望:0 精华:0 注册:2013/7/25 14:52:00
[求助] 动态查询问题  发帖心情 Post By:2013/7/25 15:08:00 [显示全部帖子]

各位 大大

目前本人遇到了一个问题,请教了群里的很多童鞋,但均未能彻底解决。

 

问题: 现在有4张表 主表A 主表B  明细A和明细B 表结构都相同。

          其中主表A、 明细A和明细B为sql表

          主表B为一个内部表,无数据。

          主表A通过订单号和2张明细表关联。         

 

         

          Dim dr As Row
Dim dr1 As DataRow
For i As Integer = 0 To Tables("主表A").Count - 1
    dr = Tables("主表A").Rows(i)
    dr1 = DataTables("主表B").AddNew()
    dr1("条形码") =  dr("条形码")
    dr1("订单号") =  dr("订单号")
    dr1("单位名称") =  dr("单位名称")
    dr1("部门名称") =  dr("部门名称")
    dr1("结算方式") =  dr("结算方式")
    dr1("打单日期") =  dr("打单日期")
    dr1("备注") =  dr("备注")
Next

         以上语句实现了将主表A每次查询的数据同步到主表B

       现在希望通过主表B来动态查询主表关联的明细。

 

         由于存在一个主表信息同时在两个明细表都存在关联数据,所以我增加了条形码来判断。

要求: 当主表条形码字段是3开头的时  通过订单号关联明细表A;当主表的条形码是1开头的时候 通过订单号关联带出来明细表B

         并最终将明细表A和B带出的数据合并成一张表。

       


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


加好友 发短信
等级:幼狐 帖子:123 积分:943 威望:0 精华:0 注册:2013/7/25 14:52:00
  发帖心情 Post By:2013/7/25 15:12:00 [显示全部帖子]

附件为主表的一些字段 条形码实际上是一串字符串


图片点击可在新窗口打开查看此主题相关图片如下:11.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:幼狐 帖子:123 积分:943 威望:0 精华:0 注册:2013/7/25 14:52:00
  发帖心情 Post By:2013/7/25 15:19:00 [显示全部帖子]

稍等 我准备列子

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


加好友 发短信
等级:幼狐 帖子:123 积分:943 威望:0 精华:0 注册:2013/7/25 14:52:00
  发帖心情 Post By:2013/7/25 15:46:00 [显示全部帖子]

做的比较简单的窗口 当点击查询时 将主表A的数据同步到主表B  假如我同步了3条数据 当我点击提取按钮时  当主表B的条形码以3开头时  查询明细A  是1开头时  查询明细B  并最终讲数据汇总在统计表 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


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


加好友 发短信
等级:幼狐 帖子:123 积分:943 威望:0 精华:0 注册:2013/7/25 14:52:00
  发帖心情 Post By:2013/7/25 15:46:00 [显示全部帖子]

希望能得到大家的帮助


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


加好友 发短信
等级:幼狐 帖子:123 积分:943 威望:0 精华:0 注册:2013/7/25 14:52:00
  发帖心情 Post By:2013/7/25 16:08:00 [显示全部帖子]

这么快!!果然名不虚传


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


加好友 发短信
等级:幼狐 帖子:123 积分:943 威望:0 精华:0 注册:2013/7/25 14:52:00
  发帖心情 Post By:2013/7/25 16:09:00 [显示全部帖子]

我刚才测试了下 在例子里面运算的结果是对的

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


加好友 发短信
等级:幼狐 帖子:123 积分:943 威望:0 精华:0 注册:2013/7/25 14:52:00
  发帖心情 Post By:2013/7/25 17:00:00 [显示全部帖子]

For Each dr As DataRow In DataTables("出库临时主表").DataRows
    If dr("条形码").StartsWith("3") Then
        Dim drList As List(of DataRow) = DataTables("出库单明细").Select("billno='" & dr("订单号") & "'")
        If drList IsNot Nothing Then
            For Each drr As DataRow In drList
                Dim dr2 As DataRow = DataTables("出库单明细汇总").AddNew
                dr2("出库单号")=drr("billno")
                dr2("出库数量")=drr("qty")
                dr2("产品编码")=drr("itemno")
            Next
        End If
    End If
    If dr("条形码").StartsWith("1") Then
        Dim drList As List(of DataRow) = DataTables("ec_billbody").Select("billno='" & dr("订单号") & "'")
        If drList IsNot Nothing Then
            For Each drr As DataRow In drList
                Dim dr2 As DataRow = DataTables("出库单明细汇总").AddNew
                dr2("出库单号")=drr("billno")
                dr2("出库数量")=drr("qty")
                dr2("产品编码")=drr("itemno")
            Next
        End If
    End If
Next

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


加好友 发短信
等级:幼狐 帖子:123 积分:943 威望:0 精华:0 注册:2013/7/25 14:52:00
  发帖心情 Post By:2013/7/25 17:00:00 [显示全部帖子]

在例子里面可以实现 这是我程序的 但是没有效果

不明白是什么原因


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


加好友 发短信
等级:幼狐 帖子:123 积分:943 威望:0 精华:0 注册:2013/7/25 14:52:00
  发帖心情 Post By:2013/7/25 17:02:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:111.jpg
图片点击可在新窗口打开查看

 回到顶部
总数 16 1 2 下一页