以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]交叉统计统计同一列的平均值、最大值、最小值时遇到了问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=105128)

--  作者:DrSun
--  发布时间:2017/8/11 23:25:00
--  [求助]交叉统计统计同一列的平均值、最大值、最小值时遇到了问题
本人在使用交叉统计表生成器时遇到了一个问题,当要统计同一列的平均值、最大值、最小值时,生成的统计表,统计的数据只有最后的统计列有效(以下的代码中生成的结果只统计了金额最小值),请教各位有什么解决方法?

使用以下代码生成交叉统计表:
Dim g As New CrossTableBuilder("统计表1", DataTables("V010021_01"))
g.HGroups.AddDef("ReportTime", DateGroupEnum.Day, "日")
g.VGroups.AddDef("ReportTime", DateGroupEnum.Year, "{0}年")
g.VGroups.AddDef("ReportTime", "{0}月")

g.Totals.AddDef("A2", AggregateEnum.Average, "金额平均值")
g.Totals.AddDef("A2", AggregateEnum.Max, "金额最大值")
g.Totals.AddDef("A2", AggregateEnum.Min, "金额最小值")

g.FromServer = True
g.Build()
MainTable = Tables("统计表1")

生成的统计表:

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


[此贴子已经被作者于2017/8/11 23:26:25编辑过]

--  作者:有点蓝
--  发布时间:2017/8/11 23:39:00
--  
使用组合统计,平均值、最大值、最小值分成3次统计,然后组合


--  作者:DrSun
--  发布时间:2017/8/11 23:47:00
--  
请问在交叉统计表生成器里:
像下面的这段代码是否只有最后一行是有效的?
g.Totals.AddDef("A2", AggregateEnum.Average, "金额平均值")
g.Totals.AddDef("A2", AggregateEnum.Max, "金额最大值")
g.Totals.AddDef("A2", AggregateEnum.Min, "金额最小值")

--  作者:有点蓝
--  发布时间:2017/8/12 8:44:00
--  
是!

按2楼用法处理

--  作者:有点蓝
--  发布时间:2017/8/12 8:51:00
--  
bug,下次更新