我有1个 mainreport.xrml ,此报告有一个 subreport.xrml 。
因此,当我编译报告而不向报告提供任何对子报告的引用时,它会生成我的报告,但是当我在 report.xrml 中提供引用时我的子报告,它要求我提供 subreport.jasper
这是我编写的java代码:
JasperReport report = null;
JasperReport report2 = null;
JasperPrint jasperPrint = null;
StringBuilder pathReport = new StringBuilder();
try {
name = config.getProperty(Constants.PATH_JRXML) + name + SUFFIX;
String name2 = "";
if (tipoReporte.equals("mensual")) {
} else {
int a = 0;
name2 = "C:\\mail\\reporteIncidenciasDiarias.jrxml";
report2 = JasperCompileManager.compileReport(name2);
}
report = JasperCompileManager.compileReport(name);
jasperPrint = JasperFillManager.fillReport(report, mapParams,
new JRBeanCollectionDataSource(params));
pathReport.append(config.getKeyValue(Constants.PATH_REPORT));
String nombreReporte = config.getKeyValue(Constants.NAME_REPORT);
if (tipoReporte.equals("mensual")) {
nombreReporte += "Mensual";
} else {
nombreReporte += "Diario";
}
pathReport.append(nombreReporte);
pathReport.append(DateUtils.formatear(new Date(), Constants.PATTERN_DATE_2));
pathReport.append(Constants.FILE_EXT);
JasperExportManager.exportReportToPdfFile(jasperPrint, pathReport.toString());
logger.info("Reporte generado " + pathReport);
} catch (JRException e) {
logger.error(e);
throw new Exception(e);
} catch (Exception ex) {
logger.error(ex);
throw new Exception(ex);
}
return pathReport.toString();
我应该怎么做,所以它不会问我 subreport.jasper ,或者我怎样才能获得 subreport.jasper ?
答案 0 :(得分:0)
使用文件解析程序并将其作为参数传递给报表,或者自己编译子报表文件并传递已编译的报表。
查看jasperreports样本:
http://jasperreports.sourceforge.net/sample.reference/subreport/index.html#subreports