以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 在线等:组合统计结果显示,如何能让后续增加的表达式列移动到前面 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=26420) |
-- 作者:sunfu -- 发布时间:2012/12/3 22:58:00 -- 在线等:组合统计结果显示,如何能让后续增加的表达式列移动到前面 在设计一个进销存系统,里面有到了组合多个统计结果功能,后续增加的几个表达式列想移动到适当位置显示,但不知道怎么做,请求大家帮助。 代码如下: Dim bd4 As New GroupTableBuilder("统计表4",DataTables("商品编码表")) Dim dt4 As fxDataSource bd4.Groups.AddDef("商品编码") \'根据型号分组 bd4.Groups.AddDef("商品名称") bd4.Groups.AddDef("商品单价1") bd4.Groups.AddDef("包装方式") bd4.Groups.AddDef("一级类别") bd4.Groups.AddDef("二级类别") dt4 = bd4.BuildDataSource() Dim bd2 As New GroupTableBuilder("统计表2",DataTables("盘点明细表")) Dim dt2 As fxDataSource bd2.filter="[盘点日期]= #" & Cstr(qcrq) & "#" bd2.Groups.AddDef("商品编码") \'根据型号分组 \'bd2.Groups.AddDef("商品名称") bd2.Totals.AddDef("盘存数量","期初_数量") \'对数量进行统计 dt2 = bd2.BuildDataSource() Dim bd1 As New GroupTableBuilder("统计表1",DataTables("进货明细表")) Dim dt1 As fxDataSource bd1.filter="[进货日期]>= #" & Cstr(comb_list_date1.value) & "# And [进货日期]<= # "& cstr(comb_list_date2.value) &"#" bd1.Groups.AddDef("商品编码") \'根据型号分组 \'bd1.Groups.AddDef("商品名称") bd1.Totals.AddDef("进货数量","进货_数量") \'对数量进行统计 dt1 = bd1.BuildDataSource() Dim bd3 As New GroupTableBuilder("统计表3",DataTables("盘点明细表")) Dim dt3 As fxDataSource bd3.filter="[盘点日期]= #" & Cstr(comb_list_date2.value) & "#" bd3.Groups.AddDef("商品编码") \'根据型号分组 \'bd3.Groups.AddDef("商品名称") bd3.Totals.AddDef("盘存数量","期末_数量") \'对数量进行统计 dt3 = bd3.BuildDataSource() dt4.Combine("商品编码",dt2,"商品编码") \'将销售统计数据组合到进货统计数据 dt4.Combine("商品编码",dt1,"商品编码") \'将退货统计数据组合到进货统计数据 dt4.Combine("商品编码",dt3,"商品编码") \'将销售统计数据组合到进货统计数据 Tables("进销存报表_Table1").DataSource = dt4 \'将统计结果绑定到Table DataTables("进销存报表_Table1").DeleteFor("期初_数量 is null and 进货_数量 is null and 期末_数量 is null") With DataTables("进销存报表_Table1").DataCols \'用表达式列计算库存数据 .Add("销售_数量",Gettype(Single), "IsNull([期初_数量],0) + ISNULL([进货_数量],0) - ISNULL([期末_数量],0)") .Add("销售_金额",Gettype(Single), "IsNull([销售_数量],0)*[商品单价1]") .Add("期初_金额",Gettype(Single), "IsNull([期初_数量],0)*[商品单价1]") .Add("期末_金额",Gettype(Single), "IsNull([期末_数量],0)*[商品单价1]") End With 红色部分就是增加的表达式列,但不能移动上去,好难看啊 |
-- 作者:sloyy -- 发布时间:2012/12/3 23:24:00 -- Move 移动列到指定位置。 语法 Move(NewIndex) NewIndex:新的位置 例如将日期列移到第一列位置: Tables("订单") .Cols("日期").Move(0) |
-- 作者:sgs -- 发布时间:2012/12/4 6:35:00 -- 二楼正解 |