我遇到了Jasper Sub Reports的问题。我有一个包含子报表的报表模板;在主报告中,我有一些参数也应该在子报表中可用。
主要报告参数是:
<parameter name="mainParameter" class="java.lang.Object"/>
子报告报告参数是:
<parameter name="mainParameter" class="java.lang.Object"/>
我提供了子报告的主报告参数,如下所示:
<subreport isUsingCache="false">
<reportElement x="0" y="1450" width="200" height="50" isRemoveLineWhenBlank="true"/>
<subreportParameter name="mainParameter">
<subreportParameterExpression><![CDATA[$P{mainParameter}]]></subreportParameterExpression>
</subreportParameter>
<subreportExpression class="java.lang.String"><![CDATA["subReport.jasper"]]></subreportExpression>
</subreport>
JRXML都正确编译,没有问题。但我无法在生成的pdf文件中获取Sub报告数据。
答案 0 :(得分:0)
要确保子报告正确运行/生成,请查看主报告中的连接是否已传递到子报告。此外,主报告中使用的参数在子报告中的名称和大小写应相同,否则映射将失败。
还请检查主报告中子报告的相对和绝对路径。可能发生了这样的情况:您为子报告提供的路径正在解析为不存在.jrxml / .jasper文件的路径,因此未生成子报告。这是一个非常常见的错误。