如何限制jasper报告不在每个组的新页面上显示?

时间:2019-04-19 11:30:07

标签: jasper-reports grouping

我是Jasper Reports的新手。在我的项目中,使用的版本是Jasper Reports 3.1.2。 问题是:我有一个主报告,其中显示摘要和2个其他子报告。数据根据2个字段进行分组,并且数据来自后端(已经分组)。在我的碧玉报告中,我设置了以下组和以下属性:

<group name="groupName" isStartNewPage="true" isResetPageNumber="true" isReprintHeaderOnEachPage="true" >
        <groupExpression><![CDATA[$V{REPORT_COUNT}]]></groupExpression>
        <groupHeader>
        <band height="0"  isSplitAllowed="true" >
        </band>
        </groupHeader>
        <groupFooter>
        <band height="0"  isSplitAllowed="true" >
        </band>
        </groupFooter>
    </group>

每当看到一个新组时,它都会在新页面上打印数据。 我希望当前页上有足够的空间容纳其他组数据时,不要在新页上打印数据。

我已经尝试删除“ isStartNewPage”属性。另外,尝试放置“ keepTogether”属性,但是由于它是Jasper报表的旧版本,因此不支持此属性。 我也尝试过更改高度值,但是那里没有运气。

当有足够的空间在单个页面上显示记录时,我想将数据保留在一页上。

输出: 第一页显示摘要数据和将数据分组的2个组。 第二页显示了第一组的数据,它是第一组的子报告。 同样,第三页中的摘要中将包含与第二组有关的数据。

碧玉报告第1页

enter image description here

碧玉报告第2页

enter image description here

1 个答案:

答案 0 :(得分:0)

该组通过isStartNewPage="true"属性在新页面上打印数据。当前页上有足够的空间时,请删除此属性行以在当前页上打印数据。

尝试一下,

<group name="groupName" isResetPageNumber="true" isReprintHeaderOnEachPage="true" >
    .......
</group>