在fastreport报表中的统计问题,各位大侠们请帮帮忙
在页脚里面对一列是单位量求平均值,如果这个产品没有用这种材料的(相当于单位用量等于0)我们就不对他进行计算,如果有10个记录,可能就只有5个会有数据,其它的都为0,对这等于0的我们就不进行计算了。平均值等于10个记录的总和再除以5,公式是这样的[sum(<frxDBDataset1."dc_u">) / sum(IIF(<frxDBDataset1."dc_u"> >0,1,0))],为什么不会显示出结果来,是空白的,如果改成这样[sum(<frxDBDataset1."dc_ptu">)] / [sum(IIF(<frxDBDataset1."dc_ptu"> >0,1,0))]运行结果为:15/6,请各位高手指教 问题点数:20、回复次数:3Top
1 楼hqhhh(枫叶)回复于 2005-06-22 09:18:36 得分 10
你可以做一个隐蔽的附加字段[IIF(<frxDBDataset1."dc_u"> >0,1,0)]
然后再在页脚用
[sum(<frxDBDataset1."dc_ptu">) / sum(IIF(<frxDBDataset1."dc_ptu"> >0,1,0))]
试一下,不好意思,我没有调试Top
2 楼gongqs()回复于 2005-06-22 09:35:47 得分 0
hqhhh(枫叶) 谢谢你的回答,不过你的方法不是跟我的一样的吗,我就这样运行结果不正确。我上面的"dc_u"和"dc_ptu"其实是一个字段,[sum(<frxDBDataset1."dc_u">) / sum(IIF(<frxDBDataset1."dc_u"> >0,1,0))],为什么不会显示出结果来,是空白的,如果改成这样[sum(<frxDBDataset1."dc_u">)] / [sum(IIF(<frxDBDataset1."dc_u"> >0,1,0))]我的第一种方法不会显示结果,第二种方法,把合计和大平0记录的条数算出来了,就是不会去相除算出结果。Top
3 楼quicksand201(流沙)回复于 2005-06-22 10:40:12 得分 10
我学得
[sum(<frxDBDataset1."dc_u">) / sum(IIF(<frxDBDataset1."dc_u"> >0,1,0))]
应该改为
[sum(<frxDBDataset1."dc_u">) / count(IIF(<frxDBDataset1."dc_u"> >0,1,0))]Top




