XSSFWorkbook.setActiveSheet() 等同于 JasperReports?
XSSFWorkbook.setActiveSheet() equivalent in JasperReports?
我们正在使用 JasperReports 6.13.0 生成 XLSX 格式的报告。我们有一个要求,每当用户打开生成的 XLSX 报告时,我们需要将特定的 sheet 显示为默认可见(而不是第一个 sheet)。
我的问题是,我们在 JasperReports 中有这个功能吗?我在文档中找不到任何相关内容。
注意:在 Apache POI 中,我们可以使用以下方法实现此功能:XSSFWorkbook.setActiveSheet(int index)
JasperReports 目前不包含此功能。
您可以考虑修补JasperReports代码来添加它。您需要做的是在 XlsxWorkbookHelper.exportHeader 中的 workbookPr
.
行之后添加类似于以下行的内容
write("<bookViews><workbookView activeTab=\"" + activeSheet + "\"/></bookViews>\n");
您还需要以某种方式从导出器传递活动 sheet 索引。
或者,您可以使用 JasperReports 导出到 XLSX,然后使用 POI 打开文件并设置活动 sheet。
我们正在使用 JasperReports 6.13.0 生成 XLSX 格式的报告。我们有一个要求,每当用户打开生成的 XLSX 报告时,我们需要将特定的 sheet 显示为默认可见(而不是第一个 sheet)。
我的问题是,我们在 JasperReports 中有这个功能吗?我在文档中找不到任何相关内容。
注意:在 Apache POI 中,我们可以使用以下方法实现此功能:XSSFWorkbook.setActiveSheet(int index)
JasperReports 目前不包含此功能。
您可以考虑修补JasperReports代码来添加它。您需要做的是在 XlsxWorkbookHelper.exportHeader 中的 workbookPr
.
write("<bookViews><workbookView activeTab=\"" + activeSheet + "\"/></bookViews>\n");
您还需要以某种方式从导出器传递活动 sheet 索引。
或者,您可以使用 JasperReports 导出到 XLSX,然后使用 POI 打开文件并设置活动 sheet。