SQLJoinTableBuilder和统计工具
上一节已经讲到,不管是GroupTableBuilder还是CrossTableBuilder,都可以直接使用Select语句作为统计数据来源。
不过这有个不足,就是需要我们自己编写Select语句,对于某些用户来说,这有些难度。
如果将SQLJoinTableBuilder配合统计工具使用,那么这个问题就不复存在了,因为SQLJoinTableBuilder可以用简单直观的方式生成SQL语句。
示例
打开CaseStudy目录下的文件"多表统计.Table",然后在命令窗口测试下面的代码:
Dim
jb As
new
SQLJoinTableBuilder("查询表1","订单")
jb.ConnectionName
= "Sale"
jb.AddTable("订单","产品ID","产品","产品ID")
jb.AddExp("产品","产品名称")
jb.AddCols("日期",
"数量","单价")
jb.AddExp("金额",
"[数量] *
[单价]")
Dim
cb As
new CrossTableBuilder("统计表1",jb.BuildSQL,"Sale")
cb.HGroups.AddDef("产品")
cb.VGroups.AddDef("日期",DateGroupEnum.Year,"{0}年")
cb.Totals.Adddef("数量")
cb.Totals.AddDef("金额")
cb.Build()
MainTable = Tables("统计表1")
得到的统计结果为:
当然用SQLCrossTableBuilder也可以直接完成同样的统计任务, 而且更加简单,本节只是用一个简单的例子,告诉你如何结合使用SQLJoinTableBuilder和统计工具。