2012-07-11 168 views

回答

0

我不知道,但嘗試這個辦法:

<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」的位置。

1

最後我已經做到了。

實際上數據源不在子報表中。所以我已經改變了沒有數據的財產,所有部分,沒有數據...

然後,我已經通過收集變量,我已經提取子報表記錄。

通過使用parameters.put("shape_data_all", allShape_Caliberation);

然後,我已經創建了主報告的參數。並將其班級更改爲java.Util.Collection

然後,在子報表屬性,connection type=使用DataSource表達

數據源表達new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($P{shape_data_all})

然後在子報表相同我有bean屬性添加的字段。

謝謝。