A situation is a constellation in SAP Fiori that affects one or more user-relevant business entities and is therefore worth bringing to the user’s attention. After the user has been informed, the situations concept helps them to understand and resolve the situation in question.
Situation handling focuses on the following aspects:
Detect current situations and predict upcoming situations
Provide information about identified situations using primary and complementary channels
Provide information about the situation trigger and the context of the situation, including causes and impact
Propose viable solutions to resolve the situation or at least minimize its impact
Help understand the suggested solutions and pick the most promising one
Guide the user through the steps required to perform the solution and thereby resolve the situation
Use situations if:
- You want to bring constellations that are not part of the application to the user’s attention because they are relevant for the current context or task.
Do not use situations if:
- Something is, or should be, a key function of your application.
- You want to compensate for missing features that are key functions of your application but should be a direct part of your application instead.
Responsiveness and Adaptiveness
The situation box always uses the full width of the page on which it is displayed. The content of the situation box, more precisely the title and the description, is wrapped if more width than is available is needed.
The rest of the content follows the standard SAP Fiori responsive behavior of the respective controls.
In the current state of implementation, a situation can be displayed only on the object page of the object affected by the situation. The situation is displayed in a separate section of the object page. This section is called “Situation” and is displayed as the first section of the object page.
The “Situation” section contains at least the situation box (custom message strip) that indicates that the current object is affected by a situation.
Indicator to catch the user’s eye
- Situation title (including an optional situation switch)
Brief and compact description of the situation at hand
- Situation description (text is wrapped depending on the available width)
Detailed description of the situation at hand
- Date occurred/expected
Date on which the situation occurred or is expected to occur
Set of actions related to the situation (not solutions)
Behavior and Interaction
The situation section, including the situation box, is displayed only when a situation is currently affecting the displayed object. The section is removed as soon as the situation is no longer present.
Dismissing a Situation
The user at the current point in time can handle the lifecycle of the situation by dismissing it. They can pick a reason for dismissing the situation: situation resolved, situation obsolete, or situation incorrect.
A message toast that confirms the dismissal is displayed when a situation is dismissed. If there are multiple situations, the next situation is displayed. If there are no more situations, the standard object page is displayed.
If there are multiple situations affecting the current object, the user can use a button behind the situation title to switch between these. The button is displayed only when there are multiple situations.
If the user clicks the transparent button, a popover is opened with list items that display all the available situations. When the user selects an item, the display switches to the respective situation.
Displaying Solutions and Additional Information
Most of the time it is not enough to only inform the user about the situation that is currently affecting the displayed object. It is also necessary to provide the user with additional information so that they can understand the cause and impact of the situation.
In an ideal case, the user is presented with several possible solutions to resolve the situation or to at least minimize its impact.
If additional situation-related content can be displayed, the first (situation) section is split into different subsections.
These subsections are used to structure the content related to the situation. The following order should be applied when subsections are used (each entry represents a subsection):
- Situation box
- Solutions (if available)
- Additional situation-related content (if available)
The amount of subsections is not restricted but should be kept to a manageable number. To avoid too much white space, situation solutions and related information can be displayed in the same subsection if the amount of content is manageable.
If the object page used to display the current situation is dedicated only to resolving the current situation, the subsections should be displayed as regular sections to avoid having only a single section on the object page.
Notifying About a Situation
Notifications can be used to bring a situation to the user’s attention.
The notification provides a textual summary of the situation that gives a quick impression of what the situation is about.
If the user clicks the notification, the system navigates to the object page used to display the affected object. The respective situation is displayed on the object page.
Want to dive deeper? Follow the links below to find out more about related controls, the SAPUI5 implementation, and the visual design.