我想做的似乎很简单。
我有一个包含子报表元素的主报表。子报表由 a 填充JRAbstractBeanDataSource
,其中包含 0-n 个子报表的集合。
在主报告中,可以找到子报告:
<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR} + $F{subReportFileName}]]></subreportExpression>
这工作正常,SUBREPORT_DIR 作为参数传递给代码中的数据源。
不过,我需要做的是根据子报表属性选择不同的报表名称,例如:
<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR} + "$F{subReportFileName}"]]></subreportExpression>
也就是说,允许数据源上的子报表数据集合中的每个项目指定.jasper
文件名(即,允许它选择要使用的子报表)。
也许有更好的方法来思考/解决这个问题。