Base de connaissances > Automation Engine et systèmes cibles > SAP > Analyse du code retour d'application des steps SAP

Analyse du code retour d'application des steps SAP

Un step SAP peut également contenir un code retour d'application.

Vous pouvez y accéder des façons suivantes :

Via un élément de script

R3_GET_APPLICATION_RC peut vérifier le code retour d'application d'un ou plusieurs steps de Job et interrompre le Job AE si nécessaire.

Avec le rapport de Liste de steps

Ce type de rapport spécifique contient des informations sur les steps et également le code retour d'application. Le code retour peut être lu à l'aide d'un élément de script XML.

Exemple :

:SET &xmlreport# = XML_OPEN(REPORT,,SSTP) 

! Reading the first element
:SET &job# = XML_GET_FIRST_CHILD(&xmlreport#)
:SET &name# = XML_GET_NODE_NAME(&job#)
:PRINT "First element: &name#"
! Reading the second element
:SET &child# = XML_GET_FIRST_CHILD(&step#)
! Reading the step's children
:WHILE &child# <> ""
:SET &name# = XML_GET_NODE_NAME(&child#)
! Reading the application return code
:IF &name# = "RC"
: SET &applrc# = XML_GET_NODE_TEXT(&child#)
: PRINT "Applicationreturncode: &applrc#"
:ENDIF
:SET &child# = XML_GET_NEXTSIBLING(&child#)
:ENDWHILE

:XML_CLOSE

Avec le rapport

Les informations sur les steps de Job SAP sont journalisées dans le rapport de Job. Le code retour d'application est également spécifié dans le rapport de Job, si vous utilisez l'interface AE.

Si un step ne possède pas de code retour d'application, "Appl-RC n/a" est spécifié dans le rapport de Job.

Utilisez la fonction de script PREP_PROCESS_REPORT pour lire et traiter les codes retour de l'application.

Dans l'exemple suivant, un ABAP nommé ZZ_TEST_APPL_RC est exécuté une fois dans le Job. Son code retour d'application doit être lu.

! Select the line containing ABAP and the application return code.
:
SET &HND# = PREP_PROCESS_REPORT(,,REP,"*ZZ_TEST_APPL_RC*Appl-RC*")
:
PROCESS &HND#
:   
SET &ZEILE# = GET_PROCESS_LINE(&HND#)
!   Find the exact position in a line where the "Appl RC" starts.

:   
SET &POS_STR# = STR_FIND(&ZEILE#,"Appl-RC")
!   The application return code is located after 8 characters.

:   
SET &POS_ARC# = ADD(&POS_STR#,8)
!   Read the application return code.

:   
SET &ARC# = STR_CUT(&ZEILE#,&POS_ARC#)
!   Check if the step really supplies an application return code.

:   
IF &ARC# <> "n/a"
!      The read value is a string and must therefore be converted to a number.

:      
SET &ARC# = CINT(&ARC#)
!      Beyond this point there are any script statements which further process the application return code.

:      
PRINT &ARC#
:   
ENDIF
:
ENDPROCESS

Attention : le code retour d'application n'est pas disponible dans l'interface XBP.