如何让JasperReports小组仅在需要时才在新页面上开始?

时间:2010-07-11 11:30:12

标签: jasper-reports grouping ireport

我正在使用JasperReports和iReport(输出到PDF),我对某个报告有疑问:

在报告中我定义了一个组。平均而言,该组的每个“实例”仅包含少量细节行,因此我不希望它们中的每一个都在新页面上开始,因为这会浪费纸张(输出打印在纸上) )。

但另一方面,我不希望有一个组在一个页面上开始而在下一个页面上结束。例如,如果在第1页上我可以适应前两组和第三组的一半,我希望整个第三组从第2页开始,依此类推。

有没有办法做到这一点?

4 个答案:

答案 0 :(得分:12)

“group”属性keepTogether和isStartNewPage将解决您的问题并将组结果放在一起,并始终从新页面启动新组。

<group name="CITY" isStartNewPage="true" keepTogether="true">
  <groupExpression><![CDATA[$F{CITY}]]></groupExpression>
   <groupHeader>
    ...
  </groupHeader>
</group>

答案 1 :(得分:7)

<group>属性keepTogether完全符合您的要求!它是在Jasper 3.6.2周围添加的,见this discussion

所以:

<group name="CITY" keepTogether="true">
  <groupExpression><![CDATA[$F{CITY}]]></groupExpression>
  <groupHeader>
  ...
  </groupHeader>
</group>

答案 2 :(得分:1)

右键单击细节带并添加另一个细节带。您可以使用这些详细的区块对您的页面进行分组。

为每个波段添加足够的高度,使其不会在新页面上重叠

答案 3 :(得分:0)

要在Table组件的新页面中显示组数据,我们需要设置以下属性。

  1. 在群组名称右侧 - &gt;高级属性 - &gt;选择新页面为true。
  2. 观察输出,组数据显示在新页面中。
  3. 此致

    哈里什