【发布时间】:2017-02-13 18:26:37
【问题描述】:
我在试图弄清楚如何从 java 代码中将参数传递给 jasperreports 中的子子报表时遇到了严重的问题。
我所说的层次结构如下所示:
主报告
-------------> subReport
---------------> subSubReport
到目前为止,我尝试将 subSubReport 中所需的参数传递给 mainReport 并从那里将其传递给 subReport 并从subSubReport 那里,但这不起作用。事实上,我确实得到了一个包含 mainReport 和 subReport 内容的 pdf 文件,但 subSubReport 的内容没有显示。这就是为什么我猜我的问题是我不应该将 subSubReport 的参数(更具体地说是 SUBREPORT_DIR)传递给 mainReport 而是传递给 subReport 这就是我不知道如何实现的。此外,网络上关于它的信息很少(且不完整)。
有人可以帮帮我吗?
mainReport代码
<subreport>
<reportElement key="" x="0" y="0" width="554" height="30" isRemoveLineWhenBlank="true" uuid="18ff5513-835d-4910-b39c-6d41252b4679"/>
<subreportParameter name="REPORT_CONNECTION">
<subreportParameterExpression><![CDATA[$P{REPORT_CONNECTION}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="REPORT_DATA_SOURCE">
<subreportParameterExpression><![CDATA[$P{REPORT_DATA_SOURCE}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="SUBREPORT_DIR">
<subreportParameterExpression><![CDATA[$P{SUBREPORT_DIR}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="SUBREPORT1LEVEL1">
<subreportParameterExpression><![CDATA[$P{SUBREPORT1LEVEL1}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression><![CDATA[$P{SUBREPORT1LEVEL1}]]></subreportExpression>
</subreport>
子报告代码
<subreport>
<reportElement x="50" y="10" width="457" height="40" uuid="4528914e-bb9a-4300-8173-14be2ff2db85"/>
<subreportParameter name="REPORT_CONNECTION">
<subreportParameterExpression><![CDATA[$P{REPORT_CONNECTION}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="REPORT_DATA_SOURCE">
<subreportParameterExpression><![CDATA[$P{REPORT_DATA_SOURCE}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="SUBREPORT_DIR">
<subreportParameterExpression><![CDATA[$P{SUBREPORT_DIR}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="SUBREPORT1LEVEL2">
<subreportParameterExpression><![CDATA[$P{SUBREPORT1LEVEL2}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression><![CDATA[$P{SUBREPORT1LEVEL2}]]></subreportExpression>
</subreport>
【问题讨论】:
标签: java jasper-reports subreport