Jasper报告子页面在新页面上

时间:2012-12-14 14:52:02

标签: jasper-reports

我有一个由6个子报告组成的jasper报告。这些子报表中的每一个都有自己的标题部分。现在我需要在新页面上开始每个报告。我尝试添加分页符,但它对我不起作用。

在研究问题的过程中,我想到了将isTitleNewPage设置为true的技巧 http://www.dzone.com/snippets/jasperreports-subreport-new。所以我将属性isTitleNewPage="true"添加到所有子报表中,但现在子报表的标题仍保留在上一页上,该子报表的详细信息和摘要显示在新页面上。

我该如何解决这个问题?

6 个答案:

答案 0 :(得分:0)

我遇到了与上一页标题相同的问题。

但我有一个解决方案:

  • 将标题中的内容放入“页眉”乐队
  • set isTitleNewPage =“true”
  • 将一个Integer变量添加到子报表中,初始值为0
  • inkrement type“page”
  • 表达式$ V {vari} + 1
  • 当页眉的表达式为$ V {vari} == 0 时,
  • 打印

现在你在新页面上有你的标题,但只有一次。

答案 1 :(得分:0)

我对此问题的解决方案是将每个子报表添加到单独的“详细信息带”中,然后将波段高度设置为最大可能值(右键单击“详细信息X波段”=>“最大化波段高度”) 。在乐队之间可以打印一些空白页面,但在我的情况下这不是一个大问题。

答案 2 :(得分:0)

在初始标签中:

<jasperReport

放:

isTitleNewPage="true"

isTitleNewPage

答案 3 :(得分:0)

最简单的解决方案是在子报表标记中将runToBottom标记设置为true

<subreport runToBottom="true">

这会强制子报表填充整个页面,因此下一个子报表将在新页面上开始。

标记isTitleNewPage不会起作用,因为就像你注意到的那样,它会将子报表的标题带与剩余的子报表内容分开(除非你使用空白的标题带)。

答案 4 :(得分:-1)

为每个子报告添加一个详细信息带,然后转到子报告属性,然后在新页面的标题上打勾。

答案 5 :(得分:-1)

我通过在每个子报表的开头放置一个分页符来解决它,就在标题标签之前,并在每个分页符的“打印时表达式”属性上设置了“新布尔值(true)”。