Les exemples suivants illustrent certaines des utilisations de IEHPROGM.
Le tableau 1 peut être utilisé comme guide de référence rapide pour les exemples IEHPROGM.
Les nombres dans la colonne Exemple pointent vers les exemples qui suivent.
Tableau 1. Répertoire d’exemples IEHPROGM
Opération | Dispositif | Commentaires | Exemple |
---|---|---|---|
SCRATCH | Disque | Le DSCB des jeux de données est rayé. | Exemple 1 : Scratch des ensembles de données système temporaires |
SCRATCH, UNCATLG | Disque | Deux ensembles de données sont rayés et leurs entrées supprimées du catalogue. | Exemple 2 : Scratch et Uncatalog Two Data Sets |
RENAME, UNCATLG, CATLG | Disque | Un ensemble de données est renommé sur deux appareils montables ; l’ancien nom de l’ensemble de données est supprimé. Le jeu de données est catalogué sous son nouveau nom. | Exemple 3 : Renommer un catalogue d’ensembles de données multi-volumes |
UNCATLG | Disque | Les structures d’index pour les ensembles de données de trois générations sont supprimées du catalogue. | Exemple 4 : Décataloguer trois ensembles de données |
RENAME, DELETEP, ADD | Disque | Un ensemble de données est renommé. Les anciens mots de passe sont supprimés et de nouveaux mots de passe sont attribués. | Exemple 5 : Renommer un ensemble de données et définir de nouveaux mots de passe |
LIST, REPLACE | Disque | Une entrée de mot de passe est répertoriée. Le mode et l’état de la protection sont modifiés et des données utilisateur sont ajoutées. | Exemple 6 : répertorier et remplacer les informations de mot de passe |
RENAME | Disque | Un membre d’un ensemble de données partitionné est renommé. | Exemple 7 : renommer un membre d’ensemble de données partitionné |
Les exemples qui utilisent un disque ou une bande à la place des noms ou des numéros de périphérique réels doivent être modifiés avant utilisation.
Les noms ou numéros de périphérique réels dépendent de la façon dont votre installation a défini les périphériques sur votre système.
Exemples
Exemple 1 : Jeux de données système temporaires Scratch
Dans cet exemple, tous les ensembles de données système temporaires sont rayés de la table des matières du volume.
//SCRVTOC JOB ...
//STEP1 EXEC PGM=IEHPROGM
//SYSPRINT DD SYSOUT=A
//DD2 DD UNIT=disk,VOLUME=SER=222222,DISP=OLD
//SYSIN DD *
SCRATCH VTOC,VOL=disk=222222,SYS
/*
Les instructions de contrôle sont décrites comme suit :
- L’instruction DD2 définit un volume.
Étant donné que le volume de résidence du système n’est pas référencé, une instruction DD est nécessaire pour le définir. - L’instruction SCRATCH, avec SYS spécifié, indique que tous les ensembles de données système temporaires dont les dates d’expiration ont expiré sont supprimés du volume spécifié.
Exemple 2 : Scratch et Uncatalog deux ensembles de données
Dans cet exemple, deux ensembles de données sont effacés : SET1 et ABCDE sont effacés du volume 222222.
Les deux ensembles de données ne sont pas catalogués.
//SCRDSETS JOB ...
//STEP1 EXEC PGM=IEHPROGM
//SYSPRINT DD SYSOUT=A
//DD1 DD UNIT=disk,VOLUME=SER=111111,DISP=OLD
//DD2 DD UNIT=disk,DISP=OLD,VOLUME=SER=222222
//SYSIN DD *
SCRATCH DSNAME=SET1,VOL=disk=222222
UNCATLG DSNAME=SET1
SCRATCH DSNAME=A.B.C.D.E,VOL=disk=222222
UNCATLG DSNAME=A.B.C.D.E
/*
Les déclarations de contrôle d’utilité sont discutées comme suit :
- La première instruction SCRATCH spécifie que SET1, qui réside sur le volume 222222, est rayé.
- La première instruction UNCATLG spécifie que SET1 n’est pas catalogué.
- La deuxième instruction SCRATCH spécifie que ABCDE, qui réside sur le volume 222222, est rayé.
- La deuxième instruction UNCATLG spécifie que ABCDE n’est pas catalogué.
Exemple 3 : Renommer un catalogue de jeux de données multi-volumes
Dans cet exemple, le nom d’un ensemble de données est modifié sur deux volumes montables.
L’ancien nom d’ensemble de données est supprimé et l’ensemble de données est catalogué sous son nouveau nom d’ensemble de données.
//RENAMEDS JOB ...
//STEP1 EXEC PGM=IEHPROGM
//SYSPRINT DD SYSOUT=A
//DD1 DD VOLUME=SER=111111,UNIT=disk,DISP=OLD
//DD2 DD UNIT=(disk,,DEFER),DISP=OLD,
// VOLUME=(PRIVATE,SER=(222222,333333))
//SYSIN DD *
RENAME DSNAME=A.B.C,NEWNAME=NEWSET,VOL=disk=(222222,333333)
UNCATLG DSNAME=A.B.C
CATLG DSNAME=NEWSET,VOL=disk=(222222,333333)
/*
Les instructions de contrôle sont décrites comme suit :
- RENAME spécifie que l’ensemble de données ABC, qui réside sur les volumes 222222 et 333333, doit être renommé NEWSET.
- UNCATLG spécifie que l’ensemble de données ABC n’est pas catalogué.
- CATLG spécifie que NEWSET, qui réside sur les volumes 222222 et 333333, est catalogué.
Exemple 4 : Décataloguer trois jeux de données
Dans cet exemple, trois ensembles de données, ABCDEFSET1, ABCGHSET2 et ABIJKSET3, ne sont pas catalogués.
//DLTSTRUC JOB ...
//STEP1 EXEC PGM=IEHPROGM
//SYSPRINT DD SYSOUT=A
//DD1 DD UNIT=disk,VOLUME=SER=111111,DISP=OLD
//SYSIN DD *
UNCATLG DSNAME=A.B.C.D.E.F.SET1
UNCATLG DSNAME=A.B.C.G.H.SET2
UNCATLG DSNAME=A.B.I.J.K.SET3
/*
Les instructions de contrôle sont discutées comme suit :
Les instructions UNCATLG spécifient que les ensembles de données ABCDEFSET1, ABCGHSET2 et ABIJKSET3 ne sont pas catalogués.
Exemple 5 : Renommer un ensemble de données et définir de nouveaux mots de passe
Dans cet exemple, un ensemble de données est renommé.
Les mots de passe d’ensemble de données attribués à l’ancien nom d’ensemble de données sont supprimés.
Ensuite, deux mots de passe sont attribués au nouveau nom de l’ensemble de données.
Si l’ensemble de données n’est pas catalogué, un message est émis indiquant que la macro-instruction LOCATE s’est terminée sans succès.
//ADDPASS JOB ...
//STEP1 EXEC PGM=IEHPROGM,PARM='NOPRINT'
//SYSPRINT DD SYSOUT=A
//DD1 DD VOLUME=SER=222222,DISP=OLD,
// UNIT=disk
//SYSIN DD *
RENAME DSNAME=OLD,VOL=disk=222222,NEWNAME=NEW
DELETEP DSNAME=OLD,PASWORD1=KEY
ADD DSNAME=NEW,PASWORD2=KEY,TYPE=1, X
DATA='SECONDARY IS READ'
ADD DSNAME=NEW,PASWORD2=READ,CPASWORD=KEY,TYPE=2, X
DATA='ASSIGNED TO J. DOE'
/*
Les déclarations de contrôle d’utilité sont discutées comme suit :
- RENAME spécifie que l’ensemble de données appelé OLD est renommé NEW.
L’opérateur doit fournir un mot de passe pour renommer l’ancien ensemble de données. - DELETEP spécifie que l’entrée pour le mot de passe KEY est supprimée.
Étant donné que KEY est un mot de passe de contrôle dans cet exemple, toutes les entrées de mot de passe pour le nom de l’ensemble de données sont supprimées.
Le paramètre VOL n’est pas nécessaire car l’état de protection de l’ensemble de données tel qu’il est défini dans le DSCB ne doit pas être modifié ; la protection en lecture/écriture est actuellement définie dans le DSCB, et la protection en lecture/écriture est souhaitée lorsque les mots de passe sont réattribués sous le nouveau nom d’ensemble de données. - Les instructions ADD spécifient que des entrées sont ajoutées pour les mots de passe KEY et READ. KEY devient le mot de passe de contrôle et permet à la fois l’accès en lecture et en écriture à l’ensemble de données.
READ devient un mot de passe secondaire et n’autorise qu’un accès en lecture à l’ensemble de données.
Le paramètre VOL n’est pas nécessaire, car l’état de protection de l’ensemble de données est toujours défini dans le DSCB.
Exemple 6 : Répertorier et remplacer les informations de mot de passe
Dans cet exemple, les informations d’une entrée de mot de passe sont répertoriées.
Ensuite, le mode de protection du mot de passe, l’état de protection de l’ensemble de données et les données utilisateur sont modifiés.
//REPLPASS JOB ...
//STEP1 EXEC PGM=IEHPROGM,PARM='NOPRINT'
//SYSPRINT DD SYSOUT=A
//DD1 DD UNIT=disk,VOLUME=SER=111111,DISP=OLD
//DD2 DD VOLUME=(PRIVATE,SER=(222222,333333)),
// UNIT=(disk,,DEFER),DISP=OLD
//SYSIN DD *
LIST DSNAME=A.B.C,PASWORD1=ABLE
REPLACE DSNAME=A.B.C,PASWORD1=ABLE,PASWORD2=ABLE,TYPE=3, X
VOL=disk=(222222,333333), X
DATA='NO SECONDARIES; ASSIGNED TO DEPT 31'
/*
Les déclarations de contrôle d’utilité sont discutées comme suit :
- LIST spécifie que le compteur d’accès, le mode de protection et les données utilisateur de l’entrée pour le mot de passe ABLE sont répertoriés.
Le fait de lister l’entrée permet d’enregistrer le contenu du compteur d’accès avant que le compteur ne soit remis à zéro par l’instruction REPLACE. - REPLACE spécifie que le mode de protection du mot de passe ABLE doit être modifié pour autoriser à la fois l’accès en lecture et en écriture et que l’état de protection de l’ensemble de données est modifié en protection en écriture seule.
Le paramètre VOL est obligatoire car l’état de protection du jeu de données est modifié et le jeu de données, dans cet exemple, n’est pas catalogué.
Comme il s’agit d’un mot de passe de contrôle, le paramètre CPASWORD n’est pas requis.
Exemple 7 : Renommer un membre d’ensemble de données partitionné
Dans cet exemple, un membre d’un ensemble de données partitionnées est renommé.
//REN JOB ...
//STEP1 EXEC PGM=IEHPROGM
//SYSPRINT DD SYSOUT=A
//DD1 DD VOL=SER=222222,DISP=OLD,UNIT=disk
//SYSIN DD *
RENAME VOL=disk=222222,DSNAME=DATASET,NEWNAME=BC,MEMBER=ABC
/*
Les instructions de contrôle sont discutées comme suit :
- DD1 DD définit un volume monté en permanence.
- SYSIN DD définit l’ensemble de données d’entrée, qui suit dans le flux d’entrée.
- RENAME spécifie que le membre ABC dans l’ensemble de données partitionnées DATASET, qui réside sur un volume de disque, est renommé BC.