GET_MSG_TXT
Fonction de script : Récupère le texte du message de la dernière erreur survenue.
Syntaxe
GET_MSG_TXT (Number [,Insert])
Syntaxe |
Description / format |
---|---|
Number |
Numéro de l'erreur Le numéro d'erreur est également renvoyé par la fonction de script SYS_LAST_ERR_NR. |
Insert |
Partie variable du message d'erreur (texte) La partie variable du message d'erreur est également renvoyée par la fonction de script SYS_LAST_ERR_INS. |
Codes retour |
---|
Texte du message de la dernière erreur survenue. |
Dans certains éléments de script, vous pouvez utiliser :ON_ERROR pour poursuivre le traitement du script malgré des erreurs. Dans ce cas, le message d'erreur peut être récupéré par la fonction GET_MSG_TXT.
Le texte du message est récupéré sur la base du numéro et de la partie variable du message d'erreur Insert. Vous pouvez récupérer préalablement le numéro d'erreur avec SYS_LAST_ERR_NR, et la partie variable du message d'erreur avec SYS_LAST_ERR_INS. La fonction de script GET_MSG_TXT utilise ces informations et les textes d'erreur pour composer le message d'erreur AE complet.
Le paramètre Insert n'est pas requis si le texte du message ne comporte aucune partie variable. C'est notamment le cas des textes de statut dont vous pouvez lire le numéro à l'aide de la fonction GET_STATISTIC_DETAIL.
Exemple
L'exemple suivant illustre la vérification de la capacité mémoire d'un lecteur inexistant. Dans ce cas, une erreur se produit. Le numéro d'erreur et la partie variable du message d'erreur sont lus. Ces informations permettent de récupérer le message d'erreur AE complet et de l'envoyer sous forme de message à l'utilisateur.
:SET &CHECK# = GET_FILESYSTEM("WIN21", "Z:\", FILESYSTEM_SPACE_TOTAL)
:SET &ERRNR# = SYS_LAST_ERR_NR()
:SET &ERRINS# = SYS_LAST_ERR_INS()
:SET &MESSAGE# = GET_MSG_TXT(&ERRNR#,&ERRINS#)
:SEND_MSG
BU,BU,&MESSAGE#
Le deuxième exemple récupère le texte du statut d'une tâche.
:SET &STATUS# = GET_STATISTIC_DETAIL(&RUNNR#, STATUS)
:SET &TEXT# = GET_MSG_TXT(&STATUS#)
:PRINT &TEXT#
La sortie pourrait ressembler à ce qui suit :
ENDED_CANCEL - manually canceled.
Voir aussi :