ABAP
Mot clé Classes de messages / MESSAGE
Recherche…
Introduction
L'instruction MESSAGE peut être utilisée pour interrompre le flux du programme afin d'afficher des messages courts à l'utilisateur. Le contenu des messages peut être défini dans le code du programme, dans les symboles de texte du programme ou dans une classe de message indépendante définie dans SE91 .
Remarques
La longueur maximale d'un message, y compris les paramètres qui lui sont transmis à l'aide de & , est de 72 caractères.
Définition d'une classe de message
PROGRAM zprogram MESSAGE-ID sabapdemos.
Un message défini par le système peut être stocké dans une classe de message. Le jeton MESSAGE-ID définit le sabapdemos de la classe de message pour l'ensemble du programme. Si ce n'est pas utilisé, la classe de message doit être spécifiée sur chaque appel MESSAGE .
MESSAGE avec symbole de texte prédéfini
PROGRAM zprogram MESSAGE-ID za.
...
MESSAGE i000 WITH TEXT-i00.
Un message affichera le texte stocké dans le symbole texte i00 à l'utilisateur. Étant donné que le type de message est i (comme indiqué dans i000 ), une fois que l'utilisateur a quitté la boîte de dialogue, le flux de programme continue à partir du point de l'appel MESSAGE .
Bien que le texte ne provienne pas de la classe de message za , un MESSAGE-ID doit être spécifié.
Message sans classe de message prédéfinie
PROGRAM zprogram.
...
MESSAGE i050(sabapdemos).
Il peut être gênant de définir une classe de message pour l'ensemble du programme. Il est donc possible de définir la classe de message dont provient le message dans l'instruction MESSAGE elle-même. Cet exemple affichera le message 050 de la classe de message sabapdemos .
Messagerie dynamique
DATA: msgid TYPE sy-msgid VALUE 'SABAPDEMOS',
msgty TYPE sy-msgty VALUE 'I',
msgno TYPE sy-msgno VALUE '050'.
MESSAGE ID mid TYPE mtype NUMBER num.
L'appel MESSAGE ci-dessus est synonyme de l'appel MESSAGE i050(sapdemos). .
Passer des paramètres aux messages
Le symbole & peut être utilisé dans un message pour lui permettre de lui transmettre des paramètres.
Paramètres ordonnés
Message 777 de la classe sabapdemos :
Message with type &1 &2 in event &3
L'appel de ce message avec trois paramètres renverra un message en utilisant les paramètres:
MESSAGE i050(sabapdemos) WITH 'E' '010' 'START-OF-SELECTION`.
Ce message sera affiché sous forme de Message with type E 010 in event START-OF-SELECTION . Le numéro à côté du symbole & indique l'ordre d'affichage des paramètres.
Paramètres non ordonnés
Message 888 de la classe sabapdemos :
& & & &
L'appel de ce message est similaire:
MESSAGE i050(sabapdemos) WITH 'param1' 'param2' 'param3' 'param4'.
Cela produira param1 param2 param3 param4 .