Dim bd1 As New GroupTableBuilder("统计表1",DataTables("进货单"))
Dim dt1 As fxDataSource
bd1.Groups.AddDef("型号") '根据型号分组
bd1.Totals.AddDef("数量","进货_数量") '对数量进行统计
bd1.Totals.AddDef("金额","进货_金额") '对金额进行统计
bd1.Filter = "名称 = '1'"
dt1 = bd1.BuildDataSource()
Dim jb2 As New SQLJoinTableBuilder("查询表1","销售单")
jb2.AddCols("型号",True)
jb2.AddExp("销售_数量","Sum({销售单}.数量)")
jb2.AddExp("销售_金额","Sum({销售单}.数量 * {销售单}.售价)")
jb2.Filter = "型号 in (select 型号 from {进货单} where 名称 = '1')"
‘’Output.Show(jb2.BuildSql())
Dim dt2 As fxDataSource = jb2.BuildDataSource()
Dim jb3 As New SQLJoinTableBuilder("查询表1","退货单")
jb3.AddCols("{退货单}.型号",True)
jb3.AddExp("退货_数量","Sum({退货单}.数量)")
jb3.AddExp("退货_金额","Sum({退货单}.数量 * {退货单}.单价)")
jb3.Filter = "型号 in (select 型号 from {进货单} where 名称 = '1')"
‘’Output.Show(jb3.BuildSql())
Dim dt3 As fxDataSource = jb3.BuildDataSource()
dt1.Combine("型号",dt2,"型号") '将销售统计数据组合到进货统计数据
dt1.Combine("型号",dt3,"型号")
dt1.show("查询表1")