以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于窗口中的table的统计问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=118692)

--  作者:www111998
--  发布时间:2018/5/9 0:53:00
--  关于窗口中的table的统计问题
在窗口中建立了一个临时表,并给予赋值,用于统计,但是在合计汇总的时候遇到小麻烦,望老师指教!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目5.table


--  作者:www111998
--  发布时间:2018/5/9 0:55:00
--  
希望所有产品列下面都能汇总,
--  作者:有点甜
--  发布时间:2018/5/9 8:53:00
--  

g = new Subtotalgroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "*"
For Each cp As String In DataTables("产品").GetValues("产品")
    g.TotalOn &= cp & "_数量," & cp & "_金额,"
Next

g.TotalOn &= "当月_总数量,当月_总金额"

g.Caption = "总计"
rbb.SubtotalGroups.Add(g)


--  作者:y2287958
--  发布时间:2018/5/9 9:25:00
--  
楼主,全部代码换为以下代码吧,简单不累赘。

Dim bm As String = "统计表1"
Dim b As New SQLGroupTableBuilder(bm,"订单")
b.Groups.AddDef("客户姓名")
Dim lst As new List(of String)
lst.Add(Date.Today)
lst.AddRange(DataTables("产品").GetValues("产品"))
For Each ls As String In lst
    If ls = CStr(Date.Today)
        b.Totals.AddExp(ls & "_数量","iif(购买时间=#" & ls & "#,数量,0)")
        b.Totals.AddExp(ls & "_金额","iif(购买时间=#" & ls & "#,金额,0)")
    Else
        b.Totals.AddExp(ls & "_数量","iif(产品=\'" & ls & "\',数量,0)")
        b.Totals.AddExp(ls & "_金额","iif(产品=\'" & ls & "\',金额,0)")
    End If
Next
b.VerticalTotal = True
Tables("报表_table1").DataSource = b.Build(True)

--  作者:www111998
--  发布时间:2018/5/9 12:00:00
--  
学习了,就是统计这块没有学习好,思路比较短,不够灵活。