Foxtable(狐表)用户栏目专家坐堂 → 汇总模式


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

主题:汇总模式

美女呀,离线,留言给我吧!
xiaohuli
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:461 积分:3442 威望:0 精华:0 注册:2014/2/8 11:13:00
汇总模式  发帖心情 Post By:2015/12/16 15:29:00 [只看该作者]

我将查询到的数据表进行交叉统计后,然后在进行汇总模式统计,请问这个怎么实现?本人写的代码如下,但是代码有误,请老师帮忙看看。

   Dim q As new QueryBuilder
    q.C
    q.TableName = "统计表"

  q.SelectString = ""

 q.Build()

 

  Dim g As New GroupTableBuilder("统计表", DataTables("统计表"))
 
    g.Groups.AddDef("区域")
    g.Groups.AddDef("大区")
    g.Groups.AddDef("类别")
    g.Groups.AddDef("产品名称")
    g.Totals.AddDef("件数")
    g.Totals.AddDef("销售金额")
    g.VerticalTotal = True
    g.GrandProportion = True
    g.Build()

 Dim t As Table = Tables("统计表")
    Dim g1 As Subtotalgroup
    t.SubtotalGroups.Clear()
    t.GroupAboveData = False
    t.TreeVisible = True
    t.SpillNode = True
   
    g1 = New Subtotalgroup
    g1.Aggregate = AggregateEnum.Sum
    g1.GroupOn = "大区"
    g1.TotalOn = "件数,销售金额"
    g1.Caption = "{0} 小计"
    t.SubtotalGroups.Add(g1)
   
    g1 = New Subtotalgroup
    g1.Aggregate = AggregateEnum.Sum
    g1.GroupOn = "区域"
    g1.TotalOn = "件数,销售金额"
    g1.Caption = "{0} 小计"
    t.SubtotalGroups.Add(g1)

   
    forms("窗口1").open
    Tables("窗口1_Table1").DataSource = g1.BuildDataSource()
    Tables("窗口1_table1").Font = New Font("宋体",10,FontStyle.Bold)
    Tables("窗口1_table1").Sort = "件数 DESC"



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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/16 15:45:00 [只看该作者]

Tables("窗口1_Table1").DataSource = g1.BuildDataSource()

 

改成

 

Tables("窗口1_Table1").DataSource = DataTables("统计表")


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/16 15:48:00 [只看该作者]

或者这样写

 

Dim g As New GroupTableBuilder("统计表", DataTables("统计表"))

g.Groups.AddDef("区域")
g.Groups.AddDef("大区")
g.Groups.AddDef("类别")
g.Groups.AddDef("产品名称")
g.Totals.AddDef("件数")
g.Totals.AddDef("销售金额")
g.VerticalTotal = True
g.GrandProportion = True

forms("窗口1").open
Tables("窗口1_Table1").DataSource = g.BuildDataSource()

Dim t As Table = Tables("窗口1_Table1")
Dim g1 As Subtotalgroup
t.SubtotalGroups.Clear()
t.GroupAboveData = False
t.TreeVisible = True
t.SpillNode = True

g1 = New Subtotalgroup
g1.Aggregate = AggregateEnum.Sum
g1.GroupOn = "大区"
g1.TotalOn = "件数,销售金额"
g1.Caption = "{0} 小计"
t.SubtotalGroups.Add(g1)

g1 = New Subtotalgroup
g1.Aggregate = AggregateEnum.Sum
g1.GroupOn = "区域"
g1.TotalOn = "件数,销售金额"
g1.Caption = "{0} 小计"
t.SubtotalGroups.Add(g1)


Tables("窗口1_table1").Font = New Font("宋体",10,FontStyle.Bold)
Tables("窗口1_table1").Sort = "件数 DESC"


 回到顶部
美女呀,离线,留言给我吧!
xiaohuli
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:461 积分:3442 威望:0 精华:0 注册:2014/2/8 11:13:00
  发帖心情 Post By:2015/12/16 16:06:00 [只看该作者]

老师,你的这段代码还是不行,查询出来的数据还是交叉统计的数据,根本就没有汇总,也没有出现目录树。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/16 16:10:00 [只看该作者]

不可能,上传实例。

 回到顶部