在水晶报表中,分组后,有些数据的字段是重复的,只显示一个就行了,那如何来解决这个问题呢?
其实这个不是很难,关键是你要想清楚你要的效果,基本思路是:用一个公式字段来记录每一组的记录数量,再用一个字段记录当前记录序号,比较两个的值,并对第一列字段进行显示抑制! 以下以示例逐步说明其设计过程:
1,下图是我的一个表,在进行此项设计前,样式如下(注意第一列的“类型”字段)
2,新建公式字段(formula Fields),命名aaa,输入公式:Count ({oi.type2}, {oi.type1}), 此公式的意思是,我们以{oi.type1}字段为计数条件,来对{oi.type2}字段进行计数。其实我们可以任选一个字段进行记录条数的统计;
3,新建运行总计字段(Running Total Fields),也命名aaa,汇总字段选{oi.type1},汇总类型选计数,重置中选“组更改时”,其中的组名就取默认即可;
4,右键点击详细资料节里的第一列字段--->格式化,勾选抑制显示,并输入公式:
if {@aaa} mod 2 = 0 then
if ({#aaa} = Round({@aaa}/2)+1) then false else true
else if ({#aaa} = Round({@aaa}/2)) then false else true
注:@aaa刚才建立的公式字段,#aaa则是刚才建立的运行总计字段
5,再运行看看效果,是不是出来了!
当然还有种情况就是在分组后抑制重复显示数据
以字段A分组,再以字段B分组,显示字段放在字段B分组中
例如 字段A,字段B,字段C,字段D
A1 B1 C1 D1
A1 B1 C2 D2
A1 B2 C3 D3
A1 B2 C4 D4
在公式字段中命名为aa Count ({字段A}, {字段A}),
2,新建公式字段(formula Fields),命名bb,输入公式:Count ({字段A}, {字段A}), 此公式的意思是,我们以{字段A}字段为计数条件,来对{字段A}字段进行计数。其实我们可以任选一个字段进行记录条数的统计;
3,新建运行总计字段(Running Total Fields),也命名aaa,汇总字段选{字段A},汇总类型选计数,重置中选“组更改时”,其中的组名就取默认即可;
4,右键点击详细资料节里的第一列字段--->格式化,勾选抑制显示,并输入公式:
{#bb}>1
得到结果如下
字段A,字段B,字段C,字段D
A1 B1 C1 D1
C2 D2
B2 C3 D3
C4 D4
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xwdd129/archive/2007/08/03/1724872.aspx