Aller au contenu

DSPPGMREF

Afficher références programmes

En bref

La commande DSPPGMREF (Afficher les références de programmes) fournit une liste des objets système référencés par les programmes indiqués.

DSPPGMREF se lit DSP (Afficher) + PGMREF. Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.

Syntaxe minimale

DSPPGMREF PGM(…)

Paramètres

Astuce : dans une session 5250, tapez DSPPGMREF 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 DSPPGMREF (Afficher les références de programmes) fournit une liste des objets système référencés par les programmes indiqués. En fonction des types de programmes, vous obtenez les objets système suivants :

BAS
*FILE (à description externe) et *PGM
C
aucune information sur les programmes en langage C, à l'exception des programmes en langage C ILE (CLE)
CBLLE
*FILE, *PGM et *SRVPGM
CLP
*FILE, *PGM et *DTAARA
CLE
*SRVPGM
CLLE
*FILE, *PGM, *DTAARA et *SRVPGM
CBL
*FILE et *PGM (noms de littéraux dans les commandes CALL)
CSP
*FILE, *PGM, *MSGF, *CSPMAP et *CSPTBL
PAS
aucune information sur les programmes PASCAL
PLI
*FILE et *PGM
RPG
*FILE, *DTAARA et *PGM
RPGLE
*FILE, *PGM, *DTAARA et *SRVPGM
QRYDFN
*FILE

Ces informations peuvent être affichées, imprimées ou stockées dans un fichier base de données en sortie.

Si les informations sont affichées ou imprimées, une liste (par bibliothèque) des programmes indiqués autorisés par l'utilisateur, ainsi que les objets référencés par chaque programme, est créée. Quant aux fichiers, les informations relatives au mode d'utilisation de chaque fichier (entrée, sortie, mise à jour, non spécifié ou toute combinaison de ces quatre) sont également affichées ou imprimées.

Si les informations sont écrites dans un fichier base de données, ce dernier aura un format d'enregistrement intitulé QWHDRPPR. Les zones du format d'enregistrement QWHDRPPR sont identiques aux zones du format QWHDRPPR fourni par IBM dans le fichier QADSPPGM de la bibliothèque QSYS. Les informations suivantes sont contenues dans le fichier base de données.

  • Le nom du programme et la description de texte associée.
  • Le nom de la bibliothèque contenant le programme.
  • Le nombre d'objets référencés par le programme.
  • Le nom qualifié de l'objet système.
  • Les dates d'extraction des informations.
  • Le type de l'objet référencé.

