EXIT POINT et la commande CALL

IBM i, configuration, commandes, ...
Répondre
OBR
Messages : 10
Enregistré le : mar. 29 avr. 2014, 15:05:25
Localisation : Pfastatt
Contact :

EXIT POINT et la commande CALL

Message par OBR »

Nous souhaitons pouvoir contrôler certains paramètres lors de n'importe quel CALL sur notre système. Pour cela, il y aurait pu avoir un EXIT POINT (QIBM_QCA_RTV_COMMAND) qui eut pu permettre de récupérer la commande. Sauf que la commande CALL est une des rares commandes a ne pas pouvoir être interceptée.

Nous avons donc tenté de créer une commande CALL personnalisée qui aurait pu se trouver dans une bibliothèque en SYSLIBL personnelle. Mais là, c'est la récupération des paramètres et donc leur restitution à la commande CALL de QSYS qui pose problème. En effet, nous arrivons à connaître le nombre de paramètres, leur contenu est concaténé, mais impossible de savoir quelle taille peut faire chaque paramètre.

Nous sommes donc à la recherche d'une idée pour intercepté la commande CALL avant qu'elle ne s'exécute pour effectuer un traitement particulier avant de lancer le CALL réel.

Merci à ceux qui auraient une idée.

cmasse
Site Admin
Messages : 813
Enregistré le : mer. 14 févr. 2007, 18:00:03
Localisation : Nantes
Contact :

CALL et VLDCKR

Message par cmasse »

Quand on définit une commande on lui associe un ppm de traitement, nommé CPP. On peut aussi lui associer un ppm chargé de vérifier la validité des paramètres AVANT le lancement du CPP, le validity checher (VLDCHK sur CRTCMD)....
Christian Massé (Volubis.fr)

OBR
Messages : 10
Enregistré le : mar. 29 avr. 2014, 15:05:25
Localisation : Pfastatt
Contact :

Message par OBR »

J'ai ajouté un programme dans le paramètre VLDCHK de la commande CALL. Ça n'a pas d'impact, tant que dans le paramètre PGM on y laisse les valeurs QSYS/QCLCALL.

En y plaçant un autre programme effectuant le CALL, ça fonctionne, mais on retrouve le problème du passage des paramètres, car ceux-ci ne sont pas distincts sauf si ils ont une taille inférieure à 32 caractères.

Mais plus aucune quote ne permet de déterminer le début et la fin du paramètre. La seule information fiable est le nombre de paramètres.

Répondre