2020-12-04 11:43

Implement Excel Open XML format support

Is this a bug or feature request?

What is the current behavior?

Which are the steps to reproduce?

What is the expected or desired behavior?

By default, all excel exports shall export using Excel Open XML format (i.e. .xlsx extension).

Note to IT

Regression: * webui: view: download selected * swing: acct viewer export * swing: any window, File->Export * Export product specs: https://github.com/metasfresh/metasfresh/issues/4582


SysConfig: de.metas.excel.DefaultFileExtension

  • xlsx - the Excel Open XML format (aka Excel 2007) will be used by default
  • xls - the Excel97 format will be used by default

SysConfig: de.metas.excel.MaxRowsToAllowCellWidthAutoSize

Defines the threshold above which the column width auto-adjustment will not be performed. Useful to speed up the export of huge excels.

By default is set to 100_000 rows.

SysConfig: de.metas.excel.UseStreamingWorkbookImplementation

Applies only for Excel Open XML format.

  • Y - (enabled) the streaming version of workbook will be used, i.e. SXSSFWorkbook, see https://poi.apache.org/apidocs/dev/org/apache/poi/xssf/streaming/SXSSFWorkbook.html

  • N - (disabled) the regular implementation will be used, i.e. XSSFWorkbook, see https://poi.apache.org/apidocs/dev/org/apache/poi/xssf/usermodel/XSSFWorkbook.html

By default streaming is disabled. Before enabling it read the documentation about the impact (highlights: memory consumption vs compatibility).

EDIT (-ts): we added a migration script to set de.metas.excel.UseStreamingWorkbookImplementation = Y because large data sets occured relatively often


  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答