Sunday, July 29, 2018

Messages in ABAP


Messages are usually used to tell the user what is going on. The following types of messages are available in ABAP.
A
Termination
The message appears in a dialog box, and the program terminates. When the user has confirmed the message, control returns to the next-highest area menu.
E
Error
Depending on the program context, an error dialog appears or the program terminates.
I
Status
The message appears in a dialog box. Once the user has confirmed the message, the program continues immediately after the MESSAGE statement.
S
Error
The program continues normally after the MESSAGE statement, and the message is displayed in the status bar of the next screen.
W
Warning
Depending on the program context, an error dialog appears or the program terminates.
X
Exit
No message is displayed, and the program terminates with a short dump. Program terminations with a short dump normally only occur when a runtime error occurs.

The syntax for issuing a message is as follows.
MESSAGE <message> TYPE <message type>.

We can issue a status message as follows. Status message will be displayed in the status bar. After the message is displayed the program continues after the MESSAGE statement.
MESSAGE 'This is a status message' TYPE 'S'.

Information message will be displayed in a dialog box. Once the user has confirmed the message, the program continues immediately after the MESSAGE statement.
MESSAGE 'This is an information message' TYPE 'I'.

Error message in report programs will be displayed in the status bar and when the user press enter, the program terminates.
MESSAGE 'This is an error message' TYPE 'E'.

Warning message behaves similar to error message in report programs.

Exit Message – No message is displayed, and the program terminates with a short dump. Short dumps can be viewed in t-code ST22.
MESSAGE 'This produces short dump' TYPE 'X'.

Termination Message appears in a dialog box, and the program terminates. When the user has confirmed the message, control returns to the next-highest area menu.
MESSAGE 'This is termination message' TYPE 'A'.
Instead of hardcode the message text in the program we can maintain the message text in text symbols. In order to maintain text symbols use the menu path Goto->Text Elements->Text Symbols in ABAP editor.
In the text symbols screen we can maintain the messages with a 3 character identifier.
Then use the following message statement.
MESSAGE text-001 TYPE 'I'.