“Export to Spreadsheet” is a utility for exporting data from an app to a spreadsheet, enabling users to work with the data in common spreadsheet applications. Typical use cases are to mix the data with other sources, perform complex calculations, or change the layout of the data (for example, to present the content differently).
Use “Export to Spreadsheet” if:
- Users need to work with the data in common spreadsheet applications.
- Exported data should be the same as displayed (for example, taking visible columns, column order, filter, and sort settings into account).
- The amount of data to be exported is limited.
Do not use “Export to Spreadsheet” if:
- You want to export a complete database table. Use custom-built exporters instead.
- You need to export large tables. Use custom-built exporters instead.
Behavior and Interaction
“Export to Spreadsheet” can be used in all cases where the exported data can be represented in a tabular format. The export is independent of the control used to display the data in the app. It can be used not only for tables, but also for all other controls that work internally with tabular or hierarchical data, such as charts.
The exported file contains only simple read-only text content. Basic data type information can be configured per column, such as text, integer number, floating point number, date, and so on. Since spreadsheet applications provide their own formatting for cell content, SAPUI5 formatters (for example, for dates, times, and numbers) are not taken into account.
You can combine several data points and display them in one cell, or spread them over several cells.
In the spreadsheet files, tree structures are displayed using the grouping functionality (first seven levels) and double indentation (all levels).
Exporting Readable Texts
By default, the Export to Spreadsheet feature only uses data from the back end. Front-end formatting is not considered. For example, if the back-end database value is “F” and the value displayed in the front end is “Finished”, the exported value is still “F”.
To ensure that the data is exported as it is displayed on the screen, you can define key value pairs to overwrite the back-end values for a given column or columns (such as “F” for “Finished”).
If you opt to use this feature, bear the following in mind:
- The correct translated text must be provided by the application. It isn’t done by the framework.
- The text is just replaced, without additional formatting.
In this example the exported texts for the Enumeration column in the exported file are identical with those shown on the UI, even though the database values are 1, 2, and 3.
During the export, a modal progress dialog is displayed. The user can cancel the export at any time.
As soon as the spreadsheet file has been created, it is offered for download automatically.
When you configure the exporter, ensure that your data is converted to a tabular representation. For example, when exporting a list item, configure the exporter to display each data point in a separate column.
Only combine data points in the exported file if this makes sense for your use case. Nicely formatted cells with combined data points are fine for presentations. However, for complex calculations or mass editing in spreadsheet applications, they can be rather cumbersome.
The first column in an application shows a text and the corresponding ID, for instance Astro Laptop 1516 (HT-1251). In the export file, you can either put the entire text into one cell, or configure the export to display the data in two different columns. The second solution allows users to sort and filter by both data points individually in spreadsheet applications.
For tables, export the data as it is displayed on the screen:
- Export all visible columns in the same order as they are displayed on the screen.
- Take the view settings (sort, group, filter, …) into account.
- Use the same column header texts.
When exporting, convert non-text elements to a text-only representation. Non-text elements include icons, images, micro charts, or controls like checkboxes and buttons. Converting them to text ensures that the data is not lost in the exported spreadsheet file.
Want to dive deeper? Follow the links below to find out more about related controls, the SAPUI5 implementation, and the visual design.