Moving around in the R/3 System
Comparison of Exit, Back and CancelTo clarify the differences between the three basic navigation functions Back, Exit and Cancel let us start with simple examples. Example 1: ExitThe user has been working on a task and has finished entering data. She wants to leave the application and move over to a different task. In this case, she uses the function Exit. This function reminds her to save her entered data (if she had not already done this) and then returns her to the application level. Example 2: CancelThe user has been working on a task and has already entered some data. When she moves to the next screen she realized that she has to enter data which she does not know and has to ask for. Therefore, she decides to cancel the editing and get the required information. This time she chooses the function Cancel. Cancel informs her that she will lose all her data. She may, however, cancel her canceling and go on with the editing. This time, going on with editing makes no sense. So she accepts losing her data and is transferred to the initial screen of her application (note: this is an example, the actual jump target of Cancel depends on the context). Other examples for uses of Cancel are error conditions where inconsistent data have been entered which cannot be saved or dialogue boxes that have been erroneously initiated. Example 3: BackThe name of the function Back sounds simple, but this function may not quite be what you and the users expect. The user edits a document that consists of header data and some more groups of data. All groups have to be entered on separate screens. When the task requires that all groups of data have to be entered, it is useful to put the data screens in a fixed sequence. This time, however, the user wants to access only some of the screens. She does so from a main screen via the Goto menu. After finishing data entry for a group she returns to the main screen via the function Back. As with Exit, Back allows her to save the entered data, if she had not already done this. It is important to note that the function Back is not to be used in a fixed screen sequence, as many users would expect. Here, you use the functions Next screen and Previous screen for moving between screens! Back, however, always moves "up" in an application hierarchy. Sometimes this is the screen where the user came from, but not always! Another problem for users may be that in some cases all three functions return them to the same screen, for instance to the initial screen or to the application level. So, they may come to believe that these functions all do the same. This, however, is not the case. You as developer can help users by implementing these functions correctly! The three functions Exit, Cancel and Back serve different purposes and have quite a different behavior with respect to where the user is transferred and whether he or she may save the entered data or loses them. Graphical ComparisonWe now move on to a more technical comparison of the three navigation functions Exit, Cancel and Back. First we compare the processing within the three navigation functions, especially with respect to when error checks are done and when safety prompts appear. Figure 1: Graphical comparison of Back, Exit and Cancel Our graphics reveal that with Back and Exit the error check is performed at different events: With Back, the check is performed at the beginning of the processing, whereas with Exit it is performed at the end. With Cancel, by contrast, no check is performed at all. In addition, the safety prompt with Cancel does not provide the chance to save the data, as data cannot be saved with Cancel. Therefore, it informs the user about the possible loss of data. Table ComparisonThe following table summarizes the most important information on the three navigation functions Back, Exit and Cancel that you as developer need. Among others, it aids you in designing the safety prompts.
Table 1: Summary of the three navigation functions Back, Exit and Cancel
Source: SAP R/3 Style Guide |