Dim month As Integer = e.sender.text
Dim Year As Integer = Date.Today.Year
Dim day As Integer = Date.Today.day
Dim Fday As Date
Dim Lday As Date
If month = 1 Then
Fday = New Date(Year,1,1) '本一年的1月1日
Lday = New Date(Year,1,25) '本年的1月的25日
ElseIf month = 12 Then
Fday = New Date(Year,11,26) '上个月26日
Lday = New Date(Year,12,31) '本月的31日
Else
Dim Month1 As Integer = (Month - 1)
Fday = New Date(Year,Month1,26) '上个月26日&
Lday = New Date(Year,Month,25) '本月的25日
End If
Dim bd1 As New GroupTableBuilder("统计表1",DataTables("入库表"))
Dim dt1 As fxDataSource
bd1.Groups.AddDef("客户") '根据客户分组
bd1.Groups.AddDef("品名大类") '根据品名大类分组
bd1.Totals.AddDef("重量","收入_完工入库_本月产量") '对重量进行统计
bd1.Totals.AddDef("重量","收入_完工入库_累计",True)
bd1.filter = "入库类型 = '对外加工入库' And 入库日期 >= '" & fday & "' and 入库日期 <= '" & lday & "'"
bd1.fromserver = True
dt1 = bd1.BuildDataSource()
Dim bd2 As New GroupTableBuilder("统计表2",DataTables("出库表"))
Dim dt2 As fxDataSource
bd2.Groups.AddDef("客户") '根据客户分组
bd2.Groups.AddDef("品名大类") '根据品名大类分组
bd2.Totals.AddDef("重量","发出_成品交货_本月发出") '对重量进行统计
bd2.Totals.AddDef("重量","发出_成品交货_累计",True)
bd2.filter = "出库类型 = '对外加工出库' And 出库日期 >= '" & fday & "' and 出库日期 <= '" & lday & "'"
bd2.fromserver = True
dt2 = bd2.BuildDataSource()
Dim bd3 As New GroupTableBuilder("统计表3",DataTables("出库表"))
Dim dt3 As fxDataSource
bd3.Groups.AddDef("客户") '根据客户分组
bd3.Groups.AddDef("品名大类") '根据品名大类分组
bd3.Totals.AddDef("重量","发出_成品回修_本月发出") '对重量进行统计
bd3.Totals.AddDef("重量","发出_成品回修_累计",True)
bd3.filter = "入库类型 = '对外加工入库'and 出库类型 = '对外加工回修' And 出库日期 >= '" & fday & "' and 出库日期 <= '" & lday & "'"
bd3.fromserver = True
dt3 = bd3.BuildDataSource()
Dim nms As String() = {"客户","品名大类"}
dt1.Combine(nms,dt2,nms)
dt1.Combine(nms,dt3,nms)
Tables("统计窗口2_Table4").DataSource = dt1 '将统计结果绑定到Table
Dim t As Table = Tables("统计窗口2_Table4")
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 = "总计"
t.SubtotalGroups.Add(g)
t.autosizecols()
t.Subtotal()