以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]关于交叉统计  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=128234)

--  作者:blsu33
--  发布时间:2018/12/1 17:39:00
--  [求助]关于交叉统计
老师,
   如何 让 交叉统计表,在窗口显示?
Dim bxhz As WinForm.Table = e.Form.Controls("bxhz")
Dim g As New CrossTableBuilder("统计表1", DataTables("pm01021"))
g.HGroups.AddDef("numbers")
g.HGroups.AddDef("submiterid",DateGroupEnum.none)
g.HGroups.AddDef("cheks",DateGroupEnum.none)
g.VGroups.AddDef("doctypename")
g.Totals.AddDef("amount", "amount", True)
g.OrderByTotal = True
g.HorizontalTotal = True
g.VerticalTotal = True
g.Subtotal = True
bxhz.Table.DataSource =g.Build()

--  作者:blsu33
--  发布时间:2018/12/1 17:40:00
--  
哦  解决了BuildDataSource()
[此贴子已经被作者于2018/12/1 17:53:36编辑过]

--  作者:blsu33
--  发布时间:2018/12/1 17:43:00
--  
老师,
  Dim g As New CrossTableBuilder("统计表1", DataTables("pm01021"))
g.HGroups.AddDef("numbers")
g.HGroups.AddDef("submiterid")
g.HGroups.AddDef("cheks")
g.VGroups.AddDef("doctypename")
g.Totals.AddDef("amount", "amount", True)
g.OrderByTotal = True
g.HorizontalTotal = True
g.VerticalTotal = True
g.Subtotal = True
g.SubtotalLevel = 1 \'只生成总计行
g.Build()
bxhz.Table.DataSource =g.BuildDataSource()
为何 不能按照numbers 进行分组

图片点击可在新窗口打开查看此主题相关图片如下:6da36d55-1424-420c-98b8-eec4e5e5f14a.png
图片点击可在新窗口打开查看




[此贴子已经被作者于2018/12/1 18:48:58编辑过]

--  作者:有点甜
--  发布时间:2018/12/2 23:08:00
--  

 

你尝试先交叉统计后,再设置一次汇总模式。

 

 


--  作者:blsu33
--  发布时间:2018/12/2 23:18:00
--  
交叉统计 
g.SubtotalLevel = 1 \'只生成总计行

这个设置为0?
[此贴子已经被作者于2018/12/2 23:19:39编辑过]

--  作者:有点甜
--  发布时间:2018/12/2 23:32:00
--  

直接再用汇总模式

 

http://www.foxtable.com/webhelp/scr/1372.htm

 

 


--  作者:blsu33
--  发布时间:2018/12/2 23:38:00
--  
Dim bxhz As WinForm.Table = e.Form.Controls("bxhz")
Dim g As New CrossTableBuilder("统计表1", DataTables("pm01021"))
g.HGroups.AddDef("numbers")
g.HGroups.AddDef("submiterid")
g.HGroups.AddDef("cheks")
g.VGroups.AddDef("doctypename")
g.Totals.AddDef("amount", "amount", True)
g.OrderByTotal = True
g.HorizontalTotal = True
g.VerticalTotal = True
g.Subtotal = True
bxhz.Table.DataSource =g.BuildDataSource()
Dim t As Table = bxhz.Table
Dim g1 As Subtotalgroup
t.SubtotalGroups.Clear()
t.GroupAboveData = False
t.TreeVisible = False
t.SpillNode = False

g1 = New Subtotalgroup
g1.Aggregate = AggregateEnum.Sum
g1.GroupOn = "numbers"
g1.TotalOn = "doctypename" \'这块 怎么写 才好呢,现在显示不存在该列
g1.Caption = "{0} 小计"
t.SubtotalGroups.Add(g1)
t.Subtotal()

--  作者:blsu33
--  发布时间:2018/12/2 23:48:00
--  
楼上 标注颜色的部分 这样写了 可以实现  但还是 不太好用 还有别的简单设置 就可以实现的吗?
For Each c As Col In t.Cols
g1.TotalOn = c.name \'
Next
还有 列没有 汇总

图片点击可在新窗口打开查看此主题相关图片如下:6d8019b3-1b4d-44b3-8e1c-28080c17460d.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2018/12/2 23:51:39编辑过]

--  作者:有点甜
--  发布时间:2018/12/3 9:08:00
--  

要说多少次?

 

直接再用汇总模式

 

http://www.foxtable.com/webhelp/scr/1372.htm