以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]交叉统计 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=52345) |
-- 作者:lesliecheung912 -- 发布时间:2014/6/13 17:31:00 -- [求助]交叉统计 如果要在窗口中的查询表(SQLquery)中做交叉统计,代码应该如何写,直接生成查询表的代码为: Dim q As new QueryBuilder q.C q.TableName = ("政治面貌") q.Selectstring ="select * from (Select 工作部门,政治面貌,count(员工编号) 人数 from 员工档案表 group by 工作部门,政治面貌)b order by 人数 desc" q.Build Dim g As New CrossTableBuilder("政治面貌", DataTables("部门员工政治面貌")) g.HGroups.AddDef("工作部门") g.VGroups.AddDef("政治面貌") g.Totals.AddDef("人数", "人数") g.Build() MainTable = Tables("政治面貌") MainTable.Font = New Font("宋体",10,FontStyle.Regular) Tables("政治面貌").AutoSizeCols() 另外,这个查询表出来以后没有统计列,统计列的代码又改如何写?
[此贴子已经被作者于2014-6-13 17:31:49编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/6/13 17:33:00 -- 统计列?
CrossTableBuilder包括以下属性: Caption: 字符型,指定新生成统计表的标题。 |
-- 作者:有点甜 -- 发布时间:2014/6/13 17:34:00 -- 其实你还可以用 sqlCrossTableBuilder
http://www.foxtable.com/help/topics/1627.htm
|
-- 作者:lesliecheung912 -- 发布时间:2014/6/13 17:37:00 -- 定义交叉表时:Dim g As New CrossTableBuilder("政治面貌", DataTables("政治面貌")) 但是窗口中的表是查询表啊,那应该如何定义?
|
-- 作者:有点甜 -- 发布时间:2014/6/13 17:40:00 -- 以下是引用lesliecheung912在2014-6-13 17:37:00的发言:
定义交叉表时:Dim g As New CrossTableBuilder("政治面貌", DataTables("政治面貌")) 但是窗口中的表是查询表啊,那应该如何定义?
Tables("窗口1_Table1").DataSource = g.BuildDataSource |
-- 作者:lesliecheung912 -- 发布时间:2014/6/13 18:05:00 -- 将这个datasource放到定义的后面的话还是不行,会报 "未将对象引用设置到对象的实例" 的错误 |
-- 作者:lesliecheung912 -- 发布时间:2014/6/13 18:06:00 -- 并且水平和垂直方向的自动汇总在窗口中的查询表中没有体现 |
-- 作者:有点甜 -- 发布时间:2014/6/13 18:07:00 -- 以下是引用lesliecheung912在2014-6-13 18:05:00的发言:
将这个datasource放到定义的后面的话还是不行,会报 "未将对象引用设置到对象的实例" 的错误
窗口名、表名你都没有改一下么?
Dim g As New CrossTableBuilder("政治面貌", DataTables("部门员工政治面貌"))
g.HGroups.AddDef("工作部门")
g.VGroups.AddDef("政治面貌")
g.Totals.AddDef("人数", "人数")
Tables("窗口1_Table1").DataSource = g.BuildDataSource |
-- 作者:lesliecheung912 -- 发布时间:2014/6/13 18:14:00 -- Dim g As New CrossTableBuilder("政治面貌", DataTables("部门员工政治面貌")) 窗口名是:员工统计, 表名为Table1,那这个定义应该如何改啊?
|
-- 作者:Bin -- 发布时间:2014/6/14 9:00:00 -- Dim g As New CrossTableBuilder("政治面貌", DataTables("部门员工政治面貌")) g.HGroups.AddDef("工作部门") g.VGroups.AddDef("政治面貌") g.Totals.AddDef("人数", "人数") Tables("员工统计_Table1").DataSource = g.BuildDataSource |