How to control the number of rows in a JasperRepor

2019-01-17 18:18发布

How do I set the number of rows to be displayed per page in a report using iReports. Ex: if i have 100 records, I wasnt to display 10 per page and then break. The default behavior is to cram all the records possible in the page.

2条回答
我想做一个坏孩纸
2楼-- · 2019-01-17 18:53

It depends on the page height you set.

查看更多
▲ chillily
3楼-- · 2019-01-17 18:55

Ok! Found a way to accomplish this!

  1. The rows are usually printed in the Details band.
  2. At the end of the details band, where you need a page break, add a pagebreak.
  3. In the pageBreak's properties, edit the printWhen Expression from the properties pane.
  4. The expression will be

new java.lang.Boolean((int)($V{REPORT_COUNT}.intValue())%10==0)

where 10 is the number of records per page.

This is how it is done in iReports. The jrxml equivalent for people directly editing the file is as below.

<break>
    <reportElement x="0" y="23" width="100" height="1">
        <printWhenExpression><![CDATA[new java.lang.Boolean((int)($V{REPORT_COUNT}.intValue())%10==0)]]></printWhenExpression>
    </reportElement>
</break>

Put this just after the <band> tag under <details> tag.

查看更多
登录 后发表回答