CHGPGM
Modifier un programme
En bref
La commande CHGPGM (Modifier un programme) permet de modifier les attributs d'un programme sans recourir à une nouvelle compilation.
CHGPGM se lit CHG
(Modifier) + PGM.
Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.
Syntaxe minimale
CHGPGM PGM(…)
Paramètres
-
PGMProgramme obligatoire -
OPTIMIZEOptimisation du programme -
USRPRFProfil utilisateur -
USEADPAUTUtiliser droits adoptés -
RMVOBSEnlever infos observables -
PRFDTADonnées de profilage -
FRCCRTRecréation programme forcée -
TEXTTexte 'descriptif' -
LICOPTOptions microcode sous licence -
NBRTHDNombre d'unités d'exécution Number of threads -
ENBPFRCOLCollecte performance possible -
TERASPACEEspace mémoire à téraoctets -
STGMDLModèle d'espace mémoire
Astuce : dans une session 5250, tapez CHGPGM puis F4 pour
l'invite de saisie, et F1 sur un paramètre pour son aide.
Aide IBM i de la commande
Texte du F1, IBM i 7.5 en français
(bibliothèque QSYS)
Où s'exécute : Tous les environnements (*ALL)
Compatible multitâche : Non
La commande CHGPGM (Modifier un programme) permet de modifier les attributs d'un programme sans recourir à une nouvelle compilation. L'utilisateur peut également forcer la recréation d'un programme même si les attributs indiqués sont identiques aux attributs en cours.
Remarque :Si vous exécutez la commande CHGPGM sur des programmes OPM avec table de correspondance de répertoire (DMT) créés en V3R6M0 et que toutes les informations d'observabilité sont retirées, cette table est supprimée de l'objet programme. Un message s'affiche pour indiquer que la modification a été exécutée.
Restrictions :
- Vous devez disposer des droits de gestion d'objet (*OBJMGT) et d'utilisation (*USE) pour le programme à modifier.
- Vous devez au moins disposer des droits *USE pour la bibliothèque dans laquelle se trouve le programme à modifier. Vous devez également disposer des droits de suppression (*DLT) et d'ajout (*ADD) sur la bibliothèque pour pouvoir modifier la valeur de l'attribut d'optimisation (paramètre OPTIMIZE), de collecte des performances (paramètre ENBPFRCOL), de données de profilage (paramètre PRFDTA), d'options de microcode sous licence (paramètre LICOPT) et d'activation d'espace mémoire à téraoctets (paramètre TERASPACE), ou pour pouvoir forcer une recréation du programme par FRCCRT(*YES).
- Pour pouvoir modifier l'attribut de profil utilisateur (paramètre USRPRF) ou l'attribut d'utilisation des droits adoptés (paramètre USEADPAUT), vous-même ou l'un de vos profils de groupe devez être soit propriétaire du programme, soit détenteur des droits spéciaux sur tous les objets (*ALLOBJ) ainsi que des droits spéciaux de l'administrateur de la sécurité (*SECADM).
- Les programmes des bibliothèques QSYS et QGDDM ne peuvent pas être modifiés, excepté sauf si vous vous limitez au retrait des informations d'observabilité (paramètre RMVOBS).
- D'autres travaux exécutant le programme peuvent échouer soit si la recréation d'un programme est forcée par FRCCRT(*YES), soit si l'un des paramètres suivants est modifié : Optimisation du programme (OPTIMIZE),Utiliser droits adoptés (USEADPAUT),Collecte performance possible (ENBPFRCOL),Données de profilage (PRFDTA),Profil utilisateur (USRPRF),Options microcode sous licence (LICOPT),Espace mémoire à téraoctets (TERASPACE) ou Modèle d'espace mémoire (STGMDL).
Paramètres
| Mot-clé | Description | Valeurs possibles | Remarques |
|---|---|---|---|
| PGM | Programme | Nom d'objet qualifié | Obligatoire, clé, positionnel 1 |
| Qualificatif 1: Programme | Nom générique, nom, *ALL | ||
| Qualificatif 2: Biblio | Nom, *USRLIBL | ||
| OPTIMIZE | Optimisation du programme | *SAME, *YES, *FULL, *BASIC, *NONE, 40, 30, 20, 10, *NO | Facultatif |
| USRPRF | Profil utilisateur | *SAME, *USER, *OWNER | Facultatif |
| USEADPAUT | Utiliser droits adoptés | *SAME, *YES, *NO | Facultatif |
| RMVOBS | Enlever infos observables | Valeurs uniques: *SAME, *ALL, *NONE Autres valeurs (jusqu'à 4 répétitions): *CRTDTA, *DBGDTA, *BLKORD, *PRCORD |
Facultatif |
| PRFDTA | Données de profilage | *SAME, *NOCOL, *COL, *CLR, *APYBLKORD, *APYPRCORD, *APYALL | Facultatif |
| FRCCRT | Recréation programme forcée | *NO, *YES, *NOCRT | Facultatif |
| TEXT | Texte 'descriptif' | Valeur caractère, *SAME, *BLANK | Facultatif |
| LICOPT | Options microcode sous licence | Valeurs uniques: *SAME, *NONE Autres valeurs: Liste d'éléments |
Facultatif |
| Élément 1: Options | Valeur caractère | ||
| Élément 2: Action | *REPLACE, *ADD | ||
| NBRTHD | Nombre d'unités d'exécutionNumber of threads | 1-256, 1, *CALC | Facultatif |
| ENBPFRCOL | Collecte performance possible | Valeurs uniques: *SAME, *NONE, *PEP Autres valeurs: Liste d'éléments |
Facultatif |
| Élément 1: Niveau de collecte | *FULL, *ENTRYEXIT | ||
| Élément 2: Procédures | *ALLPRC, *NONLEAF | ||
| TERASPACE | Espace mémoire à téraoctets | *NO, *YES, *SAME | Facultatif |
| STGMDL | Modèle d'espace mémoire | *SAME, *INHERIT | Facultatif |
Programme (PGM)
Indique un ou plusieurs programmes dont les attributs sont à modifier. *USRLIBL ne peut pas être indiqué ou pris par défaut en tant que qualificatif de bibliothèque lorsque le qualificatif de programme est un nom générique ou *ALL.
Ce paramètre est obligatoire.
Qualificatif 1 : Programme
- nom
- Indiquez le nom du programme dont les attributs sont à modifier.
- nom-générique
- Indiquez le nom générique de tous les programmes dont les attributs sont à modifier. Ainsi, la totalité des programmes répondant à cette valeur de recherche générique sera sélectionnée. Un nom générique peut se présenter sous la forme d'une chaîne d'un ou plusieurs caractères suivis d'un astérisque (*).
- *ALL
- Tous les programmes de la bibliothèque indiquée sur lesquels vous disposez de droits (à l'exception des droits d'exclusion *EXCLUDE) sont sélectionnés en vue d'être modifiés.
Qualificatif 2 : Biblio
- *USRLIBL
- Le premier programme trouvé dans la liste des bibliothèques utilisateur est modifié.
- nom
- Indiquez le nom de la bibliothèque contenant le programme.
Optimisation du programme (OPTIMIZE)
Indique si le programme doit être optimisé (en supprimant les instructions redondantes). Si vous modifiez le niveau d'optimisation en cours d'un programme ILE (Integrated Language Environment), ce dernier est recréé par le système avec le nouveau niveau d'optimisation.
Le programme doit être recréé pour pouvoir modifier le niveau d'optimisation. Pour être admissibles à l'opération de recréation, les programmes OPM doivent être caractérisés par une observabilité complète et les programmes ILE doivent comporter toutes les données de création, lesquelles doivent être observables. Pour savoir si un programme est observable ou comporte toutes les données de création, lancez la commande DSPPGM (Afficher un programme).
- *SAME
- Les attributs d'optimisation du programme ne changent pas.
- *YES
- Le programme est au niveau d'optimisation le plus élevé pour l'édition et le langage pour lesquels il a été créé (édition indiquée au paramètre TGTRLS lors de la création du programme). Dans la plupart des cas, les programmes optimisés utilisent plus efficacement les ressources du système. Pour les programmes ILE, l'indication de OPTIMIZE(YES) produit le même effet que OPTIMIZE(40).
- *NO
- Le programme n'est pas optimisé. A ce niveau, lors du débogage de programmes ILE, les variables peuvent être affichées et modifiées.
- 40
- Ce niveau comprend toutes les optimisations effectuées au niveau d'optimisation 30 (*FULL). En outre, il comprend l'optimisation désactivant le traçage d'appel et d'instruction. Le traçage des modules créés à ce niveau d'optimisation ne peut donc pas être effectué. Le fait d'indiquer la valeur OPTIMIZE(40) pour les programmes OPM revient à spécifier la valeur OPTIMIZE(*YES).
- *FULL ou 30
- Une optimisation supplémentaire est appliquée, outre celle effectuée au niveau d'optimisation 20 (*BASIC). Lors du débogage du programme, les variables peuvent être affichées, mais ne peuvent pas être modifiées. Toutefois, la valeur affichée pour la variable lors du débogage peut différer de la valeur en cours de cette dernière. La valeur OPTIMIZE(*FULL) pour le programme OPM n'a aucun effet ; un message de diagnostic est envoyé.
- *BASIC ou 20
- Une optimisation est effectuée sur les programmes ILE. Lors du débogage de ces programmes à ce niveau d'optimisation, les variables peuvent être affichées, mais la valeur qui leur est associée peut être différente de la valeur en cours. Les variables peuvent également être modifiées, mais leur utilisation peut générer des résultats inattendus. Lorsque OPTIMIZE(*BASIC) est indiqué pour les programmes OPM, un message d'information est envoyé et l'optimisation n'est pas effectuée.
- *NONE ou 10
- Valeur identique à *NO.
Profil utilisateur (USRPRF)
Indique si le contrôle des droits effectué pendant l'exécution du programme ne concerne que l'utilisateur de ce programme (*USER) ou bien à la fois l'utilisateur et le propriétaire (*OWNER). Les droits mentionnés dans le profil utilisateur ou bien dans le profil utilisateur et dans le profil propriétaire servent à contrôler l'utilisation des objets par le programme, y compris les droits du programme sur chaque objet.
Pour pouvoir modifier l'attribut de profil utilisateur, vous-même ou l'un de vos profils de groupe devez être soit propriétaire du programme, soit détenteur des droits spéciaux sur tous les objets (*ALLOBJ) ainsi que des droits spéciaux de l'administrateur de la sécurité (*SECADM).
Le programme doit être recréé pour pouvoir modifier le profil utilisateur. Pour être admissibles à l'opération de recréation, les programmes OPM doivent être caractérisés par une observabilité complète et les programmes ILE doivent comporter toutes les données de création, lesquelles doivent être observables. Pour savoir si un programme est observable ou comporte toutes les données de création, lancez la commande DSPPGM (Afficher un programme).
- *SAME
- L'attribut du profil utilisateur ne change pas.
- *USER
- Le programme s'exécute sous le profil de l'utilisateur qui l'a démarré.
- *OWNER
- Le programme est exécuté avec les profils de son propriétaire et de son utilisateur. L'ensemble des droits sur les objets des deux profils est utilisé pour rechercher les objets et y accéder lors de l'exécution du programme. Les droits du profil de groupe du profil du propriétaire ne sont pas inclus.
Utiliser droits adoptés (USEADPAUT)
Indique si les droits adoptés provenant de programmes précédents de la liste d'appel seront utilisés ou non par ce programme.
Pour pouvoir modifier l'attribut d'utilisation des droits adoptés, vous-même ou l'un de vos profils de groupe devez être soit propriétaire du programme, soit détenteur des droits spéciaux sur tous les objets (*ALLOBJ) ainsi que des droits spéciaux de l'administrateur de la sécurité (*SECADM).
Le programme doit être recréé pour qu'il soit possible de modifier l'attribut de droits adoptés. Pour être admissibles à l'opération de recréation, les programmes OPM doivent être caractérisés par une observabilité complète et les programmes ILE doivent comporter toutes les données de création, lesquelles doivent être observables. Pour savoir si un programme est observable ou comporte toutes les données de création, lancez la commande DSPPGM (Afficher un programme).
- *SAME
- Cet attribut ne change pas.
- *YES
- Les droits adoptés provenant de niveaux d'appel précédents seront utilisés lors de l'exécution de ce programme. *NO est utilisé si une liste d'autorisation est indiquée pour la valeur système QUSEADPAUT alors que l'utilisateur ne dispose pas de droits sur cette liste.
- *NO
- Les droits adoptés provenant de niveaux d'appel précédents ne seront pas utilisés lors de l'exécution de ce programme.
Enlever infos observables (RMVOBS)
Indique les informations d'observabilité du programme à retirer.
- *SAME
- Les informations d'observabilité du programme ne sont pas enlevées.
- *ALL
- Toutes les informations d'observabilité du programme sont enlevées, dans la mesure du possible. Si le programme requiert les informations d'observabilité pour le contrôle de son fonctionnement, ces informations ne sont pas enlevées.
REMARQUES :
- Si les données de profilage d'ordre de bloc ont été précédemment appliquées à ce programme ILE, l'attribution de la valeur *ALL au paramètre RMVOBS enlève la propriété d'observabilité *BLKORD.
- Le retrait de la propriété d'observabilité aux programmes OPM compilés avec OPTION(*LSTDBG) n'enlève pas complètement les informations de débogage. Pour les enlever toutes, recompilez le programme avec le paramètre OPTION(*NOLSTDBG).
Voir aussi les remarques concernant la valeur spéciale *CRTDTA.
- *NONE
- Aucune information d'observabilité du programme n'est enlevée.
- *DBGDTA
- Les informations de débogage sont supprimées du programme ILE. Ces informations sont nécessaires pour permettre la mise au point du programme. Lorsque RMVOBS(*DBGDTA) est indiqué pour les programmes OPM, un message d'information est envoyé et l'opération n'est pas effectuée.
- *CRTDTA
- L'observabilité des données de création est enlevée d'un programme ILE. Cette observabilité est nécessaire pour recréer le programme à l'aide de la commande CHGPGM ou pour modifier les attributs de programme via l'un quelconque des paramètres de commande OPTIMIZE, USRPRF, USEADPAUT, ENBPFRCOL, PRFDTA, LICOPT, TERASPACE ou STGMDL. Lorsque RMVOBS(*CRTDTA) est indiqué pour les programmes OPM, un message d'information est envoyé et l'opération n'est pas effectuée.
REMARQUES :
- *CRTDTA ne peut pas être spécifié si le programme ILE est activé pour la collecte de données de profilage.
- Des données de création (observables ou non) sont requises pour convertir des programmes pour le passage d'une technologie à une autre (par exemple, de CISC à RISC).
- Certains programmes conservent des données de création non observables même lorsque les données observables sont enlevées. Les programmes OPM créés pour l'édition V5R1M0 ou une édition ultérieure (paramètre TGTRLS lors de la création du programme), contiendront des données de création non observables même si l'observabilité de *ALL est enlevé. Les programmes ILE créés uniquement à partir de modules conçus pour l'édition V5R1M0 ou une édition ultérieure contiendront toujours des données de création non observables, même si l'observabilité de *ALL ou de *CRTDTA est enlevée.
- Si le programme a été créé pour une édition antérieure à V5R1M0 ou si ce programme contient des modules liés créés pour une édition antérieure à V5R1M0, l'observabilité de *ALL ou de *CRTDTA ne peut pas être enlevée.
- Dans le cas de programmes CL OPM créés avec ALWRTVSRC(*YES) et des programmes ILE contenant des modules CL liés créés avec ALWRTVSRC(*YES), le source CL correspondant peut être extrait à l'aide de la commande RTVCLSRC (Extraire un source CL), même après retrait de l'observabilité de *ALL ou de *CRTDTA.
- *BLKORD
- Les données de profilage par ordre de procédure sont enlevées du programme ILE. Un message d'information est généré et aucune observabilité n'est supprimée lorsque RMVOBS(*BLKORD) est spécifié pour les programmes OPM.
- *PRCORD
- Les données de profilage par ordre de procédure sont enlevées du programme ILE. Un message d'information est généré et aucune observabilité n'est enlevée lorsque RMVOBS(*PRCORD) est spécifié pour les programmes OPM.
Données de profilage (PRFDTA)
Indique l'attribut de données de profilage de programme pour les programmes ILE. Le profilage de programme est une technique d'optimisation évoluée qui permet de réorganiser les procédures et le code des procédures à partir de données statistiques (données de profilage). Un message d'information est envoyé et *SAME est utilisé si une valeur autre que celle-ci est spécifiée au paramètre PRFDTA pour les programmes OPM.
Le programme doit être recréé pour pouvoir modifier l'attribut de données de profilage. Pour être admissible à l'opération de recréation, le programme doit comporter toutes les données de création lesquelles doivent être observables. Pour savoir si le programme comporte toutes les données de création, lancez la commande DSPPGM (Afficher un programme).
- *SAME
- La valeur reste inchangée.
- *NOCOL
- La collecte des données de profilage n'est pas activée et les données de profilage ne sont pas appliquées.
- *COL
- La collecte des données de profilage est activée pour les modules admissibles.
Remarque :Le fait de spécifier *COL enlève toutes les données de profilage appliquées si celles-ci sont appliquées au programme ILE.
- *CLR
- Toutes les données de profilage collectées précédemment sont supprimées. Le programme reste activé pour la collecte de données de profilage.
- *APYBLKORD
- Les données de profilage d'ordre de bloc sont appliquées à chaque module lié à ce programme ILE précédemment activé pour la collecte de données de profilage. La collecte des données de profilage n'est plus activée.
- *APYPRCORD
- Les données de profilage d'ordre de bloc et d'ordre des procédures sont appliquées. La collecte des données de profilage n'est plus activée.
- *APYALL
- Les données de profilage d'ordre de bloc et d'ordre des procédures sont appliquées. La collecte des données de profilage n'est plus activée.
Recréation programme forcée (FRCCRT)
Indique si une recréation du programme est forcée.
Pour être admissibles à l'opération de recréation, les programmes OPM doivent être caractérisés par une observabilité complète et les programmes ILE doivent comporter toutes les données de création observables. Pour savoir si un programme est observable ou comporte toutes les données de création, lancez la commande DSPPGM (Afficher un programme). La commande CHGPGM ne permet pas d'utiliser des données de création non observables.
- *NO
- La recréation du programme n'est pas forcée, excepté si l'un des paramètres suivants à été modifié : Optimisation du programme (OPTIMIZE), Utiliser droits adoptés (USEADPAUT), Collecte performance possible (ENBPFRCOL), Données de profilage (PRFDTA), Profil utilisateur (USRPRF), Options microcode sous licence (LICOPT), Espace mémoire à téraoctets (TERASPACE) ou Modèle d'espace mémoire (STGMDL). Cette option permet au système de déterminer si une modification est nécessaire.
- *YES
- La recréation du programme est forcée.
- *NOCRT
- Aucune recréation de programme n'est effectuée. Si vous tentez de modifier un attribut d'un programme nécessitant implicitement la recréation de celui-ci, un message d'erreur est émis et aucun attribut du programme n'est modifié. La modification de l'un des paramètres suivants peut entraîner la recréation du programme : Optimisation du programme (OPTIMIZE), Utiliser droits adoptés (USEADPAUT), Collecte performance possible (ENBPFRCOL), Données de profilage (PRFDTA), Profil utilisateur (USRPRF), Options microcode sous licence (LICOPT), Espace mémoire à téraoctets (TERASPACE) ou Modèle d'espace mémoire (STGMDL).
Texte 'descriptif' (TEXT)
Texte décrivant brièvement l'objet.
- *SAME
- Le texte reste inchangé.
- *BLANK
- Aucun texte n'est indiqué.
- 'descriptif'
- Indiquez un texte, entre guillemets simples, comportant 50 caractères au maximum.
Options microcode sous licence (LICOPT)
Indique les options de compilation individuelles. Ce paramètre est destiné au programmeur expérimenté qui est à même d'évaluer les avantages et les inconvénients de chaque option de compilateur sélectionnée. Indiquer une valeur autre que *SAME pour les options du microcode sous licence d'un programme ILE entraîne la recréation de ce dernier par le système.
Le programme doit être recréé pour pouvoir modifier les options de microcode sous licence. Pour être admissible à l'opération de recréation, le programme doit comporter toutes les données de création lesquelles doivent être observables. Pour savoir si le programme comporte toutes les données de création, lancez la commande DSPPGM (Afficher un programme).
Remarque : Pour plus d'informations sur les options LICOPT, reportez-vous au manuel ILE Concepts, SC41-5606
Elément 1 : Options
- *SAME
- Si l'objet programme est recréé, les options de compilation LICOPT existantes sont utilisées pour cette opération. Sinon, les options de compilation LICOPT restent inchangées.
- *NONE
- La recréation du programme est forcée et aucune option LICOPT n'est utilisée.
- valeur-alphanumérique
- Indique une ou plusieurs options de compilation LICOPT. Indiquer une autre valeur pour les options du microcode sous licence d'un programme ILE entraîne la recréation de ce dernier par le système.
Elément 2 : Action
- *REPLACE
- Les options du microcode sous licence existantes pour les modules liés sont remplacées par les valeurs spécifiées.
- *ADD
- Les options du microcode sous licence spécifiées sont ajoutées à la fin de la chaîne d'options existante pour chaque module lié. En cas de conflit entre les valeurs d'option du microcode sous licence, la dernière valeur spécifiée prend la priorité sur les autres.
Nombre d'unités d'exécution (NBRTHD)Number of threads (NBRTHD)
Indique le nombre maximal d'unités d'exécution à utiliser pour recréer les modules liés. Si vous indiquez un nombre supérieur à 1, la commande peut tirer parti des cycles de CPU disponibles, en particulier sur un système multiprocesseur.
- 1
- Une unité d'exécution unique est utilisée lors de la création de modules liés.
- *CALC
- Le système calcule un nombre maximal d'unités d'exécution raisonnable à utiliser pour ne pas employer trop de ressources. Généralement, il s'agit d'une ou de deux unités d'exécution pour chaque processeur disponible.
- 1-256
- Indiquez le nombre maximal d'unités d'exécution à utiliser.
Collecte performance possible (ENBPFRCOL)
Ce paramètre est obsolète.
Espace mémoire à téraoctets (TERASPACE)
Indique si l'objet programme est activé pour fonctionner avec la mémoire de l'espace mémoire à téraoctets. Cela inclut la mémoire de l'espace mémoire à téraoctets allouée par l'objet module et les paramètres transmis à partir d'un autre programme activé pour l'espace mémoire à téraoctets et les objets programme de service.
Si le programme modifié a été créé pour TGTRLS(V6R1M0) ou version supérieure, le programme est activé pour l'espace mémoire à téraoctets quelle que soit la valeur indiquée pour ce paramètre. Si le programme modifié a été créé pour une édition antérieure à l'édition V6R1M0, la valeur TERASPACE définie est stockée dans le programme et est utilisée lorsque le programme est ramené à une édition antérieure à l'édition V6R1M0. Cependant, à partir de l'édition VR6R1M0, le programme est activé pour l'espace mémoire à téraoctets.
Si le programme modifié possède une valeur d'édition cible (TGTRLS) antérieure à l'édition V6R1M0, l'indication d'une valeur différente de la valeur d'attribut TERASPACE actuelle entraîne la recréation du programme et le stockage de la valeur indiquée dans les informations de modèle objet.
- *SAME
- La valeur du paramètre TERASPACE reste inchangée.
- *NO
- Si le programme a été créé pour une édition antérieure à V6R1M0, l'intégration de l'espace mémoire à téraoctets prend la valeur No. Dans le cas d'un programme ILE, l'intégration de l'espace mémoire à téraoctets pour les modules liés admissibles prend également la valeur No. Pour pouvoir être passé à TERASPACE(*NO), le module lié doit être un modèle d'espace adressable unique.
- *YES
- Si le programme a été créé pour une édition antérieure à l'édition V6R1M0, l'activation de l'espace mémoire à téraoctets prend la valeur Oui. Dans le cas d'un programme ILE, l'activation de l'espace mémoire à téraoctets pour les modules liées prend la valeur Yes. L'édition du module lié doit être égale ou supérieure à V4R4M0, avec passage à la valeur TERASPACE(*YES).
Modèle d'espace mémoire (STGMDL)
Indique l'attribut de modèle d'espace mémoire du programme.
- *SAME
- Le modèle d'espace mémoire du programme reste inchangé.
- *INHERIT
- Le programme peut utiliser soit un modèle d'espace adressable unique, soit un espace mémoire à téraoctets. Le type de mémoire utilisé dépend du type de mémoire requis par l'appelant.
Restrictions :
- Le programme doit être un programme lié ILE (Integrated Language Environment).
- L'attribut de groupe d'activation du programme doit être *CALLER.
- Le modèle d'espace mémoire en cours pour le programme ne peut pas être *TERASPACE.
- L'édition cible du programme doit être V6R1M0 ou une édition ultérieure.
- L'édition cible de tous les modules liés au sein du programme doit être V5R1M0 ou une édition ultérieure.
Exemples
Exemple 1 : Optimisation d'un programme
CHGPGM PGM(PROG1/SERVICE) OPTIMIZE(*YES) USRPRF(*OWNER)
Le programme SERVICE situé dans la bibliothèque PROG1 est optimisé et le profil utilisateur sous lequel il est traité est modifié pour inclure celui du propriétaire du programme. Ce programme est recréé uniquement si les attributs indiqués sont différents de ceux du programme en cours.
Exemple 2 : Modification du texte dans un programme
CHGPGM PGM(*USRLIBL/KNUTE) TEXT('Description de programme')
Cette commande modifie le texte du programme KNUTE. La section utilisateur de la liste des bibliothèques est utilisée pour trouver le programme.
Exemple 3 : Optimisation de programmes multiples
CHGPGM PGM(PROG1/ABC*) OPTIMIZE(*YES)
Tous les programmes de la bibliothèque PROG1 dont les noms commencent par ABC, sont portés à leur niveau maximal d'optimisation.
Exemple 4 : Modification de texte de programmes multiples
CHGPGM PGM(PROG2/*ALL) TEXT('Texte générique')
Cette commande modifie le texte de tous les programmes de la bibliothèque PROG2 en 'Texte générique'.
Exemple 5 : Activation de la collecte des données de profilage
CHGPGM PGM(PROG1/PROFPGM) PRFDTA(*COL)
Cette commande active la collecte des données de profilage pour le programme PROFPGM situé dans la bibliothèque PROG1. Si ce programme détient des données de profilage validées avant l'émission de cette commande, toutes ces données sont alors retirées.
Exemple 6 : Application des données de profilage
CHGPGM PGM(PROG1/PROFPGM) PRFDTA(*APYALL)
Cette commande valide la demande de bloc et les données de profilage de la demande de procédure dans le programme PROFPGM situé dans la bibliothèque PROG1. La collecte des données de profilage n'est plus activée pour le programme PROFPGM situé dans la bibliothèque PROG1.
Messages d'erreur
Messages *ESCAPE
- CPF0540
- Valeur *USRLIBL non admise avec nom générique ou *ALL.
- CPF0541
- Le programme &1 n'est pas modifié dans la bibliothèque &2.
- CPF0542
- Le programme &1 de la bibliothèque &2 n'est pas modifié.
- CPF0543
- Utilisateur &3 non autorisé à modifier &1.
- CPF0544
- Les programmes des bibliothèques QSYS et QGDDM ne peuvent pas être modifiés.
- CPF0545
- Aucun programme n'a été modifié.
- CPF0546
- &1 modifiés. &2 ne nécessitaient pas de modification. &3 non modifiés.
- CPF0547
- Impossible de supprimer les informations observables.
- CPF0549
- Utilisateur &3 non autorisé à modifier &1.
- CPF223C
- Non autorisé à modifier attribut USEADPAUT pour &1 de &2 type *&3.
- CPF223E
- Echec de la vérification des droits sur l'attribut d'utilisation de droits adoptés.
- CPF5D0A
- Impossible de supprimer l'observabilité de l'objet &1, type *&3.
- CPF5D40
- *&3 &2/&1 ne peut pas être STGMDL(*INHERIT).
- CPF9803
- Impossible d'allouer l'objet &2 de la bibliothèque &3.
- CPF9804
- Objet &2 dans bibliothèque &3 endommagé.
- CPF9806
- Impossible d'exécuter fonction pour objet &2 de &3.
- CPF9810
- Bibliothèque &1 non trouvée.
- CPF9811
- Programme &1 non trouvé dans la bibliothèque &2.
- CPF9818
- Objet &2 non créé dans la bibliothèque &3.
- CPF9819
- Objet &2 non créé dans la bibliothèque &3.
- CPF9820
- Non autorisé à utiliser la bibliothèque &1.
- CPF9821
- Non autorisé au programme &1 de &2.
- CPF9830
- Allocation de la bibliothèque &1 impossible.
© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.