Foxtable(狐表)用户栏目专家坐堂 → [求助]跨表统计并自动填列


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

主题:[求助]跨表统计并自动填列

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


加好友 发短信
等级:三尾狐 帖子:721 积分:6887 威望:0 精华:0 注册:2012/3/1 7:20:00
[求助]跨表统计并自动填列  发帖心情 Post By:2012/7/3 6:15:00 [只看该作者]

 

如何跨表统计订单表中出仓日期和出仓数量为空的数据行,并按商品名称、规格分类以合计数形式统计填列到采购计划表中

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:实验.rar


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/7/3 8:14:00 [只看该作者]

很简单的:

 

Dim g As New GroupTableBuilder("统计表1", DataTables("订单表"))
Dim dt As DataTable
g.Groups.AddDef("商品名称")
g.Groups.AddDef("规格")
g.Totals.AddDef("数量")
g.Filter = "[出仓数量] is Null Or [出仓数量] = 0"
dt = g.Build(True)
DataTables("采购计划表").DataRows.Clear()
For Each dr1 As DataRow In dt.DataRows
    Dim dr2 As DataRow = DataTables("采购计划表").AddNew
    dr2("商品名称") = dr1("商品名称")
    dr2("规格") = dr1("规格")
    dr2("计划采购数量") = dr1("数量")
Next

 

相关知识点:

http://www.foxtable.com/help/topics/1533.htm

http://www.foxtable.com/help/topics/1910.htm

 


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


加好友 发短信
等级:三尾狐 帖子:721 积分:6887 威望:0 精华:0 注册:2012/3/1 7:20:00
  发帖心情 Post By:2012/7/3 11:03:00 [只看该作者]

多谢指点,只是发现当订单表里数据量很大时,统计速度明显慢了很多,要等上一段时间,有无改进办法?

 


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/7/3 11:10:00 [只看该作者]

统计很快,是填充慢,可以这样试试:

 

Dim g As New GroupTableBuilder("统计表1", DataTables("订单表"))
Dim dt As DataTable
g.Groups.AddDef("商品名称")
g.Groups.AddDef("规格")
g.Totals.AddDef("数量")
g.Filter = "[出仓数量] is Null Or [出仓数量] = 0"
dt = g.Build(True)
DataTables("采购计划表").StopRedraw
DataTables("采购计划表").DataRows.Clear()
For Each dr1 As DataRow In dt.DataRows
    Dim dr2 As DataRow = DataTables("采购计划表").AddNew
    dr2("商品名称") = dr1("商品名称")
    dr2("规格") = dr1("规格")
    dr2("计划采购数量") = dr1("数量")
Next
DataTables("采购计划表").ResumeDraw


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


加好友 发短信
等级:三尾狐 帖子:721 积分:6887 威望:0 精华:0 注册:2012/3/1 7:20:00
  发帖心情 Post By:2012/7/3 11:45:00 [只看该作者]

狐爸,最后一句程序应为DataTables("采购计划表").ResumereDraw。速度是有所提高,但与我理想速度可能有些差距,不过还是多谢您的指点。


 回到顶部