Foxtable(狐表)用户栏目专家坐堂 → [求助]交叉统计问题


  共有4081人关注过本帖平板打印复制链接

主题:[求助]交叉统计问题

美女呀,离线,留言给我吧!
cherryjing
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:150 积分:1127 威望:0 精华:0 注册:2014/5/20 12:22:00
[求助]交叉统计问题  发帖心情 Post By:2022/12/4 21:54:00 [只看该作者]

原本用CrossTableBuilder代码如下:
Dim g As New CrossTableBuilder("交叉统计表1", DataTables("设备材料表"))
If rdoUnit1.Checked Then
    g.HGroups.AddDef("主项编号")
    g.VGroups.AddDef("专业", "{0}_金额")
Else
    g.HGroups.AddDef("专业")
    g.VGroups.AddDef("主项编号", "{0}_金额")
End If

g.Totals.AddDef("金额", "金额")
g.HorizontalTotal = True
g.VerticalTotal = True
g.HorizontalProportion = True
g.Build()
Tables("Form_Stastistics_tbl_Stastistics").DataSource = g.BuildDataSource()

运行正常,但我为了将主项编号变为主项名称,修改代码如下:

Dim b As New SQLCrossTableBuilder("交叉统计表1", "设备材料表") 
'b.C
b.AddTable("设备材料表", "主项编号", "主项表", "主项编号") '添加统计表
If rdoUnit1.Checked Then
    b.HGroups.AddDef("主项名称") '添加主项名称列用于水平分组
    b.VGroups.AddDef("专业", "{0}_金额") '添加专业列用于垂直分组,并设置了Pattern参数
Else
    b.HGroups.AddDef("专业") '添加专业列用于水平分组
    b.VGroups.AddDef("主项名称", "{0}_金额") '添加主项名称列用于垂直分组,并设置了Pattern参数
End If

b.Totals.AddDef("金额", "金额") '添加数量列用于统计
b.HorizontalTotal = True
b.VerticalTotal = True
b.HorizontalProportion = True
b.Build '生成统计表
Tables("Form_Stastistics_tbl_Stastistics").DataSource = b.BuildDataSource()

运行错误:
统计错误,错误原因:在查询定义的SELECT列表中,别名‘金额’循环引用

 回到顶部