【发布时间】:2016-03-23 16:48:46
【问题描述】:
我有一个“父”jrxml,我们称之为“类”,看起来像这样:
<band height="100" splitType="Prevent">
<textField isStretchWithOverflow="true">
<textField isStretchWithOverflow="true">
<subreport>
<subreportExpression>
<![CDATA["student.jasper"]]>
</subreportExpression>
有 n 个子报表,每个“学生”一个。 “学生”子报告只是一些文本字段。
<band height="35">
<textField isStretchWithOverflow="true">
<textFieldExpression>
<![CDATA[$F{first_name}]]>
</textFieldExpression>
</textField>
<textField isStretchWithOverflow="true">
<textFieldExpression>
<![CDATA[$F{last_name}]]>
</textFieldExpression>
</textField>
如果内容不完全适合一列,我想做的是在列底部打印“此类继续在下一列/页中”消息。
JasperReports 可以做到这一点吗?
【问题讨论】:
-
感谢该链接,它对我帮助很大。但它并不适用于所有情况。许多列底部发生的事情(我使用的是 3 列报告)是,如果 next 类不适合剩余的空间,它会从下一列开始,但是,因为我在每个类的页脚子报表中都有“...继续”,它在列底部打印“...继续”。使当前的 Class 看起来在下一列中继续,但实际上它是下一个 Class。不确定在这种情况下是否有办法告诉 Jasper 不打印页脚 ...
-
没有minimal reproducible example 很难说,但是 printWhenExpression??
-
好吧,我真的不能提供一个例子,因为报告本身使用了我无法公开的自定义 Java 对象(包装器)。可以说解决方案不起作用。我需要的是子报表级别的
,它仅在当前子报表的内容溢出到下一列/页面时显示。我已经尝试过 、 和 ,但似乎没有一个能够做到这一点。我也找不到可以提供帮助的 ; api 中没有任何内容可以告诉您内容是否会溢出。不过谢谢你的帮助。 -
你不能用一些cvs数据做一个简单的例子吗?把它去掉一些cvs中的数据和一个简单的jrxml。我不知道它是否可以解决,但至少社区可以完全理解您的问题并尝试找到解决方案。
标签: jasper-reports