Manuel d'exemples > Exécution d'un MBean

Exécution d'un MBean

Objectifs : Le résultat de l'exécution d'un MBean doit être transféré pendant le traitement.

Objets utilisés : Job, Workflow et Variable

Eléments de script utilisés : :ENDPROCESS, GET_PROCESS_LINE, GET_VAR, JMX_INVOKE, PREP_PROCESS_REPORT, :PROCESS, :PUT_VAR,  R3_ACTIVATE_REPORT et R3_MODIFY_VARIANT
 


Exemple

L'agent JMX et des fonctions proposées par AE peuvent être utilisés pour établir une connexion au serveur MBean et accéder à ses MBeans. Cet exemple montre comment exécuter un MBean. Le résultat est par la suite transmis à une variante dans SAP avec laquelle un rapport est alors exécuté.

Variable

En premier, une variable doit enregistrer le résultat de l'appel du MBean. Créez pour cela un objet Variable statique avec les attributs suivants :

Entrez également une Clé contenant la valeur du MBean.

Jobs

Créez ensuite un Job JMX. Sélectionnez la connexion au serveur MBean dans l'onglet Hôte, puis utilisez l'onglet Forme afin d'entrer la fonction pour l'exécution. L'exemple ci-dessous indique le contenu de l'onglet Traitement qui contient les mêmes informations que l'onglet Forme :

JMX_INVOKE OPERATIONNAME=conversionRate, MBEAN=UC4:type=CurrencyConverter, SIGNATURE="java.lang.String,java.lang.String", PARAMS="USD,EUR"

Le MBean "UC4:type=CurrencyConverter" issu de l'exemple précédent détermine le taux de change Dollar-euro et l'ecrit dans le rapport de Job. La valeur peut être lue à l'aide de la fonction de script PREP_PROCESS_REPORT. Utilisez cet élément de script dans l'onglet Post-traitement du job JMX. Exemple :

:SET &HND# = PREP_PROCESS_REPORT("JOBS",, "REP",,"COL=DELIMITER", "DELIMITER=*:*")
:
PROCESS &HND#
:   
SET &RET# = GET_PROCESS_LINE(&HND#,2)
:   
PUT_VAR VARA.CURRENCY_RATE,"RATE",&RET#
:
ENDPROCESS

L'étape suivante consiste à créer un Job SAP. Celui-ci doit lire le taux de change dans l'objet Variable, modifier une variante et démarrer un rapport. Créez un job SAP et saisissez les instructions de traitement via l'onglet Forme ou directement dans l'onglet Traitement. Exemple :

:SET &RATE# = GET_VAR(VARA.CURRENCY_RATE,"RATE")
R3_MODIFY_VARIANT REPORT='Z_CURRENCY_ABAP',VARIANT='VARIANT1',SELNAME='RATE',KIND='P',LOW='&RATE#'
R3_ACTIVATE_REPORT REPORT='Z_CURRENCY_ABAP',VARIANT='VARIANT1'

Attention, la valeur déterminée pour le paramètre LOW est issue de l'objet Variable.

Workflow

Pour la dernière étape, créez un Workflow contenant les deux Jobs.

L'exécution du Workflow nécessite que le MBean utilisé soit enregistré auprès du serveur MBean. Enregistrez-le une fois à l'aide de la fonction de script JMX_CREATE_MBEAN. A l'inverse, JMX_UNREGISTER_MBEAN supprime un MBean déjà enregistré.