Foxtable(狐表)用户栏目专家坐堂 → [求助] 水平汇总不同产品的数量


  共有1680人关注过本帖树形打印复制链接

主题:[求助] 水平汇总不同产品的数量

帅哥哟,离线,有人找我吗?
zcgmxf
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1629 积分:14396 威望:0 精华:0 注册:2014/6/6 8:42:00
[求助] 水平汇总不同产品的数量  发帖心情 Post By:2018/5/26 8:29:00 [只看该作者]

老师,如何在下面代码中增加最后水平汇总的代码。谢谢!

交叉统计的形式,统计每个客户订购不同产品的数量:

Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("客户", Gettype(String), 16)

Dim
prds As List(of String) = DataTables("订单").GetValues("产品")
For Each
prd As String In prds
    dtb.AddDef(prd, Gettype(Double
))
Next

dtb.Build
()
For Each
cus As String In DataTables("订单").GetValues("客户")
    Dim
dr As DataRow = DataTables("统计").AddNew()
    dr("客户") = cus

    For
Each prd As String In prds
        dr(prd) = DataTables("订单").Compute("Sum(数量)","客户 = '" & cus & "' And [产品] = '" & prd & "'")

    Next
Next
MainTable= Tables(
"统计")

[此贴子已经被作者于2018/5/26 8:30:17编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106207 积分:540158 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/5/26 9:35:00 [只看该作者]

Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("客户", Gettype(String), 16)
Dim prds As List(of String) = DataTables("订单").GetValues("产品")
Dim str As String = ""
For Each prd As String In prds
    dtb.AddDef(prd, Gettype(Double))
    str = str & CExp(" + isnull({0},0)",prd)
Next
msgbox(str)
dtb.AddDef("合计", Gettype(Double), str.Trim("","+"))
dtb.Build()

 回到顶部