errn permet de connaître le numéro d'une erreur générée dans un traitement Adonix.
#-- EXEMPLE 1
# Division par 0 : interception de l'erreur
Onerrgo ERR
I = 1 / 0
End
ERR
# Affichage du message : erreur no 53 en ligne 3
Errbox "erreur no"-num$(errn)-"en ligne"-num$(errl)
End
#-- EXEMPLE 2
# Gestion des erreurs dans l'évaluation d'une chaîne calculée
Local Char FORMULE(100), RESULTAT(100)
Local Integer ERN
# En cas d'erreur, aller en ERCALC, où ERN sera mis à jour.
Onerrgo ERCALC
# Traduction des mots-clés
FORMULE = "date$$"
ERN = 0
# on évalue la formule et on la formatte en chaîne.
# vireblc supprime les espaces superflus.
RESULTAT = vireblc(format$("K:100X", evalue(FORMULE)), 2)
# Si ERN est non nul, on est passé par ERCALC
# affichage du message : "Erreur en calcul : caractère illégal"
If ERN
Errbox "Erreur en calcul :"-errmes$(ERN)
Endif
End
# Sous-programme de gestion d'erreur : errn a un sens ici seulement
ERCALC
ERN = errn
Resume
errn contient le dernier numéro d'erreur générée par Adonix lors de l'exécution d'un traitement.
Ce numéro d'erreur n'a de sens que dans un sous-programme de gestion d'erreur appelé par Onerrgo. Dans les autres cas, sa valeur peut ne pas être significative.
La liste des erreurs et des codes d'erreurs est référencée dans ce document.