Overview
This article describes how to handle the busy state in SAP Fiori apps in general. You can set a busy indicator locally at control level, for example, on a page or for a button, using a busy state, or set it globally using the busy dialog. In SAP Fiori, the aim is to keep the blocking of UIs to a minimum, and to unblock areas where user interaction is possible. Since response time depends on available bandwidth and server performance, unblocking can take a second or more. In this case, we need to inform the user that the process is ongoing.
When to Use
Busy indicators are used in the following areas:
- Initial page loading;
- Dynamic fields and forms (asynchronous loading of fields based on user preselection);
- Lazy loading of content, for example, in lists and tables;
- Searching and filtering, for example, lists, tables, and global searches;
- Primary actions such as save, update, and delete;
- Deleting and updating lists or modifying tables;
- Partial loading of content.
The busy indicator is used to display the loading data in the table.
Recommended
- Avoid showing multiple busy states at once. If you expect multiple busy states on various controls, you can set the busy state on a control or container above.
- In some cases, however, it makes sense to allow multiple busy states. For example, a page could contain a form and several tables that load asynchronously. In this case, it does not make sense to set the busy state at page level until all the data is loaded as the user can start filling out the form which is already available. Response times may vary due to table data retrieval from different services.
- Enable as much as possible on one screen, so the user can start working while the rest of the data is being loaded in the background. Set the busy state for those UI elements that will require some time to load.
Not Recommended
- Use busy dialog to block the entire UI. This will affect the tool header and the user will not be able to sign out or search.