Dialogues

The main purpose of dialogues is to ask the user for information or to provide him or her with information. Typical such examples are:

  • The system needs information from the user to direct further processing.
  • A critical situation arises where the user might lose data; the system therefore warns the user.
  • The system informs the user on the success of an action or of the ongoing processing.

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 dialog 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 dialog box is classified as "modal" if the user must respond to the dialog 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 dialog box, and the user has to respond to this dialogue.

The R/3 System provides only modal dialog boxes. In other systems there are also "amodal" dialog boxes. With amodal dialog boxes the user may continue work in the primary window, while the dialog box is open. Typical such amodal dialog boxes are dialogues for search and/or replace. In the near future the R/3 System will have amodal dialog boxes, too.

 

General Guidelines for Dialog Boxes

The following general guidelines for dialog boxes in the R/3 System take into account that there are only modal dialog boxes in the R/3 System. As a result of the modeness of the dialog boxes the menu bar in the primary window is locked, if a modal dialog box is active on the screen. In addition, the dialog box has no menu bar of its own. Actions are initiated via pushbuttons in the dialog box solely.

Uses of Dialog Boxes

The current main action within a transaction runs in a primary window to carry out the Save or Post action, for instance. Dialog 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 dialog boxes on the screen (Exception: A dialog box initiated with F4=Possible entries may be displayed additionally).

Pushbuttons or Function Keys in Dialog Boxes

Line pushbuttons up across the bottom of the dialog box in the following order:

  • ENTER=<Action>: always the leftmost button; always to be displayed
  • Fx=Special functions: in ascending order from left to right
  • F12=Cancel: always the rightmost button; always to be displayed, except in read-only dialog boxes (but also active then)

The following buttons may be active but are not displayed:

  • scroll functions: F22=Previous page, F23=Next page, etc.
  • select operations: F4=Possible entries, F2=Choose (but see below!), F9=Select

The following buttons are not allowed:

  • F3=Back, F15=Exit: Dialogues are side paths which can only be canceled with F12=Cancel.
  • F11=Save: Saving can only be carried out in the main window. A dialog box may prompt the user for saving, but the saving cannot directly be executed here.

Executing Dialog Boxes

The user executes a dialog box via the first pushbutton ENTER=<Action>. This is normally <Action>=Execute or ENTER=Continue. After pressing F4 from the primary window or from dialog 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 dialog 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 dialog boxes, ENTER=Continue.

Description of the Pushbuttons

ENTER Key

The dialog 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 dialog box, while the previous dialog box remains on the screen.

F12=Cancel

The dialog box disappears and the program either returns to the primary window or to the last dialog box (also if the user had to make required entries in the dialog box). If possible, the previous status is fully restored, that is, the entries are "forgotten" and any processed entries are canceled.

Read-only dialog boxes or dialog 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 dialog box is displayed (the first remains where it is) with the respective possible entries.

Error Messages in the Dialog Box

If the entries of a dialog box are processed and the system detects an error, it can display an error message. Display the message in another dialog box unless it is an S message (see below) which appears in the status bar. The user then has the option of correcting the input value in the dialog box. That is, the dialog box remains where it is, and the user receives the request to eliminate the error (or he cancels with F12).

Navigation in Dialog Boxes

line by line or character by character with the arrow keys inside input fields with the TAB key from one field ready for input to the next

with the mouse:

  • single click = cursor positioning
  • double click = cursor positioning + Select + ENTER (currently corresponds to F2=Choose)

When displaying the dialog 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 Dialog Boxes

Position the first displayed dialog box, if possible, so that the relevant information of the primary window is not covered up. If this is not possible, center the dialog box on the screen if no other dialog boxes can be displayed. Do not squeeze the dialog box up against the edge of the screen.

Position further dialog boxes to be displayed so that the title bar of the previous dialog 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.

 

Prompts in Dialogues

Prompts are a special, and from the user's perspective an important type of dialog box, because they help him or her to prevent mistakes in critical situations. For instance, if the user executes an action with potentially destructive or irreversible consequences, the system alerts the user to the critical situation and sends a prompt. This prompt informs the user about the current situation and provides him or her with possible actions to choose from.

In the R/3 System three categories of prompts are distinguished:

  1. prompts which the system displays every time a user action may cause a loss of data -- so-called safety prompts,
  2. prompts which require the user to confirm or abort an action,
  3. prompts which require the user to choose between two alternatives.

Within these categories, you can use various forms of display and modes of operation, all of which are implemented in different function modules.

A distinction is made between destructive and non-destructive actions or response options. "Destructive actions or response options" result in a loss of data. If no data is lost, they are referred to as "non-destructive actions or response options".

Safety Prompts

The system displays safety prompts when the user executes one of the following functions:

  • F15=Exit, F3=Back, F12=Cancel, F17=Other <object>, OK-Code=N
  • another object class from the application area menu
  • another action from the <object> menu

Display dialog boxes with a safety prompt only if data entered may be lost. Use the system flag SY-DATAR to check whether this is the case.

