FIND THE GDG USING REXX

/*REXX*/                                                                      
DSN = 'XT2.SMS.AUS12345.CBL'                                                  
CHECK_GDG:                                                                    
   /* CHECK IF GDG EXISTS */                                                  
   ADDRESS TSO                                                                
   DSN = STRIP(DSN)                                                            
   X = OUTTRAP("LISTC.")                                                      
   "LISTCAT ENTRIES('"DSN"')"                                                  
   X = OUTTRAP("OFF")                                                          
   DO J = 1 TO LISTC.0                                                        
     SAY LISTC.J                                                              
     IF (POS("GDG BASE",LISTC.J)/=0) THEN DO                                  
        SAY 'GDG ALREADY PRESENT'                                              
/*      GDG_EXIST_CNT = GDG_EXIST_CNT + 1                                      
        MSG = "'GDG INDEX" DSN "ALREADY EXISTS'"                              
        "ISREDIT LINE_AFTER " I "= MSGLINE" MSG */                            
        LEAVE                                                                  
     END                                                                      
     ELSE                                                                      
     DO                                                                        
       SAY 'GDG NOT PRESENT'                                                  
     END                                                                      
   END                                                                        
RETURN                                                                        
MEMBER NAME  HRECALL                                                          
/*REXX*/                                                                      
/*TRACE ALL*/                                                                  
ADDRESS TSO                                                                    
X=OUTTRAP (.N)                                                                
"HRECALL 'XP2.SMS.A0HR0.JHR18.ISWAS.RPT.*'"                                    
X=OUTTRAP (OFF)                                                                
MEMBER NAME  HR1                                                              
/*rexx*/                                                                      
/*TRACE ALL*/                                                                  
CLOSE=NO                                                                      
VERS = 1471                                                                    
COUNT=0                                                                        
I=0                                                                            
DS=735379                                                                      
  VERS    = VERS + 1                                                          
  NVER = 'XX2.SMS.G0HR0.JHRPA.AUDIT.EXT.D0140528'                              
  RC = SYSDSN("'"NVER"'")                                                      
                                                                               
      IF RC = OK THEN                                                          
         DO                                                                    
           "ALLOC DA('"NVER"') FI(NVER) SHR"                                  
           "ExecIO * DiskR NVER (Stem N. Finis)"                              
           "Free Fi(NVER)"                                                    
           COUNT=COUNT+1                                                      
           IF COUNT=7 THEN                                                    
              DO                                                              
                DS=DS+2                                                        
                COUNT=0                                                        
              END                                                              
           ELSE                                                                
              DO                                                              
                DS=DS+1                                                        
              END                                                              
           D= DATE('U',DS,'B')                                                
           DO I=0 TO N.0                                                      
              CUR=N.I                                                          
              DATA=SUBSTR(CUR,1,100)                                          
              DD2="20"³³SUBSTR(D,7,2)³³SUBSTR(D,1,2)³³SUBSTR(D,4,2)            
              P.I = DATA³³DD2                                                  
           END                                                                
                                                                               
          P.0=N.0                                                              
      DTFILE  = 'XX2.SMS.G0HR0.JHRPA.AUDIT.EXT.'³³'D'³³SUBSTR(DD2,2,7)        
           "ALLOC DA('"DTFILE"') NEW SPACE(5,1) RECFM(F B) LRECL(133)          
            BLKSIZE(27930)"                                                    
           "ALLOC DA('"DTFILE"') FI(DTFILE) SHR"                              
           STAT = MSG("OFF")                                                  
                                                                               
           "EXECIO * DISKW DTFILE (STEM P. FINIS)"                            
           "FREE DA('"DTFILE"')"                                              
           STAT = MSG("OFF")                                                  
                                                                               
         END                                                                  
      ELSE                                                                    
         DO                                                                    
           SAY "THE END OF SEARCH"                                            
           CLOSE=YES                                                          
         END            

Comments

Popular posts from this blog

Date/time constants in JCL

JCL ABeND --

IEBGENER usage examples