Foxtable(狐表)用户栏目专家坐堂 → 在线等:组合统计结果显示,如何能让后续增加的表达式列移动到前面


  共有8979人关注过本帖树形打印复制链接

主题:在线等:组合统计结果显示,如何能让后续增加的表达式列移动到前面

帅哥哟,离线,有人找我吗?
sunfu
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:20 积分:308 威望:0 精华:0 注册:2012/11/4 10:34:00
在线等:组合统计结果显示,如何能让后续增加的表达式列移动到前面  发帖心情 Post By: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
  2楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2180 积分:13804 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2012/12/3 23:24:00 [只看该作者]

Move

移动列到指定位置。

语法

Move(NewIndex)

NewIndex:新的位置

例如将日期列移到第一列位置:

Tables("订单").Cols("日期").Move(0)


 回到顶部
帅哥哟,离线,有人找我吗?
sgs
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:365 积分:2693 威望:0 精华:1 注册:2011/11/25 7:55:00
  发帖心情 Post By:2012/12/4 6:35:00 [只看该作者]

二楼正解

 回到顶部