Dim bd1 As New GroupTableBuilder("统计表1",DataTables("费用明细附表"))
Dim dt1 As fxDataSource
bd1.Groups.AddDef("日期",DateGroupEnum.None)
bd1.Groups.AddDef("部门")
bd1.Groups.AddDef("成本类别")
bd1.Totals.AddDef("费用_本月")
bd1.Totals.AddDef("费用_累计")
dt1 = bd1.BuildDataSource()
Dim bd2 As New GroupTableBuilder("统计表2",DataTables("利润表附表"))
Dim dt2 As fxDataSource
bd2.Groups.AddDef("日期",DateGroupEnum.None)
bd2.Groups.AddDef("部门")
bd2.Totals.AddDef("主营业务收入_本月")
bd2.Totals.AddDef("主营业务收入_累计")
dt2 = bd2.BuildDataSource()
Dim nms As String() = {"日期","部门"}
dt1.Combine(nms,dt2,nms)
dt1.Show("统计表1") '显示统计结果
Dim t As Table = Tables("统计表1")
t.DataTable.DataCols.Add("费用率_本月",Gettype(Double))
t.DataTable.DataCols.Add("费用率_累计",Gettype(Double))
Dim n1,n2 As Double
For Each r As Row In t.Rows
If r.IsNull("主营业务收入_本月") = False Then
n1 = r("主营业务收入_本月")
n2 = r("主营业务收入_累计")
End If
r("费用率_本月") = r("费用_本月") / n1
r("费用率_累计") = r("费用_累计") / n2
Next
t.DataTable.DataCols("费用率_本月").SetFormat("0.00%")
t.DataTable.DataCols("费用率_累计").SetFormat("0.00%")