【发布时间】:2010-04-02 01:55:01
【问题描述】:
我正在尝试启动我在 iReport 中创建的报告,其中包含一个主报告和一个子报告。在 iReport 中,子报表可以正常启动并包含数据,但是当我尝试从我的 java 代码中启动它时,子报表是空白的。
到目前为止我做了什么:
我在主报表中有一个名为“SUBREPORT”的字符串参数,用于定义子报表的路径。例如。值:“E:\java\ReportLauncher\reports\test_subreport1.jasper”
主报表中的子报表表达式设置为:$P{SUBREPORT}
子报表连接表达式为:$P{REPORT_CONNECTION}
我还定义了一个名为“INVOICE_NUMBER”的子报表参数,该参数设置为 $F{InviInvNo},它映射到主报表中的一个字段。
在我的 java 代码中,我有:
HashMap<String, Object> paramHash = new HashMap();
paramHash.put("INVOICE_NUMBER", invoiceID);
paramHash.put("REPORT_CONNECTION", this.conn);
paramHash.put("SUBREPORT", subReportPath);
JasperPrint jasperprint = JasperFillManager.fillReport(this.reportPath, paramHash, this.conn);
主报表创建良好并已填充。然而,子报告区域是空白的。对于我做错了什么有什么想法吗?
提前致谢, 安迪。
【问题讨论】:
标签: java jasper-reports subreport