Quant aux fichiers, l'enregistrement contient les zones supplémentaires suivantes :

  • Le nom du fichier dans le programme (éventuellement différent du nom de l'objet système si une substitution était en vigueur lors de la création du programme).
  • L'utilisation du fichier par le programme (1=entrée, 2=sortie, 4=mise à jour, 8=non indiqué, ou un nombre représentant une combinaison de ces quatre ; par exemple, un code de 11 est une combinaison de 1, 2 et 8).
  • Le nombre des formats d'enregistrements référencés, s'il y a lieu.
  • Le nom du format d'enregistrement utilisé par le fichier et son identificateur de niveau de format d'enregistrement.
  • Le nombre des zones référencées pour chaque format.

Remarque :Cette commande affiche la liste des objets référencés lorsque l'objet est créé ou mis à jour à l'aide des commandes UPDPGM ou UPDSRVPGM. Il se peut que les noms et les bibliothèques d'objets référencés affichés soient différents des noms réels des objets, dans la mesure où ces informations sont stockées lors de la création du programme. Des entrées peuvent être ajoutées lors de la mise à jour des programmes ILE ou de service à l'aide des commandes UPDPGM ou UPDSRVPGP. Si l'objet a été déplacé depuis la création du programme ou qu'une substitution était en vigueur lors de la création, les noms répertoriés peuvent être différents des noms réels. S'agissant d'une définition de requête, cette commande répertorie les fichiers référencés lors de la création ou de la mise à jour de l'objet en utilisant certaines des commandes de requête (Query) pour IBM i.

Restrictions :

  • Vous devez disposer du droit opérationnel sur l'objet (*OBJOPR) pour le programme. De même, les programmes sont recherchés uniquement dans les bibliothèques pour lesquelles vous disposez du droit d'exécution (*EXECUTE). Ces bibliothèques font partie de celles indiquées par le qualificatif de bibliothèque.

Paramètres

Mot-clé Description Valeurs possibles Remarques
PGM Programme Nom d'objet qualifié Obligatoire, positionnel 1
Qualificatif 1: Programme Nom générique, nom, *ALL
Qualificatif 2: Biblio Nom, *LIBL, *CURLIB, *USRLIBL, *ALLUSR, *ALL
OUTPUT Sortie *, *PRINT, *OUTFILE Facultatif, positionnel 2
OBJTYPE Type d'objet Valeurs uniques: *ALL
Autres valeurs (jusqu'à 5 répétitions): *PGM, *SQLPKG, *SRVPGM, *MODULE, *QRYDFN
Facultatif
OUTFILE Fichier recevant la sortie Nom d'objet qualifié Facultatif
Qualificatif 1: Fichier recevant la sortie Nom
Qualificatif 2: Biblio Nom, *LIBL, *CURLIB
OUTMBR Options pour membre de sortie Liste d'éléments Facultatif
Élément 1: Membre recevant la sortie Nom, *FIRST
Élément 2: Remplacement ou ajout enregs *REPLACE, *ADD

Programme (PGM)

Indique les programmes dont les informations sont affichées.

Ce paramètre est obligatoire.

Qualificatif 1 : Programme

*ALL
Fournit les informations relatives à tous les programmes et définitions de requête contenus dans la ou les bibliothèques.
nom
Indiquez le nom complet d'un programme pour obtenir les informations correspondantes.
nom-générique
Indiquez un nom de programme générique. Des informations s'affichent pour tous les programmes dont le nom commence par les caractères indiqués.

Qualificatif 2: Biblio

*LIBL
La recherche porte sur toutes les bibliothèques de la liste des bibliothèques de l'unité d'exécution en cours jusqu'à ce que la première occurrence soit trouvée.
*CURLIB
La recherche porte sur la bibliothèque en cours de l'unité d'exécution. Si aucune bibliothèque n'est définie comme bibliothèque en cours pour l'unité d'exécution, la recherche porte sur la bibliothèque QGPL.
*USRLIBL
S'il existe un poste de bibliothèque en cours dans la liste des bibliothèques de l'unité d'exécution en cours, la recherche porte sur celle-ci ainsi que sur les bibliothèques de la partie utilisateur de la liste des bibliothèques. Dans le cas contraire, la recherche porte uniquement sur les bibliothèques de la partie utilisateur de la liste des bibliothèques.
*ALLUSR
La recherche porte sur toutes les bibliothèques utilisateur. La recherche porte sur toutes les bibliothèques dont le nom ne commence pas par la lettre Q, à l'exception des bibliothèques suivantes :

#CGULIB     #DSULIB     #SEULIB
#COBLIB     #RPGLIB
#DFULIB     #SDALIB

Bien que les bibliothèques Qxxx suivantes soient fournies par IBM, elles contiennent généralement des données utilisateur qui sont fréquemment modifiées. Par conséquent, ces bibliothèques sont considérées comme des bibliothèques utilisateur et sont donc recherchées :

QDSNX       QRCLxxxxx   QUSRDIRDB   QUSRVI
QGPL        QSRVAGT     QUSRIJS     QUSRVxRxMx
QGPL38      QSYS2       QUSRINFSKR  QWQCENT
QMGTC       QSYS2xxxxx  QUSRNOTES   QWQREPOS
QMGTC2      QS36F       QUSROND
QMPGDATA    QUSER38     QUSRPOSGS
QMQMDATA    QUSRADSM    QUSRPOSSA
QMQMPROC    QUSRBRM     QUSRPYMSVR
QPFRDATA    QUSRDIRCF   QUSRRDARS
QRCL        QUSRDIRCL   QUSRSYS

  1. 'xxxxx' représente le numéro de l'ASP principal.
  2. L'utilisateur peut créer une bibliothèque de nom différent, au format QUSRVxRxMx, pour chacune des éditions précédentes prises en charge par IBM, afin d'y stocker les commandes utilisateur à compiler dans un programme CL pour une édition précédente. En ce qui concerne la bibliothèque utilisateur QUSRVxRxMx, VxRxMx correspond à une version, édition et niveau de modification précédents encore admis par IBM.
*ALL
La recherche porte sur toutes les bibliothèques du système, y compris QSYS.
nom
Indiquez le nom de la bibliothèque dans laquelle doit s'effectuer la recherche.

Sortie (OUTPUT)

Indique la destination de la sortie générée par la commande.

*
La sortie est affichée (s'il s'agit d'un travail interactif) ou imprimée avec la sortie spoule du travail (s'il s'agit d'un travail par lots).
*PRINT
Le résultat est placé dans un fichier spoule de la file d'attente en sortie du travail.
*OUTFILE
La sortie est dirigée vers le fichier base de données indiqué à l'invite Fichier recevant la sortie (paramètre OUTFILE).

Type d'objet (OBJTYPE)

Indique le type de l'objet pour lequel les informations sont affichées.

*PGM
Seules les premières informations relatives au programme sont affichées.
*ALL
Toutes les versions des informations relatives au programme et des informations relatives aux modules SQL sont affichées.
*SQLPKG
Seules les informations relatives aux modules SQL sont affichées.
*SRVPGM
Les informations relatives au programme de service sont affichées.
*MODULE
Les informations relatives au module sont affichées.
*QRYDFN
Les informations relatives à la définition de requête sont affichées.

Fichier recevant la sortie (OUTFILE)

Indique le fichier de base de données vers lequel la sortie générée par la commande est dirigée. Si ce fichier n'existe pas, la commande en crée un dans la bibliothèque précisée. S'il existe déjà, les droits publics sur le fichier sont les mêmes que le droit de création de la pour la bibliothèque contenant le fichier. Pour afficher ce droit, utilisez la commande DSPLIBD (Afficher une description de bibliothèque).

Qualificatif 1 : Fichier recevant la sortie

nom
Indiquez le nom du fichier de base de données vers lequel la sortie générée de la commande est dirigée.

Qualificateur 2: Biblio

*LIBL
Le fichier est recherché dans la liste des bibliothèques. Si le système ne le trouve pas, il en crée un dans la bibliothèque en cours. S'il n'existe pas de bibliothèque en cours, le fichier est créé dans la bibliothèque QGPL.
*CURLIB
Bibliothèque de l'unité d'exécution en cours utilisée pour localiser le fichier. Si cette bibliothèque n'est pas indiquée, QGPL est utilisée par défaut.
nom
Indiquez le nom de la bibliothèque dans laquelle doit s'effectuer la recherche.

Remarque :Le format du fichier de sortie doit être identique au QWHDRPPR du fichier système QADSPPGM dans la bibliothèque QSYS. Pour plus d'informations sur le format OUTFILE, reportez-vous au manuel Rubrique Base de données de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.

Options pour membre de sortie (OUTMBR)

Indique le nom du membre de fichier base de données dans lequel est envoyée la sortie de la commande.

Elément 1 : Membre recevant la sortie

*FIRST
Le premier membre du fichier reçoit la sortie. Si OUTMBR(*FIRST) est indiqué et que le membre n'existe pas, le système en crée un du nom indiqué à l'invite Fichier recevant la sortie (paramètre OUTFILE). Si le membre existe, vous avez la possibilité d'ajouter de nouveaux enregistrements à la fin du membre existant ou de le mettre à blanc et de lui ajouter les nouveaux enregistrements.
nom
Indiquez le nom du membre de fichier destiné à recevoir la sortie. Si aucun membre de ce nom n'existe, le système le crée.

Elément 2 : Remplacement ou ajout enregs

*REPLACE
Le système met à blanc le membre existant et ajoute les nouveaux enregistrements.
*ADD
Le système ajoute les nouveaux enregistrements à la suite des enregistrements existants.

Exemples

Exemple 1 : Enregistrement d'une liste de programmes

DSPPGMREF   PGM(LIBRARY1/*ALL)  OUTPUT(*OUTFILE)
            OUTFILE(LIB2/FILE2)

Cette commande permet de créer une liste de tous les programmes autorisés détectés dans la bibliothèque LIBRARY1, ainsi que des fichiers et des autres objets système auxquels ces programmes font référence. Elle enregistrer la liste dans un fichier base de données nommé FILE2 dans LIB2.

Exemple 2 : Impression d'une liste d'objets

DSPPGMREF   PGM(LIBRARY1/BILLING)  OUTPUT(*PRINT)

Cette commande permet de créer une liste d'objets système qui sont référencés par le programme BILLING de la bibliothèque LIBRARY1. La sortie obtenue est envoyée en file d'attente d'impression.

Exemple 3: Affichage d'une liste des fichiers utilisés par une définition de requête

DSPPGMREF   PGM(LIBRARY1/QUERY1) OBJTYPE(*QRYDFN)  OUTPUT(*)

Cette commande permet d'afficher une liste des fichiers référencés par la définition de requête QUERY1 dans LIBRARY1.

Messages d'erreur

Messages *ESCAPE

CPF3033
Objet &1 dans la bibliothèque &2 de type &3 non trouvé.
CPF3034
Objet &1 dans la bibliothèque &2 de type &3 non affiché.
CPF3052
Description du fichier &1 non disponible.
CPF3061
Format d'enreg &3 non trouvé pour fichier de sortie &1.
CPF3063
Le fichier de sortie &1 dans &2 n'est pas un fichier physique.
CPF3064
Bibliothèque &1 introuvable.
CPF3066
Erreur lors de la création du fichier de sortie &1 dans &2.
CPF3067
Erreur lors de l'ouverture du fichier &1 de &2.
CPF3068
Erreur lors de l'écriture dans le fichier &1 de &2.
CPF3069
Erreur lors de la fermeture du fichier &1 de &2.
CPF3070
Erreur lors de la création du membre &3 dans le fichier &1.
CPF3072
&1 de &2 est un fichier système.
CPF3074
Non autorisé à utiliser la bibliothèque &1.
CPF3075
Bibliothèque &1 non disponible.
CPF3076
Une erreur s'est produite en cours d'affichage.
CPF3077
Une erreur s'est produite lors de l'annulation de l'affichage.
CPF3084
Erreur lors de la remise à blanc du membre &3 du fichier &1.

© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.