Foxtable(狐表)用户栏目专家坐堂 → 如何实现主表和明细合并统计?


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

主题:如何实现主表和明细合并统计?

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


加好友 发短信
等级:六尾狐 帖子:1360 积分:9034 威望:0 精华:0 注册:2020/11/4 22:15:00
如何实现主表和明细合并统计?  发帖心情 Post By:2023/5/5 17:17:00 [只看该作者]

模拟关联,表A为主表,表B为明细表,如何根据主表和明细的内容进行统计显示?

表A
单号    客户     日期              等级
A01     AA      2023-3-3       A
A02     AA      2023-3-10      A
A03     BB      2023-3-15     B

表B
单号    物料号     品名              数量
A01     F01         FF                 200
A01     F02         FA                 350
A02     F01         FF                 2000
A02     K02         FK                3000
A03    BK02        G FK                5000

需求计算结果

    年        月      客户       等级         物料号      品名              数量      
    2023      3       AA        A             F01         FF                 2200
     2023      3       AA        A              F02         FA                 350
     2023      3     AA          A            K02         FK                3000
     2023      3     AA           A             K02         FK                3000
      2023      3     BB           B             BK02        G FK               5000





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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/5 17:21:00 [只看该作者]

参考:http://www.foxtable.com/webhelp/topics/1626.htm

Dim b As New SQLGroupTableBuilder("统计表1","表A")
b.ConnectionName = 
"Sale"
b.AddTable(
"表A","单号","表A","单号"'添加统计表
b.Groups.AddDef(
"日期", DateGroupEnum.Year, "年"'根据日期按年分组
b.Groups.AddDef(
"客户"'根据产品名称分组
b.Totals.AddDef(
"数量"'对数量进行统计
b.Totals.AddDef……
……
b.Build 
'生成统计表
Maintable
 = Tables("统计表1"'打开生成的统计表

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


加好友 发短信
等级:六尾狐 帖子:1360 积分:9034 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2023/5/5 18:02:00 [只看该作者]

如果分组是客户、产品,如何实现重复客户的合并显示?

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/6 8:43:00 [只看该作者]

怎么个合并法?请举例具体数据说明

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


加好友 发短信
等级:六尾狐 帖子:1360 积分:9034 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2023/5/6 10:07:00 [只看该作者]

图片点击可在新窗口打开查看

显然,对于标准合并方式,我们应该将需要合并的列移到最左边。


With Tables("订单统计窗口_Table2")
    .MergeMode = MergeModeEnum.Standard '标准合并模式
    .
MergeCols.Clear() '清除原来的合并
    .
MergeCols.Add("客户"'加入要合并的列

    .
MergeSort = "客户" '设置合并模式下的排序方式
    .
AllowMerge = True '启用合并模式
End With



订单统计窗口_Table2是2楼的方法统计显示在Table2,想结果以客户进行合并,上面代码,没报错,也没执行,不知怎么解决?


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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/6 10:16:00 [只看该作者]

显然,对于标准合并方式,我们应该将需要合并的列移到最左边。

 回到顶部