The main purpose of dialogues is to ask the user for information or to provide him or her with information. Typical such examples are:
Make these pieces of information short and concise. It is important that the user understands them in order to prevent confusion or mistakes.
Dialogues take place in dialogue boxes. These are secondary windows that appear when the user activates a particular action in a primary or secondary window. They disappear from the screen when the user triggers a task-related action.
A dialogue box is classified as "modal" if the user must respond to the dialogue before continuing work in another window. Modal dialogues are useful, for instance, in situations where the user might lose data: The system informs the user of this situation in a modal dialogue box, and the user has to respond to this dialogue.
The R/3 System provides only modal dialogue boxes. In other systems there are also "amodal" dialogue boxes. With amodal dialogue boxes the user may continue work in the primary window, while the dialogue box is open. Typical such amodal dialogue boxes are dialogues for search and/or replace. In the near future the R/3 System will have amodal dialogue boxes, too.
The following explanation for dialogue boxes in the R/3 System takes into account that there are only modal dialogue boxes in the R/3 System. As a result of the modeness of dialogue boxes the menu bar in the primary window is locked, if a modal dialogue box is active on the screen. In addition, the dialogue box has no menu bar of its own. Actions are initiated via pushbuttons in the dialogue box solely.
Uses of Dialogue Boxes
The current main action within a transaction runs in a primary window to carry out the Save or Post action, for instance. Dialogue boxes supplement the main action by displaying additional information or data. They may also allow further entries, functional specifications, or selections in required-entry fields.
There must be no sequence of more than three dialogue boxes on the screen.
Pushbuttons or Function Keys in Dialogue Boxes
Line pushbuttons up across the bottom of the dialogue box in the following order:
The following buttons may be active but are not displayed:
The following buttons are not allowed:
Executing Dialogue Boxes
The user executes a dialogue box via the first pushbutton ENTER=<Action>. This is normally <Action>=Execute or ENTER=Continue. After pressing F4 from the primary window or from dialogue boxes that contain a selection list, it may also be ENTER=Choose. (Note: In this case, you have to reserve F2 additionally for Choose so that double-clicking with the mouse is also supported; F2, however, is not displayed.) Otherwise, you can also refer to the function executed directly (Copy, for example).
Provide dialogue boxes which contain a question with their own pushbuttons for the positive and the negative response. Do not display the ENTER key then. System messages that have to be confirmed receive a pushbutton with the name ENTER=Confirm, in the case of read-only dialogue boxes, ENTER=Continue.
Description of the Pushbuttons
The dialogue box and the entries made are processed if the user presses the ENTER key. Then, the system either returns to the previous primary window or navigates to a new one. If needed, you may also display another dialogue box, while the previous dialogue box remains on the screen.
The dialogue box disappears and the program either returns to the primary window or to the last dialogue box (also if the user had to make required entries in the dialogue box). If possible, the previous status is fully restored, that is, the entries are "forgotten" and any processed entries are canceled.
Read-only dialogue boxes or dialogue boxes displaying information constitute an exception. F12=Cancel is actually active here, but it is not displayed.
F1=Help, F4=Possible Entries
F1 is always active and relates to individual fields, as in the primary window. After pressing F4, another dialogue box is displayed (the first remains where it is) with the respective possible entries.
Error Messages in the Dialogue Box
If the entries of a dialogue box are processed and the system detects an error, it can display an error message. Display the message in another dialogue box unless it is an S message which appears in the status bar. The user then has the option of correcting the input value in the dialogue box. That is, the dialogue box remains where it is, and the user receives the request to eliminate the error (or he cancels with F12).
Navigation in Dialogue Boxes
When displaying the dialogue box, place the cursor on the first field to be selected or in the first entry field. If no entry fields exist, place the cursor on the first displayed field which can have variables.
Positioning Dialogue Boxes
Position the first displayed dialogue box, if possible, so that the relevant information of the primary window is not covered up. If this is not possible, center the dialogue box on the screen if no other dialogue boxes can be displayed. Do not squeeze the dialogue box up against the edge of the screen.
Position further dialogue boxes to be displayed so that the title bar of the previous dialogue box is not covered up. That is, move them down at least two lines. In addition, move them a few characters to the left or to the right.
Source: SAP R/3 Style Guide