Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用hashmap变量执行jasper reports子报表?_Java_Jasper Reports - Fatal编程技术网

Java 如何使用hashmap变量执行jasper reports子报表?

Java 如何使用hashmap变量执行jasper reports子报表?,java,jasper-reports,Java,Jasper Reports,正在尝试使用下一个代码生成子报告: int SelectedVoucher=Integer.valueOf(VNumber_ID_lbl.getText()); try { Connect c=new Connect(); HashMap map = new HashMap(); map.put("Voucher_ID", SelectedVoucher); String PaymentReport="src\\voucherexpress\\VoucherRep

正在尝试使用下一个代码生成子报告:

int SelectedVoucher=Integer.valueOf(VNumber_ID_lbl.getText());
try {
    Connect c=new Connect();
    HashMap map = new HashMap();
    map.put("Voucher_ID", SelectedVoucher);
    String PaymentReport="src\\voucherexpress\\VoucherReport.jrxml";
    String SubPaymentReport="src\\voucherexpress\\VoucherReport_subreport1.jrxml";               
    JasperReport jasperMasterReport = JasperCompileManager.compileReport(PaymentReport);
    JasperReport jasperSubReport = JasperCompileManager.compileReport(SubPaymentReport);

    JasperPrint jasp_print=JasperFillManager.fillReport(jasperMasterReport, map,c.Connstr);
    JasperViewer.viewReport(jasp_print);
    c.Connstr.close();

} catch (JRException | SQLException | IOException ex) {
    JOptionPane.showMessageDialog(null, ex);
}
我将子报表添加到主报表中,创建新的查询,测试它,它运行良好。 使用相同参数(凭证ID)的两个报告 但是当我使用主报表执行它时,它只显示主报表数据,子查询为空。
如何在主报告中运行子报告

我已经解决了这个问题:
第一:此行没有任何用途:

String SubPaymentReport="src\\voucherexpress\\VoucherReport_subreport1.jrxml";  
JasperReport jasperSubReport = JasperCompileManager.compileReport(SubPaymentReport);
第二: 在主报表设计页面中,单击子报表并从属性中选择参数,添加与主报表相同的参数>>>,完成工作