SAP NetWeaver AS ABAP Release 740, ©Copyright 2014 SAP AG. All rights reserved.
ABAP Keyword Documentation → ABAP − Reference → User Dialogs → Messages → MESSAGE →
MESSAGE - msg
Syntax
... { tn }
| { tn(id) }
| { ID mid TYPE mtype NUMBER num }
| { oref TYPE mtype } ... .
Alternatives:
1. ... tn ...
2. ... tn(id) ...
3. ... ID mid TYPE mtype NUMBER num ...
4. ... oref TYPE mtype ...
Effect
msg specifies a message from the database table T100 either by specifying id and n directly or by using the content of the data objects mid and num for the message class and the message number. Alternatively, an object reference variable oref is specified whose dynamic type implements the interface IF_T100_MESSAGE. One of the possible message types "A", "E", "I", "S", "W", or "X" must be specified, either by specifying t directly or as content of the data object mtype. This controls the behavior of the message.
If the specified message is not found for the logon language of the current user, a search is made in the secondary language (profile parameter zcsa/second_language) and then in English. If it is still not found, the specified message type, message class, and message number are used as short text in uppercase letters and separated by a colon ":".
The system fields of the statement MESSAGE are always supplied with the specified values.
Note
The maximum length of a message is 269 and is determined from the short text of the message in the database table
T100 (with a maximum of 73 characters) including
up to four single-character placeholders &. These placeholders can
be replaced by strings with a maximum of 50 characters using the addition WITH).
... tn ...
Effect
t and n are used to specify the single-character message type and the three-digit message number directly in a row (static short form). The message class must be specified with the addition MESSAGE-ID in the statement that introduces the program.
Example
Displays the short text of the message with the number 014 from the message class SABAPDOCU as an information message.
REPORT rep MESSAGE-ID sabapdemos.
...
MESSAGE i014.
... tn(id) ...
Effect
The same applies to t and n as to the static short form. In the static long form, the message class is specified directly in parentheses using id.
Notes
Example
As in the example for alternative 1, with the message class specified explicitly.
REPORT ...
...
MESSAGE i014(sabapdemos).
... ID mid TYPE mtype NUMBER num ...
Effect
The message class, the message type, and the message number are specified as content of the data objects mid, mtype, and num (dynamic form). mid and mtype expect character-like data objects that must contain the message class or the message type in uppercase letters. Invalid message types raise a non-handleable exception. num expects a data object of the type n and length 3.
Note
Specifying the message class explicitly overrides the addition MESSAGE-ID of the statement that introduces the program.
Example
As in the example for alternative 2, with the message and the message type specified dynamically.
DATA: mid TYPE sy-msgid VALUE 'SABAPDEMOS',
mtype TYPE sy-msgty VALUE 'I',
num TYPE sy-msgno VALUE '014'.
MESSAGE ID mid TYPE mtype NUMBER num.
... oref TYPE mtype ...
Effect
For oref, an object reference variable can be specified which, when the statement MESSAGE is executed, points to an object whose class implements the system interface IF_T100_MESSAGE. This in turn contains the component interface IF_MESSAGE. mtype expects a character-like data object containing the message type in uppercase letters. oref is a functional operand position.
The statement MESSAGE analyzes the components of the structured attribute T100KEY of the interface IF_T100_MESSAGE in the referenced object. The message class is taken from the component MSGID and the message number from the component MSGNO. If the components ATTR1 through ATTR4 contain the names of other attributes of the object, the placeholders "&1" through "&4" and "&" of the short text or "&V1&" through "&V4&" of the long text of the message are replaced by the content of these attributes according to the rules of usage given by the additions WITH in message_options. If one of these components does not contain an attribute name, the character "&" is added to the content at the beginning and end, thus replacing the placeholder.
Notes
Example
See Sending a Message Using an Interface Reference Variable.