Foxtable(狐表)用户栏目专家坐堂 → 如何实现近百张表的多表查询


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

主题:如何实现近百张表的多表查询

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


加好友 发短信
等级:幼狐 帖子:70 积分:1244 威望:0 精华:0 注册:2013/10/21 23:01:00
如何实现近百张表的多表查询  发帖心情 Post By:2016/10/30 21:16:00 [显示全部帖子]

有近百张每个月的数据表,每张表的结构都是一样的,现在要新建表A,希望在表A中输入姓名,实现把其余所有表中的数据提取到表A中。
因为数据表太多了,不能逐个建立关联吧,大家看看在表A  datacolchanged事件中写的代码,
1、哪里出错?     2、还有如何实现按月份逐行提取?
For Each dt As DataTable In DataTables
    Dim dr As DataRow
    dr = dt.Find("dt.datacols("姓名") = e.DataRow("姓名")")
    If dr IsNot Nothing Then
        e.DataRow("数量") = dr(dt.dataCols("数量"))
    End If
Next
 
数据表太多,没有一一导入,做了个例子,代码因为错误,无法保存在事件代码中。
          
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:管理项目2.table

[此贴子已经被作者于2016/10/30 21:59:57编辑过]

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


加好友 发短信
等级:幼狐 帖子:70 积分:1244 威望:0 精华:0 注册:2013/10/21 23:01:00
  发帖心情 Post By:2016/10/30 21:58:00 [显示全部帖子]

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


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


加好友 发短信
等级:幼狐 帖子:70 积分:1244 威望:0 精华:0 注册:2013/10/21 23:01:00
  发帖心情 Post By:2016/10/31 0:08:00 [显示全部帖子]

谢谢

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


加好友 发短信
等级:幼狐 帖子:70 积分:1244 威望:0 精华:0 注册:2013/10/21 23:01:00
  发帖心情 Post By:2016/10/31 0:13:00 [显示全部帖子]

以下是引用cbt在2016/10/30 22:46:00的发言:
 Dim name As String="张三"
DataTables("表A").DeleteFor("")
For Each dt As DataTable In DataTables
    If dt.name = "表A" Then
        Continue For
    End If
    Dim dr As DataRow = dt.Find("姓名='" & name & "'")
    If dr IsNot Nothing Then
        Dim dr2 As DataRow = DataTables("表A").AddNew()
        dr2("姓名")=name
        dr2("月份")=dt.Caption
        dr2("数量")=dr("数量")
    End If
Next

这段代码好像不能写在datacolchanged事件中,运行会退出foxtable。

Dim dr2 As DataRow = DataTables("表A").AddNew()
        dr2("姓名")=name

重新激活了datacolchanged事件吧

写在锁定行事件中就不会出现这个问题


 回到顶部