当没有下面的记录时,抑制组头

时间:2017-06-20 17:32:23

标签: crystal-reports

如果此页面中的组标题没有记录,是否可以在第3/8页中禁止组标题。

Crystal Report

3 个答案:

答案 0 :(得分:1)

尝试群组专家/选项/选项标签,然后选中将群组保持在一起。如果这不起作用,我会添加一个计数公式来计算该组中的记录,如果该计数为零则抑制组。

答案 1 :(得分:1)

我找到了一个介绍如何防止孤立标头的指南。看看it的方法2。

这个想法是你设置了一个组头,它作为一个细节部分,但仅限于每个组的第一行。首先,详细信息部分将被删除。

  1. 为您的论坛B添加一个额外的组头。现在您有一个标题B1(您的旧标题)和B2(新标题)。
  2. 格式化B2,如您的详细信息部分,复制所有字段等。
  3. 在专家部分中,选择所有B标题的条目(不是B1或B2)。勾选Keep together
  4. 使用以下内容将您的公式添加到详细信息部分的Suppress框中(将{database.field}替换为您要分组的字段):

    WhilePrintingRecords;
    Onfirstrecord or {database.field} <> Previous({database.field})
    

答案 2 :(得分:1)

这里解决了这个问题,但您必须调整其他内容以保持每个页面的组头重复。

主要思想是将组标题模拟为详细信息部分,并仅将其与组的第一条记录一起显示。

一步一步:

  1. 创建一个运行总计字段来计算组中的记录:要汇总的字段=任意,汇总类型=计数,评估每条记录,重置组的更改。我们假设这个公式的名称是{#RTotal0}。
  2. 取消群组标题。
  3. 在当前详细信息部分上方创建另一个详细信息部分。所以,你将拥有&#34;详细信息&#34;和&#34;详细信息b&#34;。部分&#34;详情a&#34;将模拟组头。
  4. 打开专家部分,选择&#34;详细信息&#34;部分,打开选项&#34;抑制&#34;的公式编辑器,然后输入以下公式:{#RTotal0} > 1。这意味着此部分仅显示该组的第一条记录。
  5. 打开专家部分,选择&#34;详细信息&#34; (&#34;的详细信息&#34;以及&#34;详细信息b&#34;)并选中&#34;保持在一起&#34;。
  6. 这将解决您的问题。但是知道每个页面都不会重复组头。一种方法:

    1. 打开组标题选项的部分专家,打开选项&#34;抑制&#34;的公式编辑器,输入公式:{#RTotal0} = 1。这意味着组头将初始化,但在分页后,它将显示(如果您将组设置为打印每个页面的组头)。
    2. 但您可能需要针对您的情况进行调整。