Inclure l’information de débogage dans des objets programmes, est obligatoire pour de nombreux sites parce que c’est le moyen de démarrer immédiatement une session de débogage source si nécessaire. Cela donne aussi la possibilité de récupérer des sources perdues ou de vérifier la version actuelle d’un programme. Avant la V4R5, la méthode préférée pour s’assurer […]
Conseils pour la programmation et le développement – Débogage

Inclure l’information de débogage dans des objets programmes, est obligatoire pour de nombreux sites parce que c’est le moyen de démarrer immédiatement une session de débogage source si nécessaire. Cela donne aussi la possibilité de récupérer des sources perdues ou de vérifier la version actuelle d’un programme.
Avant la V4R5, la méthode préférée pour s’assurer d’un paramètre spécifique sur des commandes compile consistait soit à utiliser la commande Change Command Default (CHGCMDDFT) pour changer la valeur du paramètre (si le paramètre en question avait déjà une valeur par défaut), soit à créer une option PDM de la commande compile, qui incluait le mot-clé et la valeur de paramètre requis.
Le point de sortie Command Analyzer Change – introduit en V4R5 – a beaucoup changé les moyens de remplacer des paramètres de commande. En utilisant le point de sortie Command Analyzer Change, vous pouvez faire en sorte que les commandes compile suivantes donnent la possibilité de créer l’information de débogage avec l’objet programme :
•Create RPG Program (CRTRPGPGM)
•Create LP Program (CRTCLPGM)
•Create RPG Module (CRTRPGMOD)
•Create Bound RPG Program (CRTBNDRPG)
•Create CL Module (CRTCLMOD)
Vous créez le programme de sortie avec les commandes suivantes : CrtRpgMod Module( CXP001 ) DbgView( *LIST ) CrtPgm Pgm( CXP001 ) Module( CXP001 ) ActGrp( *CALLER ) Pour appeler le programme de sortie CXP001 Command Analyzer Change chaque fois qu’une commande compile est invoquée, vous devez l’enregistrer – les commandes de la figure 1 s’en chargent. Dans l’exemple, le programme de sortie se trouve dans la bibliothèque QGPL, mais vous pouvez modifier cela en fonction de vos besoins propres.
La commande Work with Registration Info (WRKREGINF) vérifie et change ou supprime l’enregistrement :
WrkRegInf ExitPnt( QIBM_QCA_CHG_COMMAND ), select option 8.
Si, pour une raison quelconque, vous distribuez vos objets programmes et voulez protéger le source contre tout affichage ou extraction, pensez à enlever l’information de programme observable de vos programmes, avant de les livrer, de la manière suivante :
CHGPGM PGM([<library>/]<program>) RMVOBJS(*ALL)
Si nécessaire, vous pouvez adapter le programme CXP001 pour l’utiliser comme un point de départ pour vos propres programmes de sortie Command Analyzer Change. (Pour télécharger le code source, www.itpro.fr Club abonnés.)
Par Carsten Flesburg
Téléchargez cette ressource

Comment accélérer la transformation des environnements de travail ?
Dans un monde professionnel en pleine mutation, la mobilité, l’efficacité énergétique, la sécurité et l’intelligence embarquée sont devenues des critères décisifs pour les équipements informatiques. Découvrez comment les nouveaux PC Microsoft Surface dotés des processeurs Snapdragon X Series s’imposent comme une réponse stratégique aux nouveaux enjeux IT.
Les articles les plus consultés
- Cybersécurité Active Directory et les attaques de nouvelle génération
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Et si les clients n’avaient plus le choix ?
- Les 6 étapes vers un diagnostic réussi
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
Les plus consultés sur iTPro.fr
- Les banques passent à l’action avec l’IA générative et le cloud
- DSI en assurance : gardien du temple ou moteur de la transformation ?
- Ransomware : persistance des cyberattaques à l’échelle mondiale
- Cybersécurité : l’IA générative rebat les cartes du cybercrime
- Le World Cyber Ranking, 1er classement mondial de la cybersécurité des entreprises
