Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.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
Excel JasperReports中的每张图纸属性一页_Excel_Jasper Reports_Xls - Fatal编程技术网

Excel JasperReports中的每张图纸属性一页

Excel JasperReports中的每张图纸属性一页,excel,jasper-reports,xls,Excel,Jasper Reports,Xls,我需要在JasperReports中设计报告。报告共有4页。第一张工作表有5页,其他工作表也有一到两页。我面临的问题是,如果我使用net.sf.jasperreports.export.xls.one.page.per.sheet属性并将其设置为true,那么所有的页面都会出现在不同的工作表中。我需要以这样一种方式设计报告:一些页面将出现在同一张纸上,而一些页面将出现在不同的纸上 可以这样做吗?假设您有4个单独的报告要批量导出,那么在每个报告中,您需要将忽略分页设置为true(它是jrxml文件

我需要在JasperReports中设计报告。报告共有4页。第一张工作表有5页,其他工作表也有一到两页。我面临的问题是,如果我使用net.sf.jasperreports.export.xls.one.page.per.sheet属性并将其设置为true,那么所有的页面都会出现在不同的工作表中。我需要以这样一种方式设计报告:一些页面将出现在同一张纸上,而一些页面将出现在不同的纸上


可以这样做吗?

假设您有4个单独的报告要批量导出,那么在每个报告中,您需要将
忽略分页设置为
true
(它是jrxml文件beging处jasperReport标记中的一个属性,该属性类似于
isIgnorePagination=“true”

要实际导出,它应该类似于以下内容:

List<JasperPrint> jasperPrintList = new ArrayList<JasperPrint>();
jasperPrintList.add(JasperFillManager.fillReport("report1.jasper", params1));
jasperPrintList.add(JasperFillManager.fillReport("report2.jasper", params2));
jasperPrintList.add(JasperFillManager.fillReport("report3.jasper", params3));
jasperPrintList.add(JasperFillManager.fillReport("report4.jasper", params4));

JRXlsExporter exporter = new JRXlsExporter();

exporter.setParameter(JRExporterParameter.JASPER_PRINT_LIST, jasperPrintList);
exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, "BatchExportReport.xls");
exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.TRUE);

exporter.exportReport();

那么你有4个单独的报告文件吗?谢谢你的回复。但是我不确定我是否已经把我的问题说清楚了。让我给你一个明确的要求。我得到的模板是xls格式的,有4个不同的选项卡/工作表。如果只使用3个子报表并设置每张工作表一页属性,问题就会得到解决。但是当我意识到第一个选项卡/工作表本身有5页时,设计就完成了。所以设置每张工作表一页属性会使这些页面出现在不同的选项卡/表格中,这不是我想要的。有什么方法可以满足这个要求吗?我肯定遗漏了一些东西,因为在Excel电子表格的上下文中,页面并没有真正的意义。我认为你必须重新编写第一份5页的报告,这样它就只有一页了。也许你可以用一些小报告的诡计来实现它。您可以将报告作为子报告放置在新顶级报告的详细信息部分。将这两个页面上的忽略分页设置为True,然后导出它。Thanx用于回复。是的,根据您的建议,它在Excel导出中可以正常工作。然而,对于其他导出,如pdf和rtf,当我将ignore pagination设置为true时,它会生成一个很长的单页。我需要设计报告,使其在excel中是可打印的格式(这里我假设我们有设置打印格式的选项),最重要的是在pdf和rtf中。是否有我可以设置或添加的属性?
if(exportFormat == EXCEL) {
   params1.put(JRParameter.IS_IGNORE_PAGINATION, Boolean.TRUE);
   params2.put(JRParameter.IS_IGNORE_PAGINATION, Boolean.TRUE);
   params3.put(JRParameter.IS_IGNORE_PAGINATION, Boolean.TRUE);
   params4.put(JRParameter.IS_IGNORE_PAGINATION, Boolean.TRUE);
}