作为评论中的建议,尝试了一下,并为我工作:
我正在用jasper开发报告。
主报告有几个子报告。
这些子报表中只有一个具有带注释编号的固定文本,类似这样。
my text<sup>(2)</sup>
在主报告中,我必须打印脚注,但只能在所有带有注释文本的页面中打印。
更好解释的图像:
。在主报告“ subReportCount”中创建变量类型=整数,默认0重置类型='页面'
。将此变量(隐藏)放置在Subreport之后。
。在subreport中创建变量'SubVar',表达式== $ V {REPORT_COUNT}
。在主菜单中,转到子报表属性->编辑返回值->设置从变量= SubVar,到变量= subReportCount,计算类型=总和
。表达式= $ V {subReportCount}> 0]时的页面页脚打印
如果尝试在页面上至少打印一次子报表,这可能会起作用。
作为评论中的建议,尝试了一下,并为我工作:
<variable name="MY_VAR" class="java.lang.Integer" resetType="Page">
<initialValueExpression><![CDATA[0]]></initialValueExpression>
</variable>
...
<subreport>
<>...</>
<returnValue subreportVariable="REPORT_COUNT" toVariable="MY_VAR"/>
<>...</>
</subreport>
...
<textField>
<>...</>
<reportElement stretchType="RelativeToTallestObject" x="4" y="2" width="548" height="55" uuid="bbe4cbeb-3ba4-4023-93a9-a533ee772713">
<printWhenExpression><![CDATA[$V{MY_VAR} > 0 ? new Boolean(true) : new Boolean(false)]]></printWhenExpression>
</reportElement>
<>...</>
<textFieldExpression><![CDATA["<sup>(2)</sup> ..."]]></textFieldExpression>
<>...</>
</textField>
作为评论中的建议,尝试了一下,并为我工作: