CallAPI pour MPE

La description suivante contient des informations et des conseils relatifs à l'utilisation de CallAPI pour MPE.

1. CallAPI et programme dédié

Vous pouvez exécuter CallAPI à partir de votre propre programme. Il est pour cela nécessaire d'avoir des connaissances du langage de programmation dans lequel ce programme a été écrit.

Dans le répertoire fourni (POSIX-Shell) se trouvent les fichiers nécessaires afin de créer un programme distinct :

Le fichier ./src/UCXBXXXC.C contient le code source C. La définition de structure correspondante est conservée dans le fichier .src/UCCALL3.H. Les éléments de la librairie de CallAPI nécessaires se trouvent dans le fichier ./lib/LIBUCXBMP6C.A. Pour compiler et lier le programme, le fichier de commande ./cmd/MAKEXX.MP6 est fourni. Ce fichier de commande est créé en fonction de la syntaxe MPE.

Copiez les fichiers à partir du répertoire fourni de Shell dans l'environnement MPE :

cp ./src/UCXBXXXC.C /UC4ACCT/SRC/UCXBXXXC.C
cp ./src/UCCALL3.H /UC4ACCT/SRC/UCCALL3.H
cp ./bin/LIBUCXBMP6C.A /UC4ACCT/LIB/LIBUCXBMP6C.A
cp ./cmd/MAKEXX.MP6 /UC4ACCT/CDM/MAKEXX.MP6

Le contenu des fichiers exemples doit être adapté à l'environnement système. Ensuite un programme distinct peut être créé et le CallAPI testé.

2. CallAPI et l'utilitaire

Le CD fourni comporte l'utilitaire UCXBMP6C qui peut être exécuté par la ligne de commande ou par un fichier exécutable. Le fichier de commande fourni est un modèle pour démarrer l'utilitaire dans l'environnement MPE.

Le répertoire de travail utilisé par l'utilitaire est défini par le fichier de configuration. Dans les exemples suivants qui montrent l'exécution de l'utilitaire dans l'environnement MPE, /UC4ACCT/UC4GRP/bin est utilisé comme répertoire de travail.

Exécution de l'utilitaire à partir du répertoire fourni:

RUN /UC4ACCT/UC4GRP/bin/UCXBMP6C;INFO="INI=/UC4ACCT/UC4GRP/bin/UCXBMP6C.ini" ...

Exécution de l'utilitaire à partir du Groupe "PRG":

RUN UCXBMP6C.PRG;INFO="INI=/UC4ACCT/UC4GRP/bin/UCXBMP6C.ini" ...

Le Script AE permet de définir les étapes de traitement et de les transmettre sous forme d'entrées standard lors de l'exécution du programme.

Exemples

Un fichier de commande MPE STARTEXX.MP6 est fourni comme modèle. Ce fichier doit être copié à partir du répertoire fourni dans le Groupe MPE (Valeur par défaut = CMD) Les instructions sont adaptées à chaque environnement d'utilisateur (groupes, fichier de configuration, stdin etc.).

Des groupes "PRG", "CMD", "SRC", "LIB" et "OBJ" distincts ont été prévus pour l'utilitaire et le programme d'exemple. Au cas où ces groupes ne sont pas encore définis pour le compte, ils peuvent être créés avec l'instruction
NEWGROUP
<Groupe>

Les fichiers sont ensuite transportés à partir du répertoire fourni dans le système de fichiers MPE.

Exemple 1

L'utilitaire est exécuté dans l'environnement MPE. Le nom du programme, le fichier de configuration, le fichier pour l'entrée standard et un nom d'objet sont affectés. L'entrée standard est créée et les instructions de traitement (Script AE) sont transmises par ligne. Ensuite, l'utilitaire est exécuté.

setvar prog,"UCXBMP6C.PRG"
setvar inifile,"/UC4ACCT/UC4GRP/bin/UCXBMP6C.ini"
setvar tmpin,"call.tmp"
setvar oname,"MPE_UC100E"
echo :set &jobnr = activate_uc_object(jobs,!oname) > !tmpin
echo :if &jobnr = '0000000' >> !tmpin
echo : stop msg,50,'Erreur lors du démarrage du Jobs !oname.' >> !tmpin
echo :else >> !tmpin
echo : stop nomsg,51,'Le Job a été démarré avec RunID &numjob.' >> !tmpin
echo :endif >> !tmpin
run !prog;info="INI=!inifile";STDIN=!tmpin

Exemple 2

L'utilitaire est exécuté à partir de POSIX-Shell avec le fichier de configuration comme paramètre. Les données de connexion sont lues à partir du fichier de configuration. L'utilitaire lit les instructions de traitement (Script AE) à partir de l'entrée standard.

./UCXBMP6C INI=./UCXBXXXC.ini << EOF_SCRIPT
:set &jobnr = activate_uc_object(jobs,MPE_JOB)
:if &jobnr = '0000000'
:   stop msg,50,'Erreur lors du démarrage du Job.'
:else
:   stop nomsg,51,'Le Job a été démarré avec RunID &numjob.'
:endif
EOF_SCRIPT

Exemple 3

L'utilitaire est exécuté à partir du Shell POSIX sans paramètre. Le système tente de trouver et d'utiliser le fichier de configuration ./UCXBMP6C.INI. L'utilitaire lit les instructions de traitement (Script AE) à partir de l'entrée standard.

./UCXBMP6C << EOF_SCRIPT
:set &jobnr = activate_uc_object(jobs,MPE_JOB)
:if &jobnr = '0000000'
:   stop msg,50,'Erreur lors du démarrage du Job.'
:else
:   stop nomsg,51,'Le Job a été démarré avec RunID &numjob..'
:endif
EOF_SCRIPT

 

Rubriques connexes :