MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Copy data from specific GDG versions

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Utilities
View previous topic :: View next topic  
Author Message
Martin
Beginner


Joined: 20 Mar 2006
Posts: 133
Topics: 58

PostPosted: Mon Feb 01, 2010 6:35 pm    Post subject: Copy data from specific GDG versions Reply with quote

Hi All,

Am having a file which specific GDG version names listed in here and I need to create an utility( preferably a JCL) to copy the data from the GDG base excluding the versions stated in the above file . Can this be done using SORT?

Ex:

GDG base : HLQ.PROD.MARKET.PRICE.GXXXXXXXX

The GDG base has 22 versions starting from 01 to 22. ( versioning always starts from 01 everyday)

file : ( This gets created very night and is NOT constant)

HLQ.PROD.MARKET.PRICE.G0001V00
HLQ.PROD.MARKET.PRICE.G0002V00
HLQ.PROD.MARKET.PRICE.G0003V00
HLQ.PROD.MARKET.PRICE.G0004V00
HLQ.PROD.MARKET.PRICE.G0005V00
HLQ.PROD.MARKET.PRICE.G0006V00

O/P file : should data from version 7 to 22 only.

Mod : Please move this to TSO & ISPF incase this cannot be done thru Sort.

Help is much appreciated !

Thanks,
Martin
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12376
Topics: 75
Location: San Jose

PostPosted: Mon Feb 01, 2010 6:40 pm    Post subject: Reply with quote

Martin,

1. Run Listcat on the GDG base.
2. Extract the GDG generation names using sort
3. Now eliminate the duplicate GDG generations by concatenating the file from step 2 with your exclude file.
4. Follow the steps from Smart DFSORT Trick "Copy GDGs created today" using the output from step 3.
_________________
Kolusu
www.linkedin.com/in/kolusu


Last edited by kolusu on Tue Feb 02, 2010 5:45 pm; edited 1 time in total
Back to top
View user's profile Send private message Send e-mail Visit poster's website
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12376
Topics: 75
Location: San Jose

PostPosted: Mon Feb 01, 2010 8:22 pm    Post subject: Reply with quote

Martin,

A coded example
Code:

//*********************************************************************
//*  RUN LISTCAT AGAINST THE BASE                                     *
//*********************************************************************
//STEP0100 EXEC PGM=IKJEFT01                                           
//SYSTSPRT DD DSN=&L,                                                 
//            DISP=(,PASS),                                           
//            SPACE=(CYL,(1,1),RLSE),                                 
//            DCB=(LRECL=80,RECFM=FB,BLKSIZE=0)                       
//SYSTSIN  DD *                                                       
  LISTCAT ENT('HLQ.PROD.MARKET.PRICE') NAME
//*                                                                   
//*********************************************************************
//*  EXTRACT THE GDG GENERATION NAMES AND CREATE 80 BYTE FILE         *
//*********************************************************************
//STEP0200 EXEC PGM=SORT                                               
//SYSOUT   DD SYSOUT=*                                                 
//SORTIN   DD DSN=&&L,DISP=SHR                                         
//SORTOUT  DD DSN=&&G,DISP=(,PASS),SPACE=(CYL,(1,1),RLSE)             
//SYSIN    DD *                                                       
  SORT FIELDS=COPY                                                     
  INCLUDE COND=(4,7,CH,EQ,C'NONVSAM')                                 
  OUTREC BUILD=(17,44,80:X)                                           
//*                                                                   
//*********************************************************************
//*  CONCATENATE THE EXCLUDE FILE AND EXTRACTED GDG GENERATION FILE   *
//*  WITH HEADER '$$$' AND CREATE THE DYNAMIC CONCATENATION LIST      *
//*********************************************************************
//STEP0300 EXEC PGM=ICETOOL                                           
//TOOLMSG  DD SYSOUT=*                                                 
//DFSMSG   DD SYSOUT=*                                                 
//IN       DD *                                                       
$$$                                                                   
//         DD DSN=&&G,DISP=SHR                                         
//         DD *                                                       
$$$                                                                   
//         DD *                                                       
HLQ.PROD.MARKET.PRICE.G0001V00
HLQ.PROD.MARKET.PRICE.G0002V00
HLQ.PROD.MARKET.PRICE.G0003V00
HLQ.PROD.MARKET.PRICE.G0004V00
HLQ.PROD.MARKET.PRICE.G0005V00
HLQ.PROD.MARKET.PRICE.G0006V00
//OUT      DD DSN=&&O,DISP=(,PASS),SPACE=(CYL,(1,1),RLSE)             
//TOOLIN   DD *                                                       
  SELECT FROM(IN) TO(OUT) ON(1,44,CH) NODUPS USING(CTL1)               
//CTL1CNTL DD *                                                       
  INREC IFTHEN=(WHEN=GROUP,BEGIN=(1,3,CH,EQ,C'$$$'),PUSH=(81:ID=1))   
  OUTFIL FNAMES=OUT,IFOUTLEN=80,NULLOFL=RC4,                           
  INCLUDE=(81,1,ZD,EQ,1,AND,1,3,CH,NE,C'$$$'),                         
  IFTHEN=(WHEN=INIT,OVERLAY=(81:SEQNUM,3,ZD)),                         
  IFTHEN=(WHEN=(81,3,ZD,EQ,1),                                         
  BUILD=(C'//SYSUT1   DD DISP=SHR,DSN=',1,44,80:X)),                   
  IFTHEN=(WHEN=NONE,                                                   
  BUILD=(C'//',12:C'DD DISP=SHR,DSN=',1,44,80:X))                     
//*                                                                   
//*********************************************************************
//*  CREATE THE JCL TO BE SUBMITTED TO THE INTRDR                     *
//*********************************************************************
//STEP0400 EXEC PGM=SORT                                               
//SYSOUT   DD SYSOUT=*                                                 
//SORTIN   DD DATA,DLM=$$                                             
//TIDXXXXA JOB 'COPY',                                                 
//             CLASS=A,                                               
//             MSGCLASS=Y,                                             
//             MSGLEVEL=(1,1),                                         
//             NOTIFY=TID                                             
//*                                                                   
//STEP0100 EXEC PGM=ICEGENER                                           
//SYSPRINT DD SYSOUT=*                                                 
//SYSUT2   DD SYSOUT=*                                                 
$$                                                                     
//         DD DSN=&&O,DISP=(OLD,PASS)                                 
//SORTOUT  DD SYSOUT=*                                                 
//SYSIN    DD *                                                       
  SORT FIELDS=COPY                                                     
//*

_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Utilities All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group