Other System Prompts

The system requests the user, with or without messages, to confirm an action, for example:

  • if entities - files, folders, tables, and so on -are to be deleted
  • if entities are to be copied
  • if a decision has to be made about how to continue processing

General Layout Guidelines

Dialog boxes contain the following elements:

  • a title bar
  • an optional diagnosis text, explaining why the following question is asked
  • a question which refers to the action previously performed, the possible loss of data, or the diagnosis text
  • the "Yes" and "No" responses, displayed as two adjacent pushbuttons (exception see below); present the "Yes" response first; the cursor is generally placed on the non-destructive option
  • the "Cancel" pushbutton; position it to the right of the response buttons (exception see below)

For the most common prompts, there exist predefined dialog boxes that are called via function modules (see below). Blank lines between the individual elements of the dialog boxes are set automatically by these modules.

Note: For more extensive information on these function modules, refer to the SAP Style Guide or to the online documentation in the function module library!

Safety Prompts After Returns

Display safety prompts when leaving the initiated action may cause a loss of data. There are two possibilities:

(1)Return with Post/Save: The user is able to save the entered data and then returns to the previous stage in the function.

(2)Return without Post/Save: The user is not able to save the entered data and only may return to the previous stage in the function.

With Post/Save (POPUP_TO_CONFIRM_STEP or
POPUP_TO_CONFIRM_WITH_VALUE)

Use this prompt as the standard return option, if possible. The user leaves the task function by activating the Exit function. The previously entered or changed data is either posted or saved when the user chooses this option in the upcoming dialog box. Otherwise unsaved data will be lost. The user can also choose the "Cancel" option to close the dialog box and cancel the initiated "Exit".

The question refers to the possible loss of data. Select the non-destructive option "Yes".

Figure: Safety prompt for the function Exit

Show a similar dialog box for the function Back. Note the different screen titles!

Figure: Safety prompt for the function Back

Post/Save is Not Possible (POPUP_TO_CONFIRM_LOSS_OF_DATA)

The second return option is used if data is inconsistent or if too costly checks need to be performed. This time the user activated the Cancel function in the primary window. He or she can respond to the safety prompt in one of two ways: Either leave the task function and lose the previously entered or changed data, or return to the task to proceed.

A diagnosis text is displayed. It always reads: "Unsaved data will be lost". The question refers to the initiating action. Select the "No" response option.

Figure: Safety prompt for the function Cancel

Confirming Actions

If a dialog box requires the user to confirm an action, there are two variants: The user is to confirm a non-destructive or a destructive action.

Non-Destructive Action (POPUP_TO_CONFIRM_STEP or
POPUP_TO_CONFIRM_WITH_VALUE)

In this case, check if you can do without a dialog box because displaying a dialog box will slow down processing.

The user has for example activated the "Change Currency" function. A dialog box is displayed because the function has to be confirmed here.

The question refers to the initiating function. Select the "Yes" response option to speed up processing.

Figure: Example of a confirmation prompt for a non-destructive action

Destructive Action (POPUP_TO_CONFIRM_STEP or
POPUP_TO_CONFIRM_WITH_VALUE)

If the destructive operation may have irreversible consequences, always display a dialog box. For example, the user has selected 20 lines in a list and then chooses "Delete". Display a dialog box since the function has to be confirmed.

If a transaction offers several equally important operations which require the user to confirm the action, and these operations are of a destructive and non-destructive nature, select the "Yes" option as response for all operations. This explains why in extraordinary circumstances the "Yes" option is selected for a destructive action.

If, however, the destructive operation is a less frequently used function, then select the "No" response for maximum protection against a loss of data.

The question refers to the initiating function. In the example, the "No" response option is selected to protect from loss of data.

Figure: Example of a confirmation prompt for a destructive action

Confirming Actions After Previous Message

The options described in the previous section can be supplemented with a message, warning, diagnosis or information that precedes the actual question.

Message + Action (POPUP_TO_CONFIRM_WITH_MESSAGE)

First, the system displays a dialog box with a message specifying the critical processing state. Then the user is asked how he or she wants to proceed.

A message text (concluded with a full stop) is placed in front.

Figure: Example of a confirmation prompt with message

Choosing Between Two Related Options With or
Without Previous Message

The most general form of a dialog box containing a prompt is the dialog box which requires the user to choose between related options. It can be preceded by a message, warning, diagnosis, or information.

[Message] + Decision (POPUP_TO_DECIDE and
POPUP_TO_DECIDE_WITH_MESSAGE)

If the system asks the user an either/or-question which does not allow yes/no-answers, name the options offered to the user. Optionally, you can let the system display a message first. In the question, the two options are linked with "or".

Next to the question, separated by a blank line, present two corresponding response options and a canceling option in a horizontal button arrangement. As the following example shows, a vertical button arrangement is also possible.

Figure: Confirmation prompt with alternatives (vertical arrangement, no message)

 

top top