Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > z/OS
z/OS Forum d'entraide sur z/OS et MVS (Multiple Virtual Storage), les systèmes d'exploitation des ordinateurs « mainframes » IBM : JCL, Tso, Ispf, Vsam, Racf, SMS, Cics, Ims, OPC, Ca-7, Control-M, Dialog Manager ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/06/2011, 11h31   #1
Invité régulier
 
Inscription : novembre 2007
Messages : 51
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 51
Points : 7
Points : 7
Par défaut JCL de renommage selectif

Bonjour à tous,

Je travaille sous z/OS et je cherche à réaliser un opération de renommage via JCL. Le renommage ne porte que sur certains fichier ayant une structure particulière.

Par exemple : je veux que le PDS : TEST.ORI(CNTEST) soit renommer en TEST.ORI(PCTEST). Le tri ne porte donc que sur les PDS commençant par 'CN'

Auriez vous un exemple de JCL qui effectue ce genre d'opération ?

Merci pour vos réponses.
bobspike est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/10/2011, 14h24   #2
Membre du Club
 
Homme olivier
Analyste d'exploitation
Inscription : août 2011
Messages : 48
Détails du profil
Informations personnelles :
Nom : Homme olivier
Localisation : France

Informations professionnelles :
Activité : Analyste d'exploitation
Secteur : Finance

Informations forums :
Inscription : août 2011
Messages : 48
Points : 65
Points : 65
salut

inspire toi de ma proc rexx qui renomme les membre i* en b*

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
"ispexec lminit dataid(lib) dataset('ton_pds') enq(shrw)"
'ispexec lmopen dataid('lib') option(output)'                                
                                                                             
mbr=''                                                                       
do forever                                                                   
  'ispexec lmmlist dataid('lib') member(mbr) pattern(i*)'                    
  if rc/=0 then leave                                                        
  newmbr='B' !! substr(mbr,2)                                                
  'ispexec lmmren dataid('lib') member('mbr') newname('newmbr')'             
end                                                                          
'ispexec lmmlist dataid('lib') option(free)'                                 
                                                                             
'ispexec lmclose dataid('lib')'                                              
'ispexec lmfree dataid('lib')'
pour l'executer en batch via un jcl tu peux copier ton code rexx dans un pds temporaire avec iebgener comme cela

Code :
1
2
3
4
5
6
7
8
9
10
11
12
//     EXEC PGM=IEBGENER      
//SYSPRINT DD SYSOUT=*            
//SYSIN    DD DUMMY               
//SYSUT2   DD DSN=&&DS1(MEM1),
//            DISP=(NEW,PASS),    
//            SPACE=(TRK,(1,,1)), 
//            RECFM=FB,LRECL=80   
//SYSUT1 DD *                     
 /* REXX */
...
...
/*
et l'appeler au step suivant avec IKJEFT01 en pensant a allouer les lib ISPF

a+
coderetour0 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h34.


 
 
 
 
Partenaires

Hébergement Web