当前位置: 首页 > 知识库问答 >
问题:

如何从jasper报表导出到excel中的多张表

花稳
2023-03-14

在互联网上搜索时,我找到了关于在报告中创建中断的答案,在子报告“true”中有“忽略分页”选项,但对我来说仍然不清楚。

我有哪些选项来控制创建新工作表的方式和时间

共有1个答案

和魁
2023-03-14

在jasper report中,有不同的方法在JRXMLJava代码中实现新的工作表。默认行为是为每个页面创建一个新工作表。我将举例说明三种最常见的方法,并在使用它们时遇到相关问题。

忽略分页和中断元素

方法

<break>
  <reportElement x="0" y="0" width="100" height="1" uuid="c5371aa4-2eb4-4ab9-8cae-39f50da3317b"/>
</break>
net.sf.jasperreports.export.xls.one.page.per.sheet="false"

当您希望它在ReportElement之前或之后创建新工作表时,请添加相对属性:

net.sf.jasperreports.export.xls.break.before.row="true"
net.sf.jasperreports.export.xls.break.after.row="true"

问题:每一张纸上的列都是相同的,这可能会导致不同纸上难看的colspan

使用java并根据需要控制工作表(加载不同的报表)

List<JasperPrint> sheets = new ArrayList<JasperPrint>();
for (int i=1;i<=8;i++){
   JasperPrint print = JasperFillManager.fillReport("subReport_" + i + ".jasper", paramMap, connection);
   sheets.add(print); 
}
JRXlsxExporter exporter = new JRXlsxExporter();
exporter.setExporterInput(SimpleExporterInput.getInstance(sheets));
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(new File("text.xlxs"));
SimpleXlsxReportConfiguration configuration = new SimpleXlsxReportConfiguration();
configuration.setSheetNames(sheetNames): //sheets names is an array of the different names.
configuration.setOnePagePerSheet(false); //remove that it break on new page
configuration.setDetectCellType(true);
exporter.setConfiguration(configuration);
exporter.exportReport();
 类似资料:
  • 假设,我报告中有一个表,表头很复杂,如下所示 当我使用Jasper Reports Server将它导出到xls或xlsx时,它会按如下方式打印(Excel 2010): 高度应等于+高度 环境:Jasper Reports Server CE 4.5.1,试用了最新版本(5.0.4)-相同(sad)结果 有人知道什么办法吗?

  • 我正试图以RTL模式导出excel jasper报表。我的报表属性似乎没有正常工作。在本报告中,我使用下面的属性来指导我的excel表ti RTL。 我也尝试了另一种方法: 上述解决方案都不起作用。拜托,谁来帮帮我。

  • 我们有一个内部的遗留java库,可以用jasper spring生成报告,并将它们导出为html、pdf或xls。然而,excel文件的所有单元格都具有相同的格式(没有),我们有一个报告,其中一列填充了文本,有人担心它会被解释为带有数值的公式或其他类型的代码。同样,我们有应该出现在报告中的带有前导零的字符串。我试过设置JExcelApiExporterParameter。通过jasperExpor

  • 如何将报表从jasper studio发布到jasper服务器? 我将只发布主报告还是包括子报告?