繁体   English   中英

Crystal Reports - 如果页面上没有记录,则隐藏页眉

[英]Crystal Reports - Hide page header if there in no record on a page

如果最后一页没有记录(详细信息部分),如何隐藏页眉。 如果最后一页上有一些数据,则必须在最后一页显示页眉,否则隐藏页眉。

Formaula pagenumber = totalpagecount将不起作用,因为它将始终抑制最后一页的标题。

将此公式放在详细信息部分的禁止字段中:

WhilePrintingRecords;
Global BooleanVar finished;
finished := OnLastRecord

并将其作为页眉中的Suppress公式:

Global BooleanVar finished
  • finished初始化之前,将显示页眉。
  • 打印详细记录后,它将被设置为false
  • 当您最终到达最后一个细节部分时, finished设置为true
  • 如果您碰巧到达另一个页面标题,则finished仍然为true ,并且Crystal将禁止标题。

这是一个有趣的问题。 我以前遇到过这种行为,但从未试图解决它。 我认为你需要使用一个变量,因为在页面标题中,像Next()OnLastRecord这样的常用选项无法区分还有一个要打印的记录和没有更多要打印的记录。 我认为运行总计会有同样的问题 - 在打印一条记录的页面上的值和在没有要打印的记录的页面上的值相同。

我找到了更好的,并且解决了这个问题的答案(只是稍微调整了Noa的代码):

WhilePrintingRecords;
Global BooleanVar finished;
finished := OnLastRecord AND NOT OnFirstRecord

它的工作原理,即使细节只包含一行。

您可以调整Crystal Reports:当报表没有数据满足您的需求时显示消息

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM