以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  统计表出错  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=111361)

--  作者:aza520
--  发布时间:2017/12/20 16:38:00
--  统计表出错
当用户为“乡镇”时可以生成正确的统计表,其它用户时总是多生成一行多余的。如图,请问老师是什么问题

Dim b As New SQLGroupTableBuilder("征地统计表","S征地明细")
b.Groups.AddDef("项目名称") \'根据产品分组
b.Groups.AddDef("县区") \'根据产品分组
b.Groups.AddDef("乡镇") \'根据产品分组
b.Totals.AddExp("征地_已支付征地数量(亩)","iif(支付日期 Is null,0,征地数量)") \'对数量进行统计
b.Totals.AddExp("征地_未支付征地数量(亩)","iif(支付日期 Is null,征地数量,0)") \'对数量进行统计
If User.Name = "开发者" Or User.Name = "管理员" Then
    b.Filter = ""
Else
    b.Filter ="乡镇 = \'" & User.Name & "\' or 县区 = \'" & User.Name & "\' or 项目名称 = \'" & User.Name & "\'"
End If
b.VerticalTotal=True
b.Build \'生成统计表
Tables("征地统计表").SetHeaderRowHeight(20,40)
MainTable = Tables("征地统计表") \'打开生成的统计表


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20171220163533.png
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2017/12/20 16:58:00
--  

你说的多余的是哪一行?合计?那就把下面的去掉

 

b.VerticalTotal=True

 

如果是第一行,怎么可以说是多余?你表格本身就有那一行吧?


--  作者:aza520
--  发布时间:2017/12/20 17:04:00
--  
第一行是多余的,没有列出乡镇名字,仔细检查过,其它数量都对了,就是多出这个
--  作者:有点甜
--  发布时间:2017/12/20 17:19:00
--  
以下是引用aza520在2017/12/20 17:04:00的发言:
第一行是多余的,没有列出乡镇名字,仔细检查过,其它数量都对了,就是多出这个

 

执行下面代码,把所有数据加载出来看看吧。你肯定有空白的数据。

 

Systemready = False
DataTables("S征地明细").loadfilter = ""
DataTables("S征地明细").loadTop = ""
DataTables("S征地明细").loadpage = 0
DataTables("S征地明细").load
Systemready = True


--  作者:aza520
--  发布时间:2017/12/20 17:30:00
--  
找到了,多谢老师