Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
Dim t As Table = Tables("XXX公司")
Dim g As Subtotalgroup
t.SubtotalGroups.Clear()
t.GroupAboveData = False
t.TreeVisible = False
t.SpillNode = True
g = New Subtotalgroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "部门"
g.TotalOn = "基本工资,工龄工资,岗位工资,职务工资,职称技能,保健,独子费,房贴,小计,奖金,劳务费,加班费,夜班费,应发工资,基本公积,补充公积,养老金,医保,失保,工会费,扣税,扣款,病事假,所得税,实发工资"
g.Caption = "{0} 小计"
t.SubtotalGroups.Add(g)
t.Subtotal()
按上面代码可以按部门汇总,但是会自动按部门排序,我不需要部门排序如何完成?
自定义排序
在默认情况下,Subtotal方法会根据分组列进行排序,然后再生成汇总模式。
Subtotal有一个可选参数,如果将其设置为True,那么在生成汇总模式时,可以自定义排序参数,而不是根据分组列排序。
例如根据日期和客户排序,分组列为客户,统计列为数量与金额,生成汇总模式:
Dim t As Table = Tables("订单")
Dim g As Subtotalgroup
t.SubtotalGroups.Clear()
g = New
Subtotalgroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "客户"
g.TotalOn = "数量,金额"
g.Caption = "{0} 小计"
t.SubtotalGroups.Add(g)
g = New
Subtotalgroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "*"
g.TotalOn = "数量,金额"
g.Caption = "总计"
t.SubtotalGroups.Add(g)
t.Sort = "日期,客户"
'指定排序字段
t.Subtotal(True) '生成汇总模式
t.Sort = "日期,客户"
'指定排序字段
t.Subtotal(True) '生成汇总模式
这里还是指定了日期,和客户为排序字段,我的意思是我的原始表已经按部门分类好了,但是汇总后,我希望还是按部门原来的顺序来排列,而不希望是自动排序的
t.Sort = "日期,客户"
'指定排序字段
t.Subtotal(True) '生成汇总模式
这里还是指定了日期,和客户为排序字段,我的意思是我的原始表已经按部门分类好了,但是汇总后,我希望还是按部门原来的顺序来排列,而不希望是自动排序的
那么不要指定排序,只保留:
t.Subtotal(True) '生成汇总模式