Page 1 of 1

Find and find replace

PostPosted: Thu Apr 23, 2009 10:43 pm
by karthik_sripal
Hi all,

I have requirement like if at posistion 10 there is '40' and at posistion 20 there is '09' i need to change that 09 to 90.
Hope i explained it clear.

for example my input file is like this
 ----+----1----+----2----+----3----+----4----+---
 ***************************** Top of Data ******
 THIS IS HEADER                                 
 ---------40AAAAAAAA09-----------AAAAAAAAA       
 ---------45AAAAAAAAAA...................A       
 ---------46AAAAAAAAAAMMMMMMMMMMMMMMMMMMMA       
 ---------40AAAAAAAA08BBBBBBBBBBBBBBBBBAAA       
 ---------40AAAAAAAA09CCCCCCCCCCCCCCCCCAAA       
 THIS IS FOOTER                                 
 **************************** Bottom of Data ****


I want my output file like

----+----1----+----2----+----3----+----4----+----
 ***************************** Top of Data *******
 THIS IS HEADER                                   
 ---------40AAAAAAAA90-----------AAAAAAAAA       
 ---------45AAAAAAAAAA...................A       
 ---------46AAAAAAAAAAMMMMMMMMMMMMMMMMMMMA       
 ---------40AAAAAAAA08BBBBBBBBBBBBBBBBBAAA       
 ---------40AAAAAAAA90CCCCCCCCCCCCCCCCCAAA       
 THIS IS FOOTER                                   
 **************************** Bottom of Data *****



could some one please tell me how to do this.

Re: Find and find replace

PostPosted: Thu Apr 23, 2009 11:04 pm
by Alissa Margulies
karthik,

Try this SyncSort for z/OS job:

//SORT1 EXEC PGM=SORT                 
//SORTIN  DD *                             
THIS IS HEADER                             
---------40AAAAAAAA09-----------AAAAAAAAA 
---------45AAAAAAAAAA...................A 
---------46AAAAAAAAAAMMMMMMMMMMMMMMMMMMMA 
---------40AAAAAAAA08BBBBBBBBBBBBBBBBBAAA 
---------40AAAAAAAA09CCCCCCCCCCCCCCCCCAAA 
THIS IS FOOTER                             
//SORTOUT DD SYSOUT=*                     
//SYSOUT  DD SYSOUT=*                       
//SYSIN   DD *                               
   SORT FIELDS=COPY                         
   OUTREC IFTHEN=(WHEN=(10,2,CH,EQ,C'40',AND,
                        20,2,CH,EQ,C'09'),         
         OVERLAY=(20:C'90'))               
/*                           

Re: Find and find replace

PostPosted: Thu Apr 23, 2009 11:20 pm
by karthik_sripal
Thank you so much Alissa !! ..
it has worked as expectecd.. you have made my day !! :) ..