Bonjour Antoine,
Merci pour ton retour.
&$STATUS# n'est pas compris (je suis en V11.2.1)
La ligne dans le post-trt::SET &STAT#=&$STATUS#
l'erreur: 'U01001308 Variable '$STATUS#' has not yet been defined.'.
Est ce une fonction disponible depuis la version 11.2.2
Pour précision &$RUNID# est bien interprété quant à lui (:SET &RUNID#=&$RUNID#).
Pour la relance, cela fonctionne ... trop bien, c'est une boucle infinie:
&$RESTART_COUNT# semble avoir toujours la valeur 0
Donc mon test qui vérifie si cette variable est < à ma valeur max de relance ne peut être résolu.
Est ce que mon utilisation de&$RESTART_COUNT# est bonne ?
Traitement (le script exitN.sh sort en exit correspondant au paramètre donné - ici exit 5) :
echo test erreur
/appli/automic/test/exitN.sh 5
CR=$?
echo "CR=$CR"
!Export du CR pour le post-traitement
:REGISTER_VARIABLE "CR#", $CR
Post-Traitement:
!Valorisation du compteur de relance
:SET &RESTART#=&$RESTART_COUNT#
:PRINT "compteur de relance=&RESTART#"
!Prise en compte du Code retour
:PRINT "CR=&CR#"
!Nom du job courant
:SET &JOB_NAME#=&$NAME#
:PRINT "JOB_NAME=&JOB_NAME#"
!RUNID du lancement courant
:SET &ID_JOB#=SYS_ACT_ME_NR()
:PRINT "RUNID=&ID_JOB#"
!Nombre de relance max
:SET &MAX#=1
:PRINT "Nombre max de relance autorisée=&MAX#"
!Si job en erreur, vérification du nombre de relance
:IF &CR# <> "0"
Relance <= au nombre de relance max autorisé -> re-soumission du job
: IF &RESTART# <= &MAX#
: PRINT "Relance &RESTART# initiée"
: WAIT 5
: SET &RET#=RESTART_UC_OBJECT(&JOB_NAME#,&ID_JOB#)
!Relance max atteinte -> Erreur
: ELSE
: PRINT "Nombre de relance max atteinte, sortie erreur"
: EXIT &CR#
: ENDIF
:ENDIF
Contenu du log du Post-traitement
2016-10-04 16:24:45 - U00020206 La variable '&CR#' a été enregistrée avec la valeur '5'.
2016-10-04 16:24:45 - U00020408 compteur de relance=0000000000000000
2016-10-04 16:24:45 - U00020408 CR=5
2016-10-04 16:24:45 - U00020408 JOB_NAME=TEST.JOBS.RESOUMETTRE_ERREUR
2016-10-04 16:24:45 - U00020408 RUNID=0005102724
2016-10-04 16:24:45 - U00020408 Nombre max de relance autorisée=0000000000000001
2016-10-04 16:24:45 - U00020408 Relance 0000000000000000 initiée
2016-10-04 16:24:51 - U00007000 'TEST.JOBS.RESOUMETTRE_ERREUR' activé avec le RunID '0005102726'.