以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [统计]求教  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=134731)

--  作者:hcfbehero
--  发布时间:2019/5/5 13:25:00
--  [统计]求教
如下图样式的统计表,情况是:前段为这个客户的总的统计,后面的砼水明细为其局部明细,这个该如何构思,我用多表统计合并也不能实现,结果是前段还是分段统计了,求教。

图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20190505132100.png
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2019/5/5 14:34:00
--  

 

具体实例发上来测试。

 

 


--  作者:hcfbehero
--  发布时间:2019/5/6 10:50:00
--  
数据大,弄了好长时间,少了您不好弄,请您耐心帮忙下,谢谢
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


--  作者:有点甜
--  发布时间:2019/5/6 11:07:00
--  

不建议放在一张表显示,不能分别统计,然后分别显示?父子表的形式。

 

照这种方式,分别统计得到你的数据

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=133996&skin=0

 


--  作者:hcfbehero
--  发布时间:2019/5/6 12:39:00
--  
哎,我弄了五六个小时的实例,您这样一个回复,有点小心塞,最后几张统计表了,看到您说上实例,我想着要解决了,放下所有工作一点点弄实例,生怕错了一个数据不能得到结果,可结果……,我再看看吧,还是感谢!
--  作者:有点甜
--  发布时间:2019/5/6 12:46:00
--  

1、例子就是表数据而已,要做5、6个小时?叫你做实例,只需要表数据啊。

 

2、分别统计的代码不会写?照着这个做啊

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=133996&skin=0

 

得到左边的表了没有?得到以后,同样方法,得到右边的表啊。

 

得到两个表以后,再想办法合并起来啊。

 

3、论坛上的问题解答,不是直接给你完整的代码的,是告诉你思路,要你自己去学习生成符合你需求的啊。

 

 


--  作者:hcfbehero
--  发布时间:2019/5/6 20:49:00
--  
谢谢!
--  作者:hcfbehero
--  发布时间:2019/5/6 21:15:00
--  
甜版我做了以下的代码,测试出现以下错误,您帮看下

Dim bcty As WinForm.ComBoBox = e.Form.Controls("ComboBox12")

Dim g1 As New GroupTableBuilder("统计表1", DataTables("明细根表"))
Dim dt1 As fxDataSource
g1.Groups.AddDef("运输审核_结算月", "结算月")
g1.Groups.AddDef("销售审核_销档", "销档")
g1.Groups.AddDef("销售名称", "客户名称")
g1.Groups.AddDef("销售审核_吉", "吉")
g1.Groups.AddDef("销售审核_开票", "票")
g1.Totals.AddDef("销", AggregateEnum.Count,"销")
g1.Totals.AddDef("生产信息_类型", AggregateEnum.Count, "砼车数")
g1.Totals.AddDef("销量", "总方量")
g1.Totals.AddDef("销售_砼销额", "砼金额")
g1.Totals.AddDef("GDBFJE", "运输补助")
g1.Totals.AddDef("GDBCJE", "超时补助")
g1.Totals.AddDef("工地补助_工补其", "其他费用")
g1.Totals.AddDef("月调整_方量")
g1.Totals.AddDef("月调整_金额")
g1.VerticalTotal = True
g1.Filter = "[运输审核_结算月] = \'" & bcty.text & "\' and [销] = \'X\' and [生产信息_类型] = \'砼\'"
dt1 = g1.BuildDataSource()

Dim g2 As New GroupTableBuilder("统计表1", DataTables("明细根表"))
Dim dt2 As fxDataSource
g2.Groups.AddDef("运输审核_结算月", "结算月")
g2.Groups.AddDef("销售名称", "客户名称")
g2.Totals.AddDef("生产信息_类型", AggregateEnum.Count, "水")
g2.Totals.AddDef("销售_水销额", "水金额")
g2.VerticalTotal = True
g2.Filter = "[运输审核_结算月] = \'" & bcty.text & "\' and [生产信息_类型] = \'水\'"
dt2 = g2.BuildDataSource()

Dim g3 As New GroupTableBuilder("统计表2", DataTables("泵送明细"))
Dim dt3 As fxDataSource
g3.Groups.AddDef("财务结算年月")
g3.Groups.AddDef("销售工地名称")
g3.Totals.AddDef("结算_销售","泵送费用")
g3.VerticalTotal = True
g3.Filter = "[财务结算年月] = \'" & bcty.text & "\'"
dt3 = g3.BuildDataSource()

Dim g4 As New GroupTableBuilder("统计表1", DataTables("明细根表"))
Dim dt4 As fxDataSource
g4.Groups.AddDef("运输审核_结算月", "结算月")
g4.Groups.AddDef("销售名称", "客户名称")
g4.Groups.AddDef("销售标号")
g4.Totals.AddDef("销售_砼销价", AggregateEnum.Average, "单价")
g4.Totals.AddDef("销量", "方/车")
g4.VerticalTotal = True
g4.Filter = "[运输审核_结算月] = \'" & bcty.text & "\' and [销] = \'X\' and [销售标号] is not Null"
dt4 = g4.BuildDataSource()

Dim ar1() As String = {"结算月","客户名称"}
Dim ar2() As String = {"结算月","客户名称"}
Dim ar3() As String = {"财务结算年月","销售工地名称"}
Dim ar4() As String = {"结算月","客户名称"}

dt1.Combine(ar1,dt2,ar2)
dt1.Combine(ar1,dt3,ar3)
dt1.Combine(ar1,dt4,ar4)

Tables("数据统计_Table11").DataSource = dt1

Tables("数据统计_Table11").AutoSizeCols()


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

[此贴子已经被作者于2019/5/6 21:16:12编辑过]

--  作者:有点蓝
--  发布时间:2019/5/6 22:17:00
--  
如果要合并统计结果,每一个统计表的Groups.AddDef的个数必须相等,也就是分组列的个数必须一致,否则无法合并
--  作者:hcfbehero
--  发布时间:2019/5/6 22:34:00
--  
我之前合并过那个我给你发的交叉表和分组合并的那个,GA个数不相等呀,也是合法编译并出正确结果了呀,我其他的做了一个GA个数相等的,也出现这个问题了,甜版还有别的什么原因不