以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]组合多个统计结果后如何增加汇总行 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=64754) |
-- 作者:huangfanzi -- 发布时间:2015/2/28 21:59:00 -- [求助]组合多个统计结果后如何增加汇总行 代码如下,这段代码执行后我希望有汇总行,并且导出至EXCEL后这个汇总行也存在 Dim bd1 As New SQLGroupTableBuilder("统计表1","销售结算台账") Dim dt1 As fxDataSource bd1.C bd1.Groups.AddDef("公司") \'根据公司分组 bd1.Totals.AddDef("结算金额","发货金额") \'对金额进行统计 dt1 = bd1.BuildDataSource() Dim bd2 As New SQLGroupTableBuilder("统计表2","销售收款台账") Dim dt2 As fxDataSource bd2.C bd2.Groups.AddDef("公司") \'根据公司分组 bd2.Totals.AddDef("金额","收款金额") \'对金额进行统计 dt2 = bd2.BuildDataSource() dt1.Combine("公司",dt2,"公司") \'将收款数据组合到销售统计数据 Tables("销售款项查询_Table1").DataSource = dt1 \'将统计结果绑定到Table With DataTables("销售款项查询_Table1").DataCols \'用表达式列计算应收款 .Add("应收款",Gettype(Double), "IsNull([发货金额],0) - ISNULL([收款金额],0)") End With 我目前用的增加汇总行的代码如下: With Tables("销售款项查询_Table1") .Cols("发货金额").GrandTotal = True \'指定要合计的列 .Cols("收款金额").GrandTotal = True .Cols("应收款").GrandTotal = True .GrandTotal = True \'显示合计模式 End With 这个汇总代码在导出EXCEL后汇总行不会出现,请老师看看如何解决! |
-- 作者:有点甜 -- 发布时间:2015/3/1 9:53:00 -- 设置成汇总模式,然后用SaveExcel方法。
Dim t As Table = Tables("表A") g = New Subtotalgroup t.Subtotal() t.SaveExcel("C:\\test.xls","表A") |
-- 作者:don -- 发布时间:2015/3/1 11:11:00 -- 也可这样: Dim sq1,sq2 As String sq1 = "Select 公司,结算金额 As 发货金额, 0 As 收款金额, 结算金额 As 应收款 F rom{销售结算台账}" sq2 = "Select 公司,0 As 发货金额, 金额 As 收款金额, -金额 As 应收款 F rom{销售收款台账}" Dim bd1 As New GroupTableBuilder("统计",sq1 & " Union All " & sq2) bd1.Groups.AddDef("公司") \'根据公司分组 bd1.Totals.AddDef("发货金额") \'统计 bd1.Totals.AddDef("收款金额") \'统计 bd1.Totals.AddDef("应收款") \'统计 bd1.VerticalTotal = True \'自动垂直汇总 Dim t1 As Table = Tables("窗口1_Table1") t1.DataSource =bd1.BuildDataSource() |