Foxtable(狐表)用户栏目专家坐堂 → 如何动态增加列并按要求统计?


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

主题:如何动态增加列并按要求统计?

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


加好友 发短信
等级:八尾狐 帖子:1812 积分:12993 威望:0 精华:14 注册:2008/10/11 18:07:00
  发帖心情 Post By:2013/5/12 23:47:00 [显示全部帖子]

Dim dt1,dt2,dt3 As fxDataSource
Dim dts As fxDataSource() ={dt1,dt2,dt3}
Dim v1 As String() ={"收款","应收","开piao"}
Dim g As  CrossTableBuilder
Dim n1 As Integer
Dim s1,s2,SQL As String
s2 =" Union All Select 项目名称,金额 From{@}"

For Each s1  In v1
    g = New CrossTableBuilder("统计", DataTables(s1))
    g.HGroups.AddDef("项目名称")
    g.VGroups.AddDef("日期", DateGroupEnum.Year, s1 & "_{0}年")
    g.VGroups.AddDef("日期", "{0}月")
    g.Totals.AddDef("金额", "金额")
    g.HorizontalTotal = True
    dts(n1) = g.BuildDataSource()
    SQL+ = s2.replace("@",s1)
    n1=n1+1
Next

Dim g1 As New GroupTableBuilder("统计",SQL.Substring(11),"")
g1.Groups.AddDef("项目名称")
g1.Totals.AddDef("金额","总计")
dt1 = g1.BuildDataSource()

Dim nns As String = "项目名称"
dts(0).Combine(nns,dts(1),nns)
dts(0).Combine(nns,dts(2),nns)
dts(0).Combine(nns,dt1,nns)
Dim t1 As Table = Tables("窗口2_table1")
t1.DataSource =dts(0)
With t1.DataTable
    .DataCols("合计").Caption = "收款_小计"
    .DataCols("合计1").Caption = "应收_小计"
    .DataCols("合计2").Caption = "开piao_小计"
    .BuildHeader()
End With

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


加好友 发短信
等级:八尾狐 帖子:1812 积分:12993 威望:0 精华:14 注册:2008/10/11 18:07:00
  发帖心情 Post By:2013/5/13 11:23:00 [显示全部帖子]

如你採用外部數據源,需要指出數據源,這應該不用人家幫你的,否則還是認真看幾次幫助,弄清原理才是王道!
Dim g1 As New GroupTableBuilder("统计",SQL.Substring(11),"")     

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


加好友 发短信
等级:八尾狐 帖子:1812 积分:12993 威望:0 精华:14 注册:2008/10/11 18:07:00
  发帖心情 Post By:2013/5/14 22:14:00 [显示全部帖子]

一沒例子,二無前因,無語...

 回到顶部