以下是引用rongping在2018/11/6 13:47:00的发言:
为什么我再继续添加颜色和其它数据时,统计出来的结果不对呢?
代码改成下面
DataTables("表A").save
Dim jb As New SQLJoinTableBuilder("查询表1","表A")
jb.AddExp("排序","1")
jb.AddExp("项目名称","颜色")
jb.AddCols("单价","数量","折扣")
jb.AddExp("金额","单价*数量*折扣")
jb.AddExp("备注","''")
Dim jb1 As New SQLJoinTableBuilder("查询表1","表A")
jb1.AddExp("排序","2")
jb1.AddExp("项目名称","添加剂")
jb1.AddCols("添加剂价格","添加剂数量")
jb1.AddExp("折扣","1")
jb1.AddExp("金额","添加剂价格*添加剂数量")
jb1.AddExp("备注","''")
Dim jb2 As New SQLJoinTableBuilder("查询表1","表A")
jb2.AddExp("排序","3")
jb2.AddExp("项目名称","合成剂")
jb2.AddCols("合成剂价格","合成剂数量")
jb2.AddExp("折扣","1")
jb2.AddExp("金额","合成剂价格*合成剂数量")
jb2.AddExp("备注","''")
jb.Union(jb1,True)
jb.Union(jb2,True)
jb.Build()
'Dim dr As DataRow = DataTables("查询表1").AddNew
'dr("项目名称") = "总计"
'dr("金额") = DataTables("查询表1").Compute("Sum(金额)")
Tables("查询表1").Cols.Remove("排序")
Tables("查询表1").AutoSizeCols
MainTable = Tables("查询表1")
Dim t As Table = Tables("查询表1")
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)
g = New Subtotalgroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "*"
g.TotalOn = "金额"
g.Caption = "总计"
t.SubtotalGroups.Add(g)
t.Subtotal()