水晶报表:为每个人打印第一条非空白记录

时间:2020-09-10 12:17:29

标签: crystal-reports suppress

该报告按全名对记录进行分组。我希望能够使用非空白的描述字段显示每个组中的第一条记录。如果所有记录的描述都为空白,则应显示最后一条记录。

因此,如果未记录任何评论,则应显示的是最新评论或空白。 目前,我在报告中添加了以下代码:

详细信息-禁止显示(不深入查看)

shared numbervar count;
if count=1 then false else true

标题

shared numbervar count;
count:=0;

详细信息

shared numbervar count;
count:=count+1;

这将只显示第一条记录,无论内容如何。我需要添加代码来抑制记录直到找到非空白,或者如果找不到记录,则显示最后一条记录。

1 个答案:

答案 0 :(得分:0)

使用NULL值抑制记录可能不适用于您计算详细记录的方法。原因是被抑制的记录仍将由您的公式计算,这将导致第一个记录被抑制为NULL,然后所有的记录将被抑制,因为count变量的值会更大比1。

我建议您在“选择专家”中修改选择条件,以便不选择包含NULL值的记录,并且没有机会成为数据集中每组的第一条记录。尝试以下公式。

Not IsNull([TABLE.COLUMN])

[TABLE.COLUMN]是数据集中可能包含NULL值的列。如果这样不起作用,则可能还需要过滤掉空字符串值和NULL值。为此,您可以像这样修改公式。

Not IsNull([TABLE.COLUMN]) or [TABLE.COLUMN] = ""
相关问题