我使用的是Jasper iReports 5.2.0,我希望在报告的奇数页面上打印一个列表,在偶数页面上打印静态文本。
为实现这一目标,我创建了一个报告,其中包含对包含100个连续行的列表的查询,并将其放在详细信息1 中,将我的静态文本放在详细信息2 中。< / p>
然后我补充说:
Print When Expression = $V{PAGE_NUMBER}%2 != 0
到列标题和明细1
和Print When Expression = $V{PAGE_NUMBER}%2 != 0
到详细信息2
并且还最大化了细节2带高度(没有这个我会松开更多行)
所有内容都显示在正确的页面中,但报告并未显示所有行。 我的意思是,如果我的查询返回100行,1-100
我应该怎么做才能在右页打印行?
答案 0 :(得分:0)
您应该执行以下操作:
创建2个细节带:
a)Detail1 - 对于静态偶数页面(!确保此细节带首先)。最大化它的大小 - 使用整个页面,将静态文本放在上面。在乐队
上设置PrintWhenExpression = $V{PAGE_NUMBER}%2 == 0
b)详情2 - 对于您的数据,不要在其上使用任何PrintWhenExpressions
工作原理:整页DetailBand1仅在偶数页面上显示,因为它占用整个页面,您的数据细节带(Detail2)被移动到偶数页面,因此一切都按预期工作,并且不会遗漏任何记录。