主报表包含具有饼图的表和子报表。问题是子报表是空的。我的问题是如何将JRBeanCollectionDataSource从主报表传递到子报表以及子报表如何使用JRBeanCollectionDataSource?
主要报告
<parameter name="statisDatasource" class="java.util.Collection"/>
<subreport>
<reportElement x="164" y="206" width="200" height="100" />
<dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($P{statisDatasource})]]></dataSourceExpression>
<subreportExpression><![CDATA[this.getClass().getResourceAsStream($P{SUBREPORT_DIR} + "empTasks_subreport1.jasper")]]></subreportExpression>
</subreport>
子报告
<field name="subjectName" class="java.lang.String"/>
<field name="marks" class="java.lang.Integer"/>
<detail>
<band height="125" splitType="Stretch">
<pie3DChart>
<chart>
<reportElement x="122" y="0" width="330" height="125" />
<chartTitle/>
<chartSubtitle/>
<chartLegend/>
</chart>
<pieDataset>
<keyExpression><![CDATA[$F{subjectName}]]></keyExpression>
<valueExpression><![CDATA[$F{marks}]]></valueExpression>
</pieDataset>
<pie3DPlot>
<plot/>
<itemLabel/>
</pie3DPlot>
</pie3DChart>
</band>
</detail>