以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 联合统计问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=69391) |
-- 作者:utcxray -- 发布时间:2015/6/4 12:24:00 -- 联合统计问题 \'按供应商、型号统计销售 Dim bb As New SQLGroupTableBuilder("统计表1","出库") bb.C bb.AddTable("出库","型号","采购明细","型号") \'添加统计表 bb.Groups.AddDef("出库日期", DateGroupEnum.Year, "年") \'根据日期按年分组 bb.Groups.AddDef("{采购明细}.供应商") \'根据供应商名称分组 bb.Groups.AddDef("{采购明细}.型号") \'根据型号名称分组 bb.Totals.AddDef("{出库}.出库数量") \'对数量进行统计 bb.Totals.Addexp("出货金额","{出库}.出库数量*{出库}.销售单价") \'对数量进行统计 bb.Subtotal=True Tables("客户产品分析_Table2").DataSource = bb.BuildDataSource() 此代码可以统计出数字,但个别统计数字有误,请指点。 采购明细表中有供应商、型号字段,出库表中有型号、出库数量字段,目的想统计每家供应商的每种型号对销售的贡献。
|
-- 作者:y2287958 -- 发布时间:2015/6/4 12:32:00 -- 上例子并详细说明 |
-- 作者:大红袍 -- 发布时间:2015/6/4 14:18:00 -- SqlGroupTableBuilder,多表的情况下,必须是父子表情况。
也就是不能用采购明细表,而只能用供应商表做父表。 |
-- 作者:大红袍 -- 发布时间:2015/6/4 14:20:00 -- 如果要用 采购明细 表,就必须先把 采购明细 表分组得到供应商表,然后再连接查询 出库 表 |
-- 作者:utcxray -- 发布时间:2015/6/4 16:00:00 -- ![]() ![]() 如果要同时针对多个表进行统计,可以使用AddTable方法添加表,参与统计的表相互之间必须存在某种联系。 添加统计表的语法为: AddTable(Table1,Col1,Table2,Col2) Table1:基表,或者已经添加的数据表 ,称之为左表。 提示: 1、Table1(左表)和Table2(右表)并非一定要事先建立关联,只需两者的数据可以通过指定的列关联起来即可。 根据帮助中介绍,采购明细表是父表(右表),出库表是子表(左表)。应该没错的呀。两个表通过型号联系,型号唯一 |
-- 作者:大红袍 -- 发布时间:2015/6/4 16:02:00 -- 呃,根本就不是父子关系,看表面就知道是多对多关系。你见过一个孩子有多个父亲的吗?
|
-- 作者:utcxray -- 发布时间:2015/6/4 16:08:00 -- 我再看看,谢谢 [此贴子已经被作者于2015/6/4 16:09:02编辑过]
|