> Tech > Identifier l’origine d’un programme CL appelé.

Identifier l’origine d’un programme CL appelé.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Plus de 99,9 % de mes appels de programmes sont non qualifiés, comptant sur la liste de bibliothèques. Mais, dans quelques rares cas, je veux savoir d'où le programme est appelé.
Supposons, par exemple, que j'ai différents environnements, chacun avec sa propre bibliothèque « données + programmes spéciaux » et

Identifier l’origine d’un programme CL appelé.

certaines
bibliothèques de programmes communes.
La sélection de l’environnement
devrait être faite par le programme
initial de votre profil
utilisateur (sur le paramètre INLPGM
sur l’objet profil utilisateur) ou sur le
paramètre INLGRPPGM de la commande
TFRGRPJOB 5Transfer to
Group Job). Je pourrais écrire un programme
individuel pour chaque environnement,
mais il est plus élégant
d’utiliser des copies identiques du programme
dans chaque bibliothèque
d’environnement puis de laisser le programme
ajouter la bibliothèque d’environnement
d’abord à  la liste de bibliothèques.
Mais ensuite, comment savoir
à  partir de quelle bibliothèque le
programme est appelé ? Voici une solution :

OVRPRTF    FILE(QPPGMDMP)
TOFILE(QSYS/QDARCDSP)
/* An OS/400 randomly chosen Display File
/*
DMPCLPGM
MONMSG MSGID(CPF0570)
/*Will always occur*/
RCVMSG MSGTYPE(*EXCP) RMV(*YES)
MSGDTA(&MSGDTA)
CHGVAR VAR(&RUNFROMLIB)
VALUE(%SST(&MSGDTA 11 10))
DLTOVR FILE(QPPGMDMP)
La première ligne effectue un remplacement
dans un fichier écran, qui
garantit que la deuxième ligne
échouera avec CPF0570. Si l’on exécute
la commande DSPMSGD
CPF0570, on verra que la bibliothèque
du programme CL courant fait partie
des données de messages. C’est ce qui
est extrait dans &RUNFROMLIB aux
lignes 9 et 10. La dernière ligne sert
simplement à  s’assurer que l’on pourra
effectuer un DMPCLPGM réel ultérieurement.

Jan Jorgensen
Programmeur
Odense, Danemark

Téléchargez cette ressource

Guide de Sécurité IA et IoT

Guide de Sécurité IA et IoT

Compte tenu de l'ampleur des changements que l'IA est susceptible d'entraîner, les organisations doivent élaborer une stratégie pour se préparer à adopter et à sécuriser l'IA. Découvrez dans ce Livre blanc Kaspersky quatre stratégies efficaces pour sécuriser l'IA et l'IoT.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010