我有一個jrxml文件,並希望添加一個子報表表達式。但是我只有myFile.jrxml,並且不能傳遞一個jasper文件。是否有可能將我的jrxml文件編譯爲不是使用java代碼的jasper文件,而是使用當前的jrxml文件?如果可能的話,如何做到這一點?從jrxml文件中編譯jrxml的jasper文件?可能嗎?
<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR}+"/myFile.jasper"]]></subreportExpression>
我嘗試:
<subreport isUsingCache="true">
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression class="net.sf.jasperreports.engine.JasperReport"><![CDATA[net.sf.jasperreports.engine.JasperCompileManager.compileReport(net.sf.jasperreports.engine.xml.JRXmlLoader.load($P{SUBREPORT_DIR} + "myFile.jrxml"))]]></subreportExpression>
</subreport>
但是發生錯誤: 嚴重:錯誤評估表達式: 源文本:net.sf.jasperreports.engine.JasperCompileManager.compileReport(net.sf.jasperreports .engine.xml.JRXmlLoader.load($ P {SUBREPORT_DIR} +「myFile.jrxml」))
因爲我應該從父級jrxml傳遞一些參數。 – 2011-02-16 18:28:38
您可以將參數傳遞給jasper文件,您不必將參數傳遞給jrxml然後編譯。只需將你的參數傳給碧玉,你應該沒問題。 – Sean 2011-02-16 18:42:26