以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教这个SQLgroup统计问题出在哪里呢? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=43390) |
-- 作者:unverse -- 发布时间:2013/12/5 21:56:00 -- 请教这个SQLgroup统计问题出在哪里呢? Dim g As New SQLGroupTableBuilder("查询统计","KCCKD2") g.C g.AddTable("kcckd2","kcckd2_lsbh","kcckd1","kcckd1_lsbh") g.AddTable("kcckd2","kcckd2_wlbh","lswlzd","lswlzd_wlbh") g.AddTable("kcckd1","kcckd1_bmbh","kcbmzd","kcbmzd_bmbh") g.AddTable("kcckd1","kcckd1_ckbh","lsckzd","lsckzd_ckbh") g.AddTable("kcckd1","kcckd1_lyr","zwzgzd","zwzgzd_zgbh") g.AddTable("lswlzd","lswlzd_jldw","jsjldw","jsjldw_dwdm") g.AddTable("lswlzd","lswlzd_lbbh","lswllb","lswllb_lbbh") g.Caption = "统计表 " g.Groups.AddExp("年月份","kcckd1_djrq.Substring(0,6)") g.Groups.AddDef("kcckd1_sjdh","出库单号") g.Groups.AddDef("kcbmzd_bmmc","单位名称") g.Groups.AddDef("zwzgzd_zgxm","出库车号") g.Groups.AddDef("lsckzd_ckmc","仓库名称") g.Groups.AddDef("lswllb_lbbh","类别编号") g.Groups.AddDef("lswllb_lbmc","物料类别") g.Groups.AddDef("kcckd2_wlbh","物料编号") g.Groups.Adddef("lswlzd_wlmc","物料名称") g.Groups.Adddef("lswlzd_ggxh","规格型号") g.Groups.Adddef("jsjldw_dwmc","计量单位") g.Totals.Adddef("kcckd2_sl","领用数量") g.Totals.AddDef("kcckd2_dj","出库单价") g.Totals.AddDef ("kcckd2_je","金额") g.Groups.AddDef("kcckd1_bz","出库备注说明") g.Subtotal = True g.SubtotalLevel = 1 Tables(e.Form.Name & "_Table1").DataSource = g.BuildDataSource Tables(e.Form.Name & "_Table1").AutoSizeCols ------------------------ 以上是代码,不知道是什么原因,请问上面红色的代码有问题吗?那个是单据日期格式为:20120202 ,8位字符的,我想增加一列取前6位,生成一个列,根据这个列进行分组统计,添加列不能这样做吗? 错误提示: |
-- 作者:有点甜 -- 发布时间:2013/12/5 22:06:00 -- 试试,不行就不行了。 g.groups.addExp("年月份", "substring(kcckd1_djrq, 0, 6)")
|
-- 作者:unverse -- 发布时间:2013/12/5 22:58:00 -- 以下是引用有点甜在2013-12-5 22:06:00的发言:
试试,不行就不行了。 g.groups.addExp("年月份", "substring(kcckd1_djrq, 0, 6)") 现在倒是可以了,但是又出现了一个问题:我想以前这个日期列进行统计每个月的小计,现在统计默认的是以备注列进行统计的,请问应该如何操作,如果添加的列不起作用,那参数g.SubtotalLevel=1也会先统计出库日期吧,怎么会按备注统计呢。 代码: g.groups.addExp("年月份", "substring(kcckd1_djrq,1,6)") g.Groups.AddDef("kcckd1_djrq","出库日期") g.Groups.AddDef("kcckd1_sjdh","出库单号") g.Groups.AddDef("kcbmzd_bmmc","单位名称") g.Groups.AddDef("zwzgzd_zgxm","出库车号") g.Groups.AddDef("lsckzd_ckmc","仓库名称") g.Groups.AddDef("lswllb_lbbh","类别编号") g.Groups.AddDef("lswllb_lbmc","物料类别") g.Groups.AddDef("kcckd2_wlbh","物料编号") g.Groups.Adddef("lswlzd_wlmc","物料名称") g.Groups.Adddef("lswlzd_ggxh","规格型号") g.Groups.Adddef("jsjldw_dwmc","计量单位")
g.Groups.AddDef("kcckd1_bz","出库备注说明") g.Totals.Adddef("kcckd2_sl","领用数量") g.Totals.AddDef("kcckd2_dj","出库单价") g.Totals.AddDef ("kcckd2_je","金额")
g.Subtotal = True g.SubtotalLevel =1 |
-- 作者:有点甜 -- 发布时间:2013/12/5 23:22:00 -- g.SubtotalLevel=1 应该是最小分组,你试试改成12 |
-- 作者:unverse -- 发布时间:2013/12/5 23:43:00 -- 改成12话就乱了,,也没有添加的那个列的事,,,不知道为什么 。。。 |
-- 作者:狐狸爸爸 -- 发布时间:2013/12/6 7:59:00 -- 直接用代码设置汇总模式: http://www.foxtable.com/help/topics/1372.htm
随心所欲控制。 |