Jasper reports 将JRBeancollection数据源传递给主报表和子报表

Jasper reports 将JRBeancollection数据源传递给主报表和子报表,jasper-reports,ireport,Jasper Reports,Ireport,我想将JRBeancollection数据传递到主报表,并从主报表传递到子报表。。我已将此子报告包含在主报告的摘要部分。。 请说明我想在ireport中执行的步骤,包括如何设置inbuld参数。我不确定,但请尝试以下操作: <subreport> <reportElement x="261" y="25" width="200" height="100"/> <dataSourceExpression><![CDATA[$P{REPORT

我想将JRBeancollection数据传递到主报表,并从主报表传递到子报表。。我已将此子报告包含在主报告的摘要部分。。
请说明我想在ireport中执行的步骤,包括如何设置inbuld参数。

我不确定,但请尝试以下操作:

<subreport>
    <reportElement x="261" y="25" width="200" height="100"/>
    <dataSourceExpression><![CDATA[$P{REPORT_DATA_SOURCE}]]></dataSourceExpression>
    <subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "subreport.jasper"]]></subreportExpression>
</subreport>


当然,您必须在报告中使用“subreportExpression”,这只是一个示例,对于您的问题来说,有用的一行是“dataSourceExpression”的位置。

最后我已经完成了

实际上,数据源并没有进入子报表。所以我改变了当所有部分都没有数据时的属性,没有数据

然后我传递了collection变量,在这里我获取了子报表记录

使用
parameters.put(“shape\u data\u all”,allShape\u calibration)

然后我在主报告中创建了一个参数。并将其类更改为
java.Util.Collection

然后在子报表属性中,
连接类型=
使用数据源表达式

数据源表达式
new net.sf.jasperreports.engine.Data.JRBeanCollectionDataSource($p{shape\u Data\u all})

然后在子报表中添加字段,与我使用bean属性时相同

多谢各位