以文本方式查看主题

-  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=17180)

--  作者:whtjtx
--  发布时间:2012/3/6 0:47:00
--  [求助]交叉统计

示例中,“应收款”表为统计表,我只是用这个临时表做个表样。

要达到的要求:

1、数据表中用交叉表统计没有结算客户每个月的欠收款,要生成像应收款表格式,这个交叉表如何设置?说简单点,就是把结算列没有打勾的相同客户每个月的金额合并后,生成应收款格式的统计表。

2、见窗口1,在窗口1插入数据表,加入一个按钮为应收款,点击这个应收款按钮,生成应收款统计表,效果跟要求1一样,这个按钮代码如何写??

3、生成的统计表能生成到窗口的Table1中吗?如果能,改如何做??

 

 

 

 

   这是最后一个问题,希望老师能够就示例文件帮我改下,我的工作也就完工了,谢谢!!!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目5.table

[此贴子已经被作者于2012-3-6 1:14:07编辑过]

--  作者:狐狸爸爸
--  发布时间:2012/3/6 7:53:00
--  

1、统计代码

 

Dim g As New CrossTableBuilder("统计表1", DataTables("数据表"))
g.HGroups.AddDef("客户")
g.VGroups.AddDef("日期", DateGroupEnum.Year, "{0}年")
g.VGroups.AddDef("日期", "{0}月")
g.Totals.AddDef("回单结", "回单结")
g.Totals.AddDef("月结", "月结")
g.HorizontalTotal = True
g.VerticalTotal = True
g.Build()
For Each c As col In Tables("统计表1").Cols
    c.Caption = c.Caption.Replace("年_","年")
Next
Tables("统计表1").BuildHeader
MainTable = Tables("统计表1")

 

2、在窗口显示统计结果,参考:

http://www.foxtable.com/help/topics/1909.htm

提示:Table控件不要绑定到任何表。

 

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目5.table


--  作者:whtjtx
--  发布时间:2012/3/6 11:53:00
--  

谢谢贺老师的解答,这个代码把数据表全部数据都统计出来了,我只需要统计结算列没有打勾的数据,这个代码该怎么改下呢?


--  作者:狐狸爸爸
--  发布时间:2012/3/6 11:55:00
--  
Dim g As New CrossTableBuilder("统计表1", DataTables("数据表"))
g.HGroups.AddDef("客户")
g.VGroups.AddDef("日期", DateGroupEnum.Year, "{0}年")
g.VGroups.AddDef("日期", "{0}月")
g.Totals.AddDef("回单结", "回单结")
g.Totals.AddDef("月结", "月结")
g.HorizontalTotal = True
g.VerticalTotal = True
g.Filter = "月结 = False Or 月结 Is Null"
Tables("窗口1_Table1").DataSource  = g.BuildDataSource
For Each c As col In Tables("窗口1_Table1").Cols
    c.Caption = c.Caption.Replace("年_","年")
Next
Tables("窗口1_Table1").BuildHeader