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

Tau*_*han 4 crystal-reports crystal-reports-2008

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

Formaula pagenumber = totalpagecount将无法正常工作,因为它总是会抑制最后一页的标题.

pau*_*kow 15

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

WhilePrintingRecords;
Global BooleanVar finished;
finished := OnLastRecord
Run Code Online (Sandbox Code Playgroud)

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

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

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