terça-feira, agosto 18, 2026

Comandos Úteis no spool do Mainframe

Gerenciar a utilização do SPOOL no ambiente JES2 no z/OS é uma atividade crítica de rotina para qualquer equipe de suporte e operação em Mainframe. Quando o volume de dados acumulados atinge limiares críticos de alerta — como no atingimento das metas do parâmetro JOBWARN ou na escassez do número de jobs livres (JNUMFREE) —, o risco de degradação da performance do sistema e até da paralisação de execuções de produção torna-se uma ameaça real. Saber identificar rapidamente a causa raiz dessa ocupação elevada, localizar os datasets de spool mais pesados e filtrar outputs acumulados por tempo de retenção é o primeiro passo para conter incidentes. Neste artigo, apresento um guia prático e objetivo contendo a sintaxe dos comandos JES2 mais úteis para monitorar a porcentagem global de uso, rastrear jobs que utilizam grandes volumes do SPOOL e executar a remoção seletiva ou limpeza cirúrgica de dados retidos no ambiente.

Display do SPOOL Utilizado

A % de utilização está o spool - O display abaixo esta em 29% cheio - Comando
$DSPOOL

Resultado
                                                                                
 07:44:13        TID    50          COM641/D          User DBAP055      14.03.24
                          ---   System Messages   ---                       UQM1
 STC03681  COMVTM2020-P LOSTERM LU=TERM0089 Tid=256 Code=20
 STC03681  COMVTM2020-P LOSTERM LU=TERM0090 Tid=256 Code=20
 STC03681  COMVTM2020-P LOSTERM LU=TERM0091 Tid=256 Code=20
 STC03681  COMVTM2020-P LOSTERM LU=TERM0092 Tid=256 Code=20
 STC03681  COMVTM2020-P LOSTERM LU=TERM0093 Tid=256 Code=20
 STC03681  COMVTM2020-P LOSTERM LU=TERM0094 Tid=256 Code=20
 STC03681  COMVTM2020-P LOSTERM LU=TERM0095 Tid=256 Code=20
 STC03681  COMVTM2020-P LOSTERM LU=TERM0096 Tid=256 Code=20 
 STC05529  $DSPOOL                                                              
           $HASP893 VOLUME(ZOSPO1)  STATUS=ACTIVE,PERCENT=24                    
           $HASP893 VOLUME(ZOSPO2)  STATUS=ACTIVE,PERCENT=25                    
           $HASP893 VOLUME(ZOSPO3)  STATUS=ACTIVE,PERCENT=24                    
           $HASP893 VOLUME(ZOSPO4)  STATUS=ACTIVE,PERCENT=24                    
           $HASP646 24.8759 PERCENT SPOOL UTILIZATION                           
 STC08585 @53 DF3001A  *** RVS 5.1  ***                                         
 ******************************** BOTTOM OF DATA *******************************
 Select Function:                                                       CONSOLE 
 Operand/Command:                                                               
 Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
                                    Retrv  Up    Down        Left  Right        

Display the number of JOES

Comando
$D JOBDEF

Resultado
 STC01746  $D JOBDEF                                                            
           $HASP835 JOBDEF                                                      
           $HASP835 JOBDEF  ACCTFLD=REQUIRED,BAD_JOBNAME_CHAR=?,                
           $HASP835         CNVT_ENQ=FAIL,JCLERR=YES,JNUMBASE=8979,             
           $HASP835         JNUMFREE=6444,JNUMWARN=80,JOBFREE=6444,             
           $HASP835         JOBNUM=9999,JOBWARN=60,PRTYHIGH=10,                 
           $HASP835         PRTYJECL=YES,PRTYJOB=NO,PRTYLOW=1,PRTYRATE=1,       
           $HASP835         RANGE=(1,9999),RASSIGN=YES,DUPL_JOB=DELAY           
 STC05365 @54 DF3001A  *** RVS 5.1  ***                                         
 ******************************** BOTTOM OF DATA *******************************
 Select Function:                                                       CONSOLE 
 Operand/Command:                                                               
 Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
                                    Retrv  Up    Down        Left  Right        

Observa o parametro JNUMFREE esse valor é muito importante, se a númeração vai até 9999 e estamos em 6444 (o calculo da porcentagem é calculo de 3)
1 - 100 * 6444 = 644.400 
2 - 644.400 / 9999 
3 - 64% estamos utilizando do spool
Essa mensagem começa a dar quando esta em 60% (observe o parametro JOBWARN acima);

Display dos Jobs Output Pesados

Quais jobs estão usando mais de 1% do spool; - Comando
$DJQ,SPL=(%>1)

Resultado
 STC01746  $DJQ,SPL=(%>1)                                                       
 STC00383  $HASP890 JOB(SYSLOG)                                                 
 STC00383  $HASP890 JOB(SYSLOG)    STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00383  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE),       
 STC00383  $HASP890                SPOOL=(VOLUMES=(ZOSPO1,2,3,4),TGS=1126,      
 STC00383  $HASP890                PERCENT=1.6877)                              
 STC00390  $HASP890 JOB(AAFTVTAM)                                               
 STC00390  $HASP890 JOB(AAFTVTAM)  STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00390  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE),       
 STC00390  $HASP890                SPOOL=(VOLUMES=(ZOSPO1,2,3,4),TGS=2235,      
 STC00390  $HASP890                PERCENT=3.3500)                              
 JOB02005  $HASP890 JOB(AADCDITO)                                               
 JOB02005  $HASP890 JOB(AADCDITO)  STATUS=(AWAITING HARDCOPY),CLASS=S,          
 JOB02005  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE),         
 JOB02005  $HASP890                SPOOL=(VOLUMES=(ZOSPO1,2,3,4),TGS=2815,      
 JOB02005  $HASP890                PERCENT=4.2194)

Display dos Jobs com 30 dias na Fila

Jobs que estão mais de 30 dias na fila; - Comando
$DJQ,DAYS>30

Resultado
 STC01746  $DJQ,DAYS>30                                                         
 STC00001  $HASP890 JOB($MASCOMM)                                               
 STC00001  $HASP890 JOB($MASCOMM)  STATUS=(AWAITING HARDCOPY),CLASS=A,          
 STC00001  $HASP890                PRIORITY=15,SYSAFF=(ANY),HOLD=(NONE)
 STC00383  $HASP890 JOB(SYSLOG)                                                 
 STC00383  $HASP890 JOB(SYSLOG)    STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00383  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC00384  $HASP890 JOB(RMF)                                                    
 STC00384  $HASP890 JOB(RMF)       STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00384  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC00389  $HASP890 JOB(TSS)                                                    
 STC00389  $HASP890 JOB(TSS)       STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00389  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC00390  $HASP890 JOB(AAFTVTAM)                                               
 STC00390  $HASP890 JOB(AAFTVTAM)  STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00390  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC00393  $HASP890 JOB(ZFS)                                                    
 STC00393  $HASP890 JOB(ZFS)       STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00393  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC00437  $HASP890 JOB(AAFTICS5)                                               
 STC00437  $HASP890 JOB(AAFTICS5)  STATUS=(EXECUTING/CPAC),CLASS=STC,
 STC00437  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC00438  $HASP890 JOB(AAFTICS7)                                               
 STC00438  $HASP890 JOB(AAFTICS7)  STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00438  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC00441  $HASP890 JOB(AAFTNWRK)                                               
 STC00441  $HASP890 JOB(AAFTNWRK)  STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00441  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC00483  $HASP890 JOB(TSO)                                                    
 STC00483  $HASP890 JOB(TSO)       STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00483  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC00490  $HASP890 JOB(RMFGAT)                                                 
 STC00490  $HASP890 JOB(RMFGAT)    STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC00490  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC00506  $HASP890 JOB(EREP)                                                   
 STC00506  $HASP890 JOB(EREP)      STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC00506  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)
 STC00878  $HASP890 JOB($DI)       STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC00878  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)          
 JOB01775  $HASP890 JOB(ALBPNATB)                                               
 JOB01775  $HASP890 JOB(ALBPNATB)  STATUS=(AWAITING EXECUTION),CLASS=N,         
 JOB01775  $HASP890                PRIORITY=10,SYSAFF=(ANY),HOLD=(JOB)          
 STC01842  $HASP890 JOB(EREP)                                                   
 STC01842  $HASP890 JOB(EREP)      STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC01842  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)          
 STC02034  $HASP890 JOB(FFBE240)                                                
 STC02034  $HASP890 JOB(FFBE240)   STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC02034  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)          
 STC02070  $HASP890 JOB(AAFAI141)                                               
 STC02070  $HASP890 JOB(AAFAI141)  STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC02070  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC02956  $HASP890 JOB(EREP)                                                   
 STC02956  $HASP890 JOB(EREP)      STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC02956  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)
 JOB04169  $HASP890 JOB(ABTDNATB)                                               
 JOB04169  $HASP890 JOB(ABTDNATB)  STATUS=(AWAITING EXECUTION),CLASS=6,         
 JOB04169  $HASP890                PRIORITY=10,SYSAFF=(ANY),HOLD=(JOB)          
 STC04353  $HASP890 JOB($TJ1033)                                                
 STC04353  $HASP890 JOB($TJ1033)   STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC04353  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)          
 STC04923  $HASP890 JOB(EREP)                                                   
 STC04923  $HASP890 JOB(EREP)      STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC04923  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)          
 STC05233  $HASP890 JOB(EREP)                                                   
 STC05233  $HASP890 JOB(EREP)      STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC05233  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)          
 STC05234  $HASP890 JOB(AADPTLMS)                                               
 STC05234  $HASP890 JOB(AADPTLMS)  STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC05234  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC05502  $HASP890 JOB(EREP)                                                   
 STC05502  $HASP890 JOB(EREP)      STATUS=(AWAITING HARDCOPY),CLASS=STC,
 STC05502  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)          
 STC05610  $HASP890 JOB(INIT)                                                   
 STC05610  $HASP890 JOB(INIT)      STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC05610  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE),       
 STC05610  $HASP890                INITASID=0437                                
 STC06172  $HASP890 JOB(EREP)                                                   
 STC06172  $HASP890 JOB(EREP)      STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC06172  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)          
 STC06351  $HASP890 JOB(AAFTESF)                                                
 STC06351  $HASP890 JOB(AAFTESF)   STATUS=(EXECUTING/CPAC),CLASS=STC,           
 STC06351  $HASP890                PRIORITY=15,SYSAFF=(CPAC),HOLD=(NONE)        
 STC07485  $HASP890 JOB(EREP)                                                   
 STC07485  $HASP890 JOB(EREP)      STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC07485  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)          
 STC07648  $HASP890 JOB(EREP)                                                   
 STC07648  $HASP890 JOB(EREP)      STATUS=(AWAITING HARDCOPY),CLASS=STC,        
 STC07648  $HASP890                PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE)

Display de todos os jobs começando

Display de todos os output dos jobs com AAC que estão na fila - Comando
$DO JQ,JM=AAC *

Resultado
 STC01746  $DO JQ,JM=AAC *                                                      
 JOB00301  $HASP686 OUTPUT(AACCTLMS)                                            
 JOB00301  $HASP686 OUTPUT(AACCTLMS)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB00301  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB00301  $HASP686                   OUTDISP=HOLD,PRIORITY=8,PRMODE=LINE,      
 JOB00301  $HASP686                   QUEUE=A,RECORDS=(1093 OF 1093),           
 JOB00301  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB00301  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=SUP0006,     
 JOB00301  $HASP686                   WRITER=                                   
 JOB00301  $HASP686 OUTPUT(AACCTLMS)                                            
 JOB00301  $HASP686 OUTPUT(AACCTLMS)  OUTGRP=2.1.1,BURST=NO,FCB=****,           
 JOB00301  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB00301  $HASP686                   OUTDISP=HOLD,PRIORITY=9,PRMODE=LINE,
 JOB00301  $HASP686                   QUEUE=G,RECORDS=(325 OF 325),             
 JOB00301  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB00301  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=SUP0006,     
 JOB00301  $HASP686                   WRITER=                                   
 JOB04567  $HASP686 OUTPUT(AACCTLMS)                                            
 JOB04567  $HASP686 OUTPUT(AACCTLMS)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB04567  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB04567  $HASP686                   OUTDISP=HOLD,PRIORITY=8,PRMODE=LINE,      
 JOB04567  $HASP686                   QUEUE=A,RECORDS=(1088 OF 1088),           
 JOB04567  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB04567  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=SUP0006,     
 JOB04567  $HASP686                   WRITER=                                   
 JOB04567  $HASP686 OUTPUT(AACCTLMS)                                            
 JOB04567  $HASP686 OUTPUT(AACCTLMS)  OUTGRP=2.1.1,BURST=NO,FCB=****,           
 JOB04567  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB04567  $HASP686                   OUTDISP=HOLD,PRIORITY=9,PRMODE=LINE,      
 JOB04567  $HASP686                   QUEUE=G,RECORDS=(297 OF 297),
 JOB04567  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB04567  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=SUP0006,     
 JOB04567  $HASP686                   WRITER=                                   
 JOB06822  $HASP686 OUTPUT(AACCTLMS)                                            
 JOB06822  $HASP686 OUTPUT(AACCTLMS)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB06822  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB06822  $HASP686                   OUTDISP=HOLD,PRIORITY=8,PRMODE=LINE,      
 JOB06822  $HASP686                   QUEUE=A,RECORDS=(1089 OF 1089),           
 JOB06822  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB06822  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=SUP0006,     
 JOB06822  $HASP686                   WRITER=                                   
 JOB06822  $HASP686 OUTPUT(AACCTLMS)                                            
 JOB06822  $HASP686 OUTPUT(AACCTLMS)  OUTGRP=2.1.1,BURST=NO,FCB=****,           
 JOB06822  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB06822  $HASP686                   OUTDISP=HOLD,PRIORITY=9,PRMODE=LINE,      
 JOB06822  $HASP686                   QUEUE=G,RECORDS=(346 OF 346),             
 JOB06822  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,
 JOB06822  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=SUP0006,     
 JOB06822  $HASP686                   WRITER= 

Exclui os jobs Output pelo Nome

Exclui todos os outputs dos jobs que começam com AAFSNSTC - dá para excluir também as STC - $PO S - Comando
$PO JQ,JM=AAFSNSTC

Resultado
 STC01746  $PO JQ,JM=AAFSNSTC                                                   
 JOB01012  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB01476  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB02094  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB02700  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB03101  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB03736  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB03876  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB04296  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB04421  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB04920  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB05210  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED
 JOB05629  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB05890  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB06201  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB06300  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB06679  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB06746  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB07046  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB07263  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB07287  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB07432  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB07551  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB07710  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB07779  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB08002  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB08376  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB09071  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB09075  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED
 JOB09169  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB09296  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB09784  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB09967  $HASP686 OUTPUT(AAFSNSTC)  OUTGRP=1.1.1 CANCELLED                    
 JOB09967  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8FA9E0)                   
 JOB09784  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8F8F0C)                   
 JOB09296  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8F5968)                   
 JOB09169  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8F3E95)                   
 JOB09075  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8F303B)                   
 JOB09071  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8F2EF0)                   
 JOB08376  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8EF685)                   
 JOB08002  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC93042D)                   
 JOB07779  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8ED9E2)                   
 JOB07710  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC92CE8A)                   
 JOB07551  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC92B3B6)                   
 JOB07432  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8ECF2A)                   
 JOB07287  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8EC5C1)
 JOB07263  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC927E12)                   
 JOB07046  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC92633F)                   
 JOB06746  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC922D9B)                   
 JOB06679  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC9212C8)                   
 JOB06300  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC91DD22)                   
 JOB06201  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC91C250)                   
 JOB05890  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC918CAD)                   
 JOB05629  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC9171D9)                   
 JOB05210  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC913C35)                   
 JOB04920  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC912161)                   
 JOB04421  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC90EBBE)                   
 JOB04296  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC90D0EA)                   
 JOB03876  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC909B46)                   
 JOB03736  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC908072)                   
 JOB03101  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC904ACF)                   
 JOB02094  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC900C8C)                   
 JOB02700  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC902FFB)
 JOB01476  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8FFA56)                   
 JOB01012  $HASP250 AAFSNSTC PURGED -- (JOB KEY WAS DC8FDF87)

Para excluir todos os jobs AAFS é só dar o comando abaixo com *
$PO JQ,JM=AAFS*

Display dos Jobs de Output com mais de 30 dias na Fila

Quais jobs estão a 30 dias na fila - Comando
$DO JQ,AGE>30 

Resultado
 STC01746  $DO JQ,AGE>30                                                        
 STC00483  $HASP686 OUTPUT(TSO)                                                 
 STC00483  $HASP686 OUTPUT(TSO)       OUTGRP=1.1.1,BURST=NO,FCB=****,           
 STC00483  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 STC00483  $HASP686                   OUTDISP=HOLD,PRIORITY=9,PRMODE=LINE,      
 STC00483  $HASP686                   QUEUE=A,RECORDS=(18 OF 18),               
 STC00483  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 STC00483  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=TSO,         
 STC00483  $HASP686                   WRITER=                                   
 STC04353  $HASP686 OUTPUT($TJ1033) 
 STC04353  $HASP686 OUTPUT($TJ1033)   OUTGRP=1.1.1,BURST=NO,FCB=****,           
 STC04353  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 STC04353  $HASP686                   OUTDISP=HOLD,PRIORITY=9,PRMODE=LINE,      
 STC04353  $HASP686                   QUEUE=A,RECORDS=(16 OF 16),               
 STC04353  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 STC04353  $HASP686                   TSOAVAIL=YES,UCS=****,                    
 STC04353  $HASP686                   USERID=USERSTC,WRITER=                   
 STC09681  $HASP686 OUTPUT($TJ7777)                                             
 STC09681  $HASP686 OUTPUT($TJ7777)   OUTGRP=1.1.1,BURST=NO,FCB=****,           
 STC09681  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 STC09681  $HASP686                   OUTDISP=HOLD,PRIORITY=9,PRMODE=LINE,      
 STC09681  $HASP686                   QUEUE=A,RECORDS=(16 OF 16),               
 STC09681  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 STC09681  $HASP686                   TSOAVAIL=YES,UCS=****,                    
 STC09681  $HASP686                   USERID=USERSTC,WRITER= 

Excluir os Jobs com mais de 30 dias na Fila

Este comando vai deletar os jobs que estão a x dias na fila - o comando abaixo vai deletar os jobs que estão a 30 dias na fila
$PO JQ,AGE>30 

Display dos Jobs aekpr00* com mais de uma semana

Quais jobs de saída pertencem ao AEKPR00* e também têm uma semana ($DO S e $do S) - Comando
$DO JQ,JM=AEKPR00*,A>7 

Resultado
 STC01746  $DO JQ,JM=AEKPR00*,A>7                                               
 JOB00571  $HASP686 OUTPUT(AEKPR006)                                            
 JOB00571  $HASP686 OUTPUT(AEKPR006)  OUTGRP=1.1.1,BURST=NO,FCB=****,
 JOB00571  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB00571  $HASP686                   OUTDISP=HOLD,PRIORITY=8,PRMODE=LINE,      
 JOB00571  $HASP686                   QUEUE=A,RECORDS=(1060 OF 1060),           
 JOB00571  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB00571  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=MAQ0001,     
 JOB00571  $HASP686                   WRITER=                                   
 JOB00665  $HASP686 OUTPUT(AEKPR008)                                            
 JOB00665  $HASP686 OUTPUT(AEKPR008)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB00665  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB00665  $HASP686                   OUTDISP=HOLD,PRIORITY=8,PRMODE=LINE,      
 JOB00665  $HASP686                   QUEUE=A,RECORDS=(1135 OF 1135),           
 JOB00665  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB00665  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=MAQ0001,     
 JOB00665  $HASP686                   WRITER=                                   
 JOB02407  $HASP686 OUTPUT(AEKPR005)                                            
 JOB02407  $HASP686 OUTPUT(AEKPR005)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB02407  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),
 JOB02407  $HASP686                   OUTDISP=HOLD,PRIORITY=8,PRMODE=LINE,      
 JOB02407  $HASP686                   QUEUE=A,RECORDS=(662 OF 662),             
 JOB02407  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB02407  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=MAQ0001,     
 JOB02407  $HASP686                   WRITER=                                   
 JOB02548  $HASP686 OUTPUT(AEKPR006)                                            
 JOB02548  $HASP686 OUTPUT(AEKPR006)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB02548  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB02548  $HASP686                   OUTDISP=HOLD,PRIORITY=7,PRMODE=LINE,      
 JOB02548  $HASP686                   QUEUE=A,RECORDS=(1255 OF 1255),           
 JOB02548  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB02548  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=MAQ0001,     
 JOB02548  $HASP686                   WRITER=                                   
 JOB02609  $HASP686 OUTPUT(AEKPR008)                                            
 JOB02609  $HASP686 OUTPUT(AEKPR008)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB02609  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB02609  $HASP686                   OUTDISP=HOLD,PRIORITY=7,PRMODE=LINE,
 JOB02609  $HASP686                   QUEUE=A,RECORDS=(1316 OF 1316),           
 JOB02609  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB02609  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=MAQ0001,     
 JOB02609  $HASP686                   WRITER=                                   
 JOB04949  $HASP686 OUTPUT(AEKPR005)                                            
 JOB04949  $HASP686 OUTPUT(AEKPR005)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB04949  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB04949  $HASP686                   OUTDISP=HOLD,PRIORITY=9,PRMODE=LINE,      
 JOB04949  $HASP686                   QUEUE=A,RECORDS=(577 OF 577),             
 JOB04949  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB04949  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=MAQ0001,     
 JOB04949  $HASP686                   WRITER=                                   
 JOB05093  $HASP686 OUTPUT(AEKPR006)                                            
 JOB05093  $HASP686 OUTPUT(AEKPR006)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB05093  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB05093  $HASP686                   OUTDISP=HOLD,PRIORITY=8,PRMODE=LINE,      
 JOB05093  $HASP686                   QUEUE=A,RECORDS=(893 OF 893),
 JOB05093  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB05093  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=MAQ0001,     
 JOB05093  $HASP686                   WRITER=                                   
 JOB05119  $HASP686 OUTPUT(AEKPR002)                                            
 JOB05119  $HASP686 OUTPUT(AEKPR002)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB05119  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB05119  $HASP686                   OUTDISP=HOLD,PRIORITY=8,PRMODE=LINE,      
 JOB05119  $HASP686                   QUEUE=A,RECORDS=(1031 OF 1031),           
 JOB05119  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,                 
 JOB05119  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=MAQ0001,     
 JOB05119  $HASP686                   WRITER=                                   
 JOB05134  $HASP686 OUTPUT(AEKPR002)                                            
 JOB05134  $HASP686 OUTPUT(AEKPR002)  OUTGRP=1.1.1,BURST=NO,FCB=****,           
 JOB05134  $HASP686                   FLASH=****,FORMS=STD,HOLD=(NONE),         
 JOB05134  $HASP686                   OUTDISP=HOLD,PRIORITY=9,PRMODE=LINE,      
 JOB05134  $HASP686                   QUEUE=A,RECORDS=(242 OF 242),             
 JOB05134  $HASP686                   ROUTECDE=LOCAL,SECLABEL=,
 JOB05134  $HASP686                   TSOAVAIL=YES,UCS=****,USERID=MAQ0001,     
 JOB05134  $HASP686                   WRITER=

Excluir os Jobs com mais de dois dias

Deletar os jobs de output com o nome AAASMF que estão parados na fila em 2 dias (vai ser excluido o setimo dia somente)
$PO JQ,JM=AAASMF,A>2

Resultado
 STC01746  $PO JQ,JM=AAASMF,A>2                                                 
 STC03618  $HASP686 OUTPUT(AAASMF)    OUTGRP=1.1.1 CANCELLED                    
 STC06502  $HASP686 OUTPUT(AAASMF)    OUTGRP=1.1.1 CANCELLED                    
 STC06709  $HASP686 OUTPUT(AAASMF)    OUTGRP=1.1.1 CANCELLED                    
 STC09955  $HASP686 OUTPUT(AAASMF)    OUTGRP=1.1.1 CANCELLED                    
 STC09955  $HASP250 AAASMF PURGED -- (JOB KEY WAS DC8FA7FD)                     
 STC06709  $HASP250 AAASMF PURGED -- (JOB KEY WAS DC921C6E)                     
 STC06502  $HASP250 AAASMF PURGED -- (JOB KEY WAS DC8E9BF2)                     
 STC03618  $HASP250 AAASMF PURGED -- (JOB KEY WAS DC907532)


Leia Mais

sábado, agosto 15, 2026

Reorganização do banco de dados Adabas

Se você atua na administração ou no desenvolvimento em ambientes mainframe com Adabas, sabe que a eficiência do banco de dados depende diretamente do bom uso do espaço físico em disco. Conforme as aplicações realizam atualizações, inserções massivas e exclusões diárias, a estrutura interna das tabelas passa a sofrer com um fenômeno inevitável: a fragmentação. Para manter o desempenho das consultas em alto nível e otimizar o uso da ASSO e da DATA, o procedimento de reorganização é uma das rotinas de manutenção mais cruciais no ciclo de vida do ambiente. Hoje os espaços não utilizados estão bem fragmentado.

  13:19:59          ***** A D A B A S  BASIC  SERVICES *****       2026-08-14 
  DBID 230                  - Display Unused Storage -                PDRU012 
                                                                              
         I Device I     Total Number of      I Extent           in Blk.   I   
         I Type   I   Blocks     /  Cyls.    I from        -      until   I   
   ------I--------I------------------------- I----------------------------I   
   DATA  I  8391  I         780          10  I     1008562 -     1009341  I   
         I  8391  I          70           0  I     1033052 -     1033121  I   
         I  8391  I           1           0  I     1100108 -     1100108  I   
         I  8391  I         120           1  I     1107062 -     1107181  I   
         I  8391  I         193           2  I     1112313 -     1112505  I   
         I  8391  I    11508869      153451  I     1119927 -    12628795  I   
   ------I--------I------------------------- I----------------------------I   
   ASSO  I  8391  I          19           0  I      457493 -      457511  I   
         I  8391  I          23           0  I      476280 -      476302  I   
         I  8391  I           4           0  I      476325 -      476328  I   
         I  8391  I          12           0  I      476341 -      476352  I   
         I  8391  I         330           1  I      538034 -      538363  I   
         I  8391  I           8           0  I      539027 -      539034  I 
   ASSO  I  8391  I    12406943       68927  I      553046 -    12959988  I  
                                                                              
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12----- 
  Help               Exit                                           Menu      

Backup e Reorganização - Esse é o JCL
//AAFAREDB  JOB (AABS,OSB),DBA,CLASS=S,MSGCLASS=A TYPRUN=HOLD
//*UQ ALLOW 
//* --------------------------------------------------------    
//*                BACKUP OFFLINE DO BANCO 220                  
//* --------------------------------------------------------    
//SAVE     EXEC AAFAU230,TIME=1440                              
//DDSAVE1   DD DSN=CSA.C.SAVE.DB230.OFFLINE,                    
//         DISP=(NEW,CATLG),UNIT=CVRT,LABEL=(,SL)               
//* --------------------------------------------------------    
//DDCARD    DD *                                                
ADARUN PROG=ADASAV,DBID=230,MODE=SINGLE,PLOGRQ=NO
//DDKARTE   DD *                                                
ADASAV   SAVE                                                   
//* ---------------------------------------------------------
//*             REORGANIZA O DATA E O ASSO DO BANCO          
//* ---------------------------------------------------------
//REORDB   EXEC AAFAU230,TIME=1440                           
//DDFILEA  DD DSN=ADABAS.C.REORDB.DB230,                     
//         DISP=(NEW,KEEP),UNIT=CVRT,LABEL=(1,SL)            
//* ---------------------------------------------------------
//DDCARD    DD *                                             
ADARUN PROG=ADAORD,MODE=SINGLE,DBID=230,PLOGRQ=NO            
ADARUN LP=10000,LWKP2=1200                                   
//DDKARTE   DD *                                             
ADAORD    REORDB                                             
/*                                                           

Tirar o banco do ar - Importante - Depois job submetido
1                       J E S 2  J O B  L O G  --  S Y S T E M  C P A C  --  N O D E  J E S 2                           
0                                                                                                                       
 07.50.34 JOB00421 ---- SATURDAY,  15 AUG 2026 ----                                                                     
 07.50.34 JOB00421  ICH70001I DBAP055  LAST ACCESS AT 07:14:50 ON SATURDAY, AUGUST 15, 2026                             
 07.50.34 JOB00421  $HASP373 AAFAREDB STARTED - INIT K    - CLASS S - SYS CPAC                                          
 07.50.34 JOB00421  IEF403I AAFAREDB - STARTED - TIME=07.50.34                                                          
 07.50.34 JOB00421 *IEF233A M 0892,PRIVAT,SL,AAFAREDB,AAFAUTID,  513                                                    
    513                     ADABAS.C.SAVE.DB230.A2026227                                                                
 07.50.37 JOB00421  IEC705I TAPE ON 0892,VC0373,SL,COMP,AAFAREDB,AAFAUTID.SAVE,ADABAS.C.SAVE.DB230.A2026227,MEDIA4      
 07.50.37 JOB00421  ADAU14 00230 ADASAV-Run with save tape 639                                                          
 07.52.38 JOB00421  IEC205I DDSAVE1,AAFAREDB,AAFAUTID,FILESEQ=1, COMPLETE VOLUME LIST,  574                             
    574             DSN=ADABAS.C.SAVE.DB230.A2026227,VOLS=VC0373,TOTALBLOCKS=35035                                      
 07.52.38 JOB00421  IEF234E K 0892,VC0373,PVT,AAFAREDB,AAFAUTID                                                         
 07.52.38 JOB00421  -                                              --TIMINGS (MINS.)--            -----PAGING COUNTS----
 07.52.38 JOB00421  -STEPNAME PROCSTEP    RC   EXCP   CONN    TCB    SRB  CLOCK   SERV  WORKLOAD  PAGE  SWAP   VIO SWAPS
 07.52.38 JOB00421  -SAVE     AAFAUTID    00  54152  85820    .50    .07    2.0  3913K  SYSTEM       0     0     0     0
 07.52.38 JOB00421 *IEF233A M 089E,PRIVAT,SL,AAFAREDB,AAFAUTID,  579                                                    
    579                     ADABAS.C.REORDB.DB230.A2026227                                                              
 07.52.39 JOB00421  ADAN02 00230 Nucleus run without protection log                                                     
 07.52.39 JOB00421  ADAL01 00230 2026-08-15 07:52:38 CLOG not active                                                    
 07.52.39 JOB00421  ADAN03 00230 ADABAS coming up                                                                       
 07.52.40 JOB00421  ADAN01 00230 A D A B A S  V7.4.4  is active                                                         
 07.52.40 JOB00421  ADAN01 00230 MODE = SINGLE                                                                          
 07.52.40 JOB00421  ADAN01 00230 Running without recovery log                                                           
 07.52.44 JOB00421  $HASP375 AAFAREDB ESTIMATED  LINES EXCEEDED                                                         
 07.52.49 JOB00421  IEC705I TAPE ON 089E,VC0580,SL,COMP,AAFAREDB,AAFAUTID.REORDB,ADABAS.C.REORDB.DB230.A2026227,MEDIA4  
 07.59.23 JOB00421  IEC205I DDFILEA,AAFAREDB,AAFAUTID,FILESEQ=1, COMPLETE VOLUME LIST,  918                             
    918             DSN=ADABAS.C.REORDB.DB230.A2026227,VOLS=VC0580,TOTALBLOCKS=36218                                    
 07.59.23 JOB00421  ADAU40 00230 Point of No Return reached                                                             
 07.59.23 JOB00421  ADAU41 00230 ADAORD invoked from job AAFAREDB                                                       
 08.08.12 JOB00421  $HASP375 AAFAREDB ESTIMATE EXCEEDED BY               6,000  LINES                                   
 08.16.26 JOB00421  $HASP375 AAFAREDB ESTIMATE EXCEEDED BY              12,000  LINES                                   
 08.16.35 JOB00421  IEF234E K 089E,VC0580,PVT,AAFAREDB,AAFAUTID                                                         
 08.16.35 JOB00421  -REORDB   AAFAUTID    00  1718K   449K   7.75    .51   23.9 71417K  SYSTEM       0     0     0     0
 08.16.35 JOB00421  IEF404I AAFAREDB - ENDED - TIME=08.16.35                                                            
 08.16.35 JOB00421  -AAFAREDB ENDED.  NAME-DBAP055              TOTAL TCB CPU TIME=   8.25 TOTAL ELAPSED TIME=  26.0    
 08.16.35 JOB00421  $HASP395 AAFAREDB ENDED                                                                             
0------ JES2 JOB STATISTICS ------                                                                                      
-  15 AUG 2026 JOB EXECUTION DATE                                                                                       
-           27 CARDS READ                                                                                               
-       26,134 SYSOUT PRINT RECORDS                                                                                     
-            0 SYSOUT PUNCH RECORDS                                                                                     
-        1,072 SYSOUT SPOOL KBYTES                                                                                      
-        26.01 MINUTES EXECUTION TIME                                                                                   
UQS0009 - END OF DATA SET.                                                                                              

Banco Online
1                       J E S 2  J O B  L O G  --  S Y S T E M  C P A C  --  N O D E  J E S 2              
0                                                                                                          
 08.17.32 STC00572 ---- SATURDAY,  15 AUG 2026 ----                                                        
 08.17.32 STC00572  IEF695I START AAFAI230 WITH JOBNAME AAFAI230 IS ASSIGNED TO USER ADABASD , GROUP STCGRP
 08.17.32 STC00572  $HASP373 AAFAI230 STARTED                                                              
 08.17.32 STC00572  IEF403I AAFAI230 - STARTED - TIME=08.17.32                                             
 08.17.34 STC00572  +ADAN02 00230 Nucleus run without protection log                                       
 08.17.34 STC00572  +ADAL04 00230 2026-08-15 08:17:32 W A R N I N G                                        
 08.17.34 STC00572  +             Now it is too late to copy DDCLOGR2                                      
 08.17.34 STC00572  +ADAL02 00230 2026-08-15 08:17:32 CLOGR2 is active                                     
 08.17.34 STC00572  +ADAN03 00230 ADABAS coming up                                                         
 08.17.34 STC00572  +ADAN19 00230 Buffer flush is  a s y n c h r o n o u s                                 
 08.17.34 STC00572  +ADAN01 00230 A D A B A S  V7.4.4  is active                                           
 08.17.34 STC00572  +ADAN01 00230 MODE = MULTI                                                             
 08.17.34 STC00572  +ADAN01 00230 Running without recovery log                                             
 08.19.28 STC00572  +TRIMX4 00230 TRIMV832    STARTUP IN PROGRESS FIX D                                    
 08.19.28 STC00572  +TRIMX4 00230 TRIMV832    ADABAS LBP - ABOVE THE 16 MEG LINE                           
 08.19.28 STC00572  +TRIMX4 00230 TRIMV832    TRIM IS ACTIVE                                               
UQS0009 - END OF DATA SET.                                                                                 

Reorganizado o banco
                                                                                                                                    
                                                                                                                                    
  08:25:48          ***** A D A B A S  BASIC  SERVICES *****       2026-08-15                                                       
  DBID 230                  - Display Unused Storage -                PDRU012                                                       
                                                                                                                                    
         I Device I     Total Number of      I Extent           in Blk.   I                                                         
         I Type   I   Blocks     /  Cyls.    I from        -      until   I                                                         
   ------I--------I------------------------- I----------------------------I                                                         
   DATA  I  8391  I    11509942      153465  I     1118854 -    12628795  I                                                         
   ------I--------I------------------------- I----------------------------I                                                         
   ASSO  I  8391  I    12407339       68929  I      552650 -    12959988  I                                                         
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----                                                       
  Help               Exit                                           Menu

Leia Mais

Adabas - A Importância da Limpeza Periódica do Arquivo de Checkpoint

Se você trabalha como Administrador de Banco de Dados ou desenvolvedor no ecossistema Mainframe/Adabas, sabe que a estabilidade do ambiente depende da gestão impecável dos arquivos de sistema. Entre eles, o arquivo de Checkpoint desempenha um papel vital no registro de eventos do Nucleus, sincronizações de transações (SYN1, SYN2, SYN4) e histórico de execução de utilitários como ADALOD, ADAINV e ADAORD. Porém, existe uma tarefa de manutenção preventiva que às vezes passa despercebida até que um problema aconteça: a deletação periódico dos registros do Checkpoint. A Regra de Ouro: Alinhamento com a Política de Recovery - Um registro de checkpoint só é útil enquanto você possuir os backups e logs de proteção (PLOGs) correspondentes àquele período. Registros de checkpoints de seis meses atrás raramente têm utilidade prática para um processo de Disaster Recovery, pois os backups de dados daquela época já caducaram. A boa prática recomenda alinhar a retenção do arquivo de Checkpoint à janela de recovery da organização (por exemplo, mantendo apenas os últimos 30 a 90 dias).

Listando o checkpoint pelo SYSAOS
  14:24:38          ***** A D A B A S  BASIC  SERVICES *****          2026-08-15                                                    
                           -  Checkpoint Maintenance  -               PCP0002                                                       
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                          Code    Service                                                                                           
                          ----    -----------------------                                                                           
                           C      List checkpoints                                                                                  
                           D      Delete checkpoints                                                                                
                           ?      Help                                                                                              
                           .      Exit                                                                                              
                          ----    -----------------------                                                                           
                                                                                                                                    
        Code ............. c                                                                                                        
        Date(YYYY-MM-DD) . 0000-00-00                                                                                               
        Ext. CP-list ..... N                                                                                                        
        Checkpoint Name .. ALL                                                                                                      
        Database ID ...... 240    (DB.P240.PRODASUL)                                                                                
                                                                                                                                    
                                                                                                                                    
  Command ==>                                                                                                                       
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----                                                       
  Help               Exit                                           Menu  

05/07/2026 - É a data mais antiga que temos no checkpoint
  14:24:53          ***** A D A B A S  BASIC  SERVICES *****       2026-08-15                                                       
  DBID 240                      - List Checkpoints -                  PCPC002                                                       
                                                                                                                                    
    CP   CP     Date      Time      PLOG     Block      Vol/Ser   User Job Name                                                     
   Name Type                       Number    Number      Number   Type                                                              
   ---- ---- ---------- --------   ------  ----------   --------  ---- --------                                                     
   SYNS  5B  2026-07-05 00:15:14     5501     8250488   MULTI     EXU  ADAEND                                                       
   SYNV  28  2026-07-05 00:15:52                                       AAFAP240                                                     
   SYNP  28  2026-07-05 00:15:52                                       AAFAP240                                                     
   SYNP  06  2026-07-05 00:19:15                                       AAFABMES                                                     
   SYNV  0A  2026-07-05 02:07:59                                       AAFABMES                                                     
   SYNV  0A  2026-07-05 02:07:59                                       AAFABMES                                                     
   SYNV  0A  2026-07-05 02:07:59                                       AAFABMES                                                     
   SYNV  0A  2026-07-05 02:07:59                                       AAFABMES                                                     
   SYNV  0A  2026-07-05 02:07:59                                       AAFABMES                                                     
   SYNV  0A  2026-07-05 02:07:59                                       AAFABMES                                                     
   SYNV  0A  2026-07-05 02:07:59                                       AAFABMES                                                     
   SYNC  01  2026-07-05 02:08:08                                       AAFABMES                                                     
   SYNS  5B  2026-07-05 02:08:10                                  EXU  ADAEND                                                       
   SYNC  01  2026-07-05 02:10:23     5530           1   MULTI          AAFAI240                                                     
   SYNS  60  2026-07-05 03:13:18     5530        9505   MULTI          ADABAS                                                       
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7 ----- PF8----- PF12-----                                                      
  Help               Exit                Top      -        +        Menu  

Temos um jcl para deletar pela data, vamos deletar os registros até a data 15/07/2026 - vai ficar no checkpoing os registros depois de 16/07/2026
//AAFSNATB JOB (AAFP,DIBD),CLAU,CLASS=S,MSGCLASS=A TYPRUN=HOLD      
//*UQ ALLOW                                                         
//* --------------------------------------------------------------- 
//*          EXCLUIR REGISTROS DA CHECKPOINT - YYYYMMDD             
//* --------------------------------------------------------------- 
//ADADBS   EXEC AAFAU240                                            
//DDCARD   DD *                                                     
ADARUN PROG=ADADBS,DBID=240                                         
//DDPRINT  DD  SYSOUT=A                                             
//DDKARTE  DD *                                                     
ADADBS DELCP    TODATE=20260715                                     
/*   

Job rodou ok
1                       J E S 2  J O B  L O G  --  S Y S T E M  C P A C  --  N O D E  J E S 2                           
0                                                                                                                       
 14.25.07 JOB01121 ---- SATURDAY,  15 AUG 2026 ----                                                                     
 14.25.07 JOB01121  ICH70001I AA01055  LAST ACCESS AT 14:21:33 ON SATURDAY, AUGUST 15, 2026                             
 14.25.07 JOB01121  $HASP373 AAFSNATB STARTED - INIT K    - CLASS S - SYS CPAC                                          
 14.25.07 JOB01121  IEF403I AAFSNATB - STARTED - TIME=14.25.07                                                          
 14.25.09 JOB01121  -                                              --TIMINGS (MINS.)--            -----PAGING COUNTS----
 14.25.09 JOB01121  -STEPNAME PROCSTEP    RC   EXCP   CONN    TCB    SRB  CLOCK   SERV  WORKLOAD  PAGE  SWAP   VIO SWAPS
 14.25.09 JOB01121  -ADADBS   AAFAU240    00     91     25    .00    .00     .0   2362  SYSTEM       0     0     0     0
 14.25.09 JOB01121  IEF404I AAFSNATB - ENDED - TIME=14.25.09                                                            
 14.25.09 JOB01121  -AAFSNATB ENDED.  NAME-CLAU                 TOTAL TCB CPU TIME=    .00 TOTAL ELAPSED TIME=    .0    
 14.25.09 JOB01121  $HASP395 AAFSNATB ENDED                                                                             
0------ JES2 JOB STATISTICS ------                                                                                      
-  15 AUG 2026 JOB EXECUTION DATE                                                                                       
-           14 CARDS READ                                                                                               
-          762 SYSOUT PRINT RECORDS                                                                                     
-            0 SYSOUT PUNCH RECORDS                                                                                     
-           33 SYSOUT SPOOL KBYTES                                                                                      
-         0.04 MINUTES EXECUTION TIME                                                                                   
UQS0009 - END OF DATA SET.   

Deletou 416 registros no checkpoint
1                                                                               
 A D A D B S   V7.4  SM4   DBID = 00240  Started           2026-08-15  14:25:06 
                                                                                
                                                                                
                                                                                
 Parameters:                                                                    
 -----------                                                                    
                                                                                
                                                                                
 ADADBS DELCP    TODATE=20260715                                                
                                                                                
                                                                                
  ---> 416 checkpoints deleted; TODATE=20260715 (YYYYMMDD)                      
                                                                                
                                                                                
                                                                                
 A D A D B S  Terminated normally                          2026-08-15  14:25:08 
UQS0009 - END OF DATA SET.   

Listando no checkpoint - vamos ver a data mais antiga
  14:25:03          ***** A D A B A S  BASIC  SERVICES *****          2026-08-15                                                    
                           -  Checkpoint Maintenance  -               PCP0002                                                       
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                          Code    Service                                                                                           
                          ----    -----------------------                                                                           
                           C      List checkpoints                                                                                  
                           D      Delete checkpoints                                                                                
                           ?      Help                                                                                              
                           .      Exit                                                                                              
                          ----    -----------------------                                                                           
                                                                                                                                    
        Code ............. c                                                                                                        
        Date(YYYY-MM-DD) . 0000-00-00                                                                                               
        Ext. CP-list ..... N                                                                                                        
        Checkpoint Name .. ALL                                                                                                      
        Database ID ...... 240    (DB.P240.PRODASUL)                                                                                
                                                                                                                                    
  ECPC02 : 'List Checkpoints'  function interrupted                                                                                 
  Command ==>                                                                                                                       
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----                                                       
  Help               Exit                                           Menu    

A data mais antiga é 16/07/2026
  14:26:07          ***** A D A B A S  BASIC  SERVICES *****       2026-08-15                                                       
  DBID 240                      - List Checkpoints -                  PCPC002                                                       
                                                                                                                                    
    CP   CP     Date      Time      PLOG     Block      Vol/Ser   User Job Name                                                     
   Name Type                       Number    Number      Number   Type                                                              
   ---- ---- ---------- --------   ------  ----------   --------  ---- --------                                                     
   SYN1  06  2026-07-16 00:12:15     5530     3402148   MULTI     UTI  AAFABDIA                                                     
   SYNP  06  2026-07-16 00:12:16     5530     3402170   MULTI     UTI  AAFABDIA                                                     
   SYNS  60  2026-07-16 00:19:05     5530     3403776   MULTI          ADABAS                                                       
   SYNS  60  2026-07-16 01:22:00     5530     3426248   MULTI          ADABAS                                                       
   SYNS  60  2026-07-16 02:24:55     5530     3439925   MULTI          ADABAS                                                       
   SYN2  06  2026-07-16 02:28:20     5530     3440354   MULTI     UTI  AAFABDIA                                                     
   SYNV  0A  2026-07-16 02:28:22     5530     3440355   MULTI     UTI  AAFABDIA                                                     
   SYNV  0A  2026-07-16 02:28:22     5530     3440356   MULTI     UTI  AAFABDIA                                                     
   SYNV  0A  2026-07-16 02:28:22     5530     3440357   MULTI     UTI  AAFABDIA                                                     
   SYNV  0A  2026-07-16 02:28:22     5530     3440358   MULTI     UTI  AAFABDIA                                                     
   SYNV  0A  2026-07-16 02:28:22     5530     3440359   MULTI     UTI  AAFABDIA                                                     
   SYNV  0A  2026-07-16 02:28:22     5530     3440360   MULTI     UTI  AAFABDIA                                                     
   SYNV  0A  2026-07-16 02:28:22     5530     3440361   MULTI     UTI  AAFABDIA                                                     
   SYNS  60  2026-07-16 03:27:50     5530     3443329   MULTI          ADABAS                                                       
   SYNS  60  2026-07-16 04:30:45     5530     3447522   MULTI          ADABAS                                                       
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7 ----- PF8----- PF12-----                                                      
  Help               Exit                Top      -        +        Menu    

Como temos alguns bancos, criei um programa em Natural para submeter um job que saia deletando dos bancos o checkpoint
  ------------------------------------------------------------------------------                                                    
  AA01055           SUPERINTENDENCIA DE SISTEMAS CORPORATIVOS           DBAPJ879                                                    
  14:28:05 ------------------------------------------------------------ 15/08/26                                                    
                                                                        SUPORTE2                                                    
                                                                                                                                    
           ------------------------------------------------------------                                                             
                                                                                                                                    
                           DIA : 15  MES: 7_  ANO: 2026                                                                             
                                                                                                                                    
           ------------------------------------------------------------                                                             
                                                                                                                                    
                            TECLE PF3 PARA VOLTAR                                                                                   
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
 Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---                                                    
                   MENU  

Esse é o programa natural criado
* ------------------------------------------------------------------- *
* FUNCAO: DELETAR DADOS DO CHECKPOINT DOS BANCOS ADABAS               *
*  AUTOR: CLAUDEMAR MARTINS                                           *
* ------------------------------------------------------------------- *
DEFINE DATA LOCAL                                                      
1 #CALLER   (A4) INIT <'NAT '>                                         
1 #JOBNUM   (A8)                                                       
1 REDEFINE #JOBNUM                                                     
  2 #JOBA   (A3)                                                       
  2 #JOBN   (N5)                                                       
1 #I        (P3)                                                       
1 #RC       (B4)                                                       
1 #TOT      (B2)                                                       
1 #DBID     (N3)                                                       
1 #FILE     (N3)                                                       
1 #Y2K      (A1)  INIT <'N'>                                           
1 #DIA      (N8)                                                       
1 REDEFINE  #DIA                                                       
  2 #YYP  (N4)                                                         
  2 #MMP  (N2)                                                         
  2 #DDP  (N2)                                                         
1 #C01 (A80) INIT                                                      
  <'//AAFSNATB JOB (AAFS,OSB),XXXXXXX,CLASS=S,MSGCLASS=A,TYPRUN=HOLD'> 
1 REDEFINE #C01                                                        
  2 FILLER  2X                                                         
  2 #JOBNAME (A8)                                                      
  2 #FIL1 (A06)                                                        
  2 #ACC  (A04)                                                        
  2 #FIL2 (A06)                                                        
  2 #USER (A07)                                                        
1 #C02 (A80) INIT <'//*UQ ALLOW'>                                      
1 #C03 (A80) INIT <'//* -------------------------------------------- '>
1 #C04 (A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  230   '>
1 #C05 (A80) INIT <'//* -------------------------------------------- '>
1 #C06 (A80) INIT <'//ADADBS   EXEC AAFAU230'>                         
1 #C07 (A80) INIT <'//DDCARD   DD *'>                                  
1 #C08 (A80) INIT <'ADARUN PROG=ADADBS,DBID=230'>                      
1 #C09 (A80) INIT <'//DDPRINT  DD  SYSOUT=A'>                          
1 #C10 (A80) INIT <'//DDKARTE  DD *'>                                  
1 #C11 (A80)                                                           
1 #C12 (A80) INIT <'/*'>                                               
1 #C13 (A80) INIT <'//* -------------------------------------------- '>
1 #C14 (A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  240   '>
1 #C15 (A80) INIT <'//* -------------------------------------------- '>
1 #C16 (A80) INIT <'//ADADBS   EXEC AAFAU240'>                         
1 #C17 (A80) INIT <'//DDCARD   DD *'>                                  
1 #C18 (A80) INIT <'ADARUN PROG=ADADBS,DBID=240'>                      
1 #C19 (A80) INIT <'//DDPRINT  DD  SYSOUT=A'>                          
1 #C20 (A80) INIT <'//DDKARTE  DD *'>                                  
1 #C21 (A80)                                                           
1 #C22 (A80) INIT <'/*'>                                               
1 #C23 (A80) INIT <'//* -------------------------------------------- '>
1 #C24 (A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  100   '>
1 #C25 (A80) INIT <'//* -------------------------------------------- '>
1 #C26 (A80) INIT <'//ADADBS   EXEC AAFAU100   '>                      
1 #C27 (A80) INIT <'//DDCARD   DD *            '>                      
1 #C28 (A80) INIT <'ADARUN PROG=ADADBS,DBID=100'>                      
1 #C29 (A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C30 (A80) INIT <'//DDKARTE  DD *            '>                      
1 #C31 (A80)                                                           
1 #C32 (A80) INIT <'/*'>                                               
1 #C33 (A80) INIT <'//* -------------------------------------------- '>
1 #C34 (A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  110   '>
1 #C35 (A80) INIT <'//* -------------------------------------------- '>
1 #C36 (A80) INIT <'//ADADBS   EXEC AAFAU110   '>                      
1 #C37 (A80) INIT <'//DDCARD   DD *            '>                      
1 #C38 (A80) INIT <'ADARUN PROG=ADADBS,DBID=110'>                      
1 #C39 (A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C40 (A80) INIT <'//DDKARTE  DD *            '>                      
1 #C41 (A80)                                                           
1 #C42 (A80) INIT <'/*                         '>                      
1 #C43 (A80) INIT <'//* -------------------------------------------- '>
1 #C44 (A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  120   '>
1 #C45 (A80) INIT <'//* -------------------------------------------- '>
1 #C46 (A80) INIT <'//ADADBS   EXEC AAFAU120   '>                      
1 #C47 (A80) INIT <'//DDCARD   DD *            '>                      
1 #C48 (A80) INIT <'ADARUN PROG=ADADBS,DBID=120'>                      
1 #C49 (A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C50 (A80) INIT <'//DDKARTE  DD *            '>                      
1 #C51 (A80)                                                           
1 #C52 (A80) INIT <'/*                         '>                      
1 #C53 (A80) INIT <'//* -------------------------------------------- '>
1 #C54 (A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  130   '>
1 #C55 (A80) INIT <'//* -------------------------------------------- '>
1 #C56 (A80) INIT <'//ADADBS   EXEC AAFAU130   '>                      
1 #C57 (A80) INIT <'//DDCARD   DD *            '>                      
1 #C58 (A80) INIT <'ADARUN PROG=ADADBS,DBID=130'>                      
1 #C59 (A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C60 (A80) INIT <'//DDKARTE  DD *            '>                      
1 #C61 (A80)                                                           
1 #C62 (A80) INIT <'/*                         '>                      
1 #C63 (A80) INIT <'//* -------------------------------------------- '>
1 #C64 (A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  140   '>
1 #C65 (A80) INIT <'//* -------------------------------------------- '>
1 #C66 (A80) INIT <'//ADADBS   EXEC AAFAU140   '>                      
1 #C67 (A80) INIT <'//DDCARD   DD *            '>                      
1 #C68 (A80) INIT <'ADARUN PROG=ADADBS,DBID=140'>                      
1 #C69 (A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C70 (A80) INIT <'//DDKARTE  DD *            '>                      
1 #C71 (A80)                                                           
1 #C72 (A80) INIT <'/*                         '>                      
1 #C73 (A80) INIT <'//* -------------------------------------------- '>
1 #C74 (A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  141   '>
1 #C75 (A80) INIT <'//* -------------------------------------------- '>
1 #C76 (A80) INIT <'//** ADADBS   EXEC AAFAU141   '>                   
1 #C77 (A80) INIT <'//** DDCARD   DD *            '>                   
1 #C78 (A80) INIT <'//** ADARUN PROG=ADADBS,DBID=141'>                 
1 #C79 (A80) INIT <'//** DDPRINT  DD  SYSOUT=A    '>                   
1 #C80 (A80) INIT <'//** DDKARTE  DD *            '>                   
1 #C81 (A80)                                                           
1 #C82 (A80) INIT <'/*                         '>                      
1 #C83 (A80) INIT <'//* -------------------------------------------- '>
1 #C84 (A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  150   '>
1 #C85 (A80) INIT <'//* -------------------------------------------- '>
1 #C86 (A80) INIT <'//ADADBS   EXEC AAFAU150   '>                      
1 #C87 (A80) INIT <'//DDCARD   DD *            '>                      
1 #C88 (A80) INIT <'ADARUN PROG=ADADBS,DBID=150'>                      
1 #C89 (A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C90 (A80) INIT <'//DDKARTE  DD *            '>                      
1 #C91 (A80)                                                           
1 #C92 (A80) INIT <'/*                         '>                      
1 #C93 (A80) INIT <'//* -------------------------------------------- '>
1 #C94 (A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  160   '>
1 #C95 (A80) INIT <'//* -------------------------------------------- '>
1 #C96 (A80) INIT <'//ADADBS   EXEC AAFAU160   '>                      
1 #C97 (A80) INIT <'//DDCARD   DD *            '>                      
1 #C98 (A80) INIT <'ADARUN PROG=ADADBS,DBID=160'>                      
1 #C99 (A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C100(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C101(A80)                                                           
1 #C102(A80) INIT <'/*                         '>                      
1 #C103(A80) INIT <'//* -------------------------------------------- '>
1 #C104(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  170   '>
1 #C105(A80) INIT <'//* -------------------------------------------- '>
1 #C106(A80) INIT <'//ADADBS   EXEC AAFAU170   '>                      
1 #C107(A80) INIT <'//DDCARD   DD *            '>                      
1 #C108(A80) INIT <'ADARUN PROG=ADADBS,DBID=170'>                      
1 #C109(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C110(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C111(A80)                                                           
1 #C112(A80) INIT <'/*                         '>                      
1 #C113(A80) INIT <'//* -------------------------------------------- '>
1 #C114(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  180   '>
1 #C115(A80) INIT <'//* -------------------------------------------- '>
1 #C116(A80) INIT <'//ADADBS   EXEC AAFAU180   '>                      
1 #C117(A80) INIT <'//DDCARD   DD *            '>                      
1 #C118(A80) INIT <'ADARUN PROG=ADADBS,DBID=180'>                      
1 #C119(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C120(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C121(A80)                                                           
1 #C122(A80) INIT <'/*                         '>                      
1 #C123(A80) INIT <'//* -------------------------------------------- '>
1 #C124(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  190   '>
1 #C125(A80) INIT <'//* -------------------------------------------- '>
1 #C126(A80) INIT <'//ADADBS   EXEC AAFAU190   '>                      
1 #C127(A80) INIT <'//DDCARD   DD *            '>                      
1 #C128(A80) INIT <'ADARUN PROG=ADADBS,DBID=190'>                      
1 #C129(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C130(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C131(A80)                                                           
1 #C132(A80) INIT <'/*                         '>                      
1 #C133(A80) INIT <'//* -------------------------------------------- '>
1 #C134(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  020   '>
1 #C135(A80) INIT <'//* -------------------------------------------- '>
1 #C136(A80) INIT <'//ADADBS   EXEC AAFAU020   '>                      
1 #C137(A80) INIT <'//DDCARD   DD *            '>                      
1 #C138(A80) INIT <'ADARUN PROG=ADADBS,DBID=020'>                      
1 #C139(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C140(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C141(A80)                                                           
1 #C142(A80) INIT <'/*                         '>                      
1 #C143(A80) INIT <'//* -------------------------------------------- '>
1 #C144(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  030   '>
1 #C145(A80) INIT <'//* -------------------------------------------- '>
1 #C146(A80) INIT <'//ADADBS   EXEC AAFAU030   '>                      
1 #C147(A80) INIT <'//DDCARD   DD *            '>                      
1 #C148(A80) INIT <'ADARUN PROG=ADADBS,DBID=030'>                      
1 #C149(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C150(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C151(A80)                                                           
1 #C152(A80) INIT <'/*                         '>                      
1 #C153(A80) INIT <'//* -------------------------------------------- '>
1 #C154(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  040   '>
1 #C155(A80) INIT <'//* -------------------------------------------- '>
1 #C156(A80) INIT <'//ADADBS   EXEC AAFAU040   '>                      
1 #C157(A80) INIT <'//DDCARD   DD *            '>                      
1 #C158(A80) INIT <'ADARUN PROG=ADADBS,DBID=040'>                      
1 #C159(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C160(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C161(A80)                                                           
1 #C162(A80) INIT <'/*                         '>                      
1 #C163(A80) INIT <'//* -------------------------------------------- '>
1 #C164(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  050   '>
1 #C165(A80) INIT <'//* -------------------------------------------- '>
1 #C166(A80) INIT <'//ADADBS   EXEC AAFAU050   '>                      
1 #C167(A80) INIT <'//DDCARD   DD *            '>                      
1 #C168(A80) INIT <'ADARUN PROG=ADADBS,DBID=050'>                      
1 #C169(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C170(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C171(A80)                                                           
1 #C172(A80) INIT <'/*                         '>                      
1 #C173(A80) INIT <'//* -------------------------------------------- '>
1 #C174(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  060   '>
1 #C175(A80) INIT <'//* -------------------------------------------- '>
1 #C176(A80) INIT <'//ADADBS   EXEC AAFAU060   '>                      
1 #C177(A80) INIT <'//DDCARD   DD *            '>                      
1 #C178(A80) INIT <'ADARUN PROG=ADADBS,DBID=060'>                      
1 #C179(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C180(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C181(A80)                                                           
1 #C182(A80) INIT <'/*                         '>                      
1 #C183(A80) INIT <'//* -------------------------------------------- '>
1 #C184(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  070   '>
1 #C185(A80) INIT <'//* -------------------------------------------- '>
1 #C186(A80) INIT <'//ADADBS   EXEC AAFAU070   '>                      
1 #C187(A80) INIT <'//DDCARD   DD *            '>                      
1 #C188(A80) INIT <'ADARUN PROG=ADADBS,DBID=070'>                      
1 #C189(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C190(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C191(A80)                                                           
1 #C192(A80) INIT <'/*                         '>                      
1 #C193(A80) INIT <'//* -------------------------------------------- '>
1 #C194(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  080   '>
1 #C195(A80) INIT <'//* -------------------------------------------- '>
1 #C196(A80) INIT <'//ADADBS   EXEC AAFAU080   '>                      
1 #C197(A80) INIT <'//DDCARD   DD *            '>                      
1 #C198(A80) INIT <'ADARUN PROG=ADADBS,DBID=080'>                      
1 #C199(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C200(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C201(A80)                                                           
1 #C202(A80) INIT <'/*                         '>                      
1 #C203(A80) INIT <'//* -------------------------------------------- '>
1 #C204(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  082   '>
1 #C205(A80) INIT <'//* -------------------------------------------- '>
1 #C206(A80) INIT <'//ADADBS   EXEC AAFAU082   '>                      
1 #C207(A80) INIT <'//DDCARD   DD *            '>                      
1 #C208(A80) INIT <'ADARUN PROG=ADADBS,DBID=082'>                      
1 #C209(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C210(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C211(A80)                                                           
1 #C212(A80) INIT <'/*                         '>                      
1 #C213(A80) INIT <'//* -------------------------------------------- '>
1 #C214(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  241   '>
1 #C215(A80) INIT <'//* -------------------------------------------- '>
1 #C216(A80) INIT <'//ADADBS   EXEC AAFAU241   '>                      
1 #C217(A80) INIT <'//DDCARD   DD *            '>                      
1 #C218(A80) INIT <'ADARUN PROG=ADADBS,DBID=241'>                      
1 #C219(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C220(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C221(A80)                                                           
1 #C222(A80) INIT <'/*                         '>                      
1 #C223(A80) INIT <'//* -------------------------------------------- '>
1 #C224(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  242   '>
1 #C225(A80) INIT <'//* -------------------------------------------- '>
1 #C226(A80) INIT <'//ADADBS   EXEC AAFAU242   '>                      
1 #C227(A80) INIT <'//DDCARD   DD *            '>                      
1 #C228(A80) INIT <'ADARUN PROG=ADADBS,DBID=242'>                      
1 #C229(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                      
1 #C230(A80) INIT <'//DDKARTE  DD *            '>                      
1 #C231(A80)                                                           
1 #C232(A80) INIT <'/*                         '>                       
1 #C233(A80) INIT <'//* -------------------------------------------- '> 
1 #C234(A80) INIT <'//* DELETA REGISTROS DO CHECKPOINT ADABAS  210   '> 
1 #C235(A80) INIT <'//* -------------------------------------------- '> 
1 #C236(A80) INIT <'//ADADBS   EXEC AAFAU210   '>                       
1 #C237(A80) INIT <'//DDCARD   DD *            '>                       
1 #C238(A80) INIT <'ADARUN PROG=ADADBS,DBID=210'>                       
1 #C239(A80) INIT <'//DDPRINT  DD  SYSOUT=A    '>                       
1 #C240(A80) INIT <'//DDKARTE  DD *            '>                       
1 #C241(A80)                                                            
1 #C242(A80) INIT <'/*                         '>                       
1 #DATA-AUX  (D)                                                        
END-DEFINE                                                              
* ==================================================================== *
FORMAT KD=ON                                                            
SET CONTROL 'U'                                                         
SET KEY PF3 NAMED 'MENU'                                                
  PF8 NAMED '    ' PF9 NAMED '     '                                    
MOVE *INIT-USER TO #USER                                                
* ==================================================================== *
REPEAT                                                                  
*  RESET #ARQ                                                           
  RESET INITIAL #Y2K                                                    
  MOVE *DATN TO #DIA           /* PEGA DATA ATUAL (YYYYMMDD)            
  IF #MMP = 01                 /* SE JANEIRO                            
    COMPUTE #YYP = #YYP - 1    /* VOLTA O ANO                           
    MOVE 12 TO #MMP            /* MUDA PARA DEZEMBRO                    
  ELSE                                                                  
    COMPUTE #MMP = #MMP - 1    /* APENAS VOLTA UM MES                   
  END-IF                                                                
* ==================================================================== *
  INPUT (IP=OFF SG=OFF AD=MIL'_')                                       
    02T '-' (78)                                                        
    /       02T *USER                                                   
    20T 'SUPERINTENDENCIA DE SISTEMAS CORPORATIVOS' (I)                  
    72T  *PROGRAM                                                       
    /       02T  *TIME(AL=8)                                            
    11T '-' (60)                                                        
    72T  *DATE                                                          
    /                                                                   
    72T *LIBRARY-ID                                                     
    //                                                                  
    11T '-' (60)                                                        
    //                                                                  
    27T 'DIA :' #DDP                                                    
    2X 'MES:' #MMP 2X 'ANO:' #YYP                                       
    //                                                                  
    11T '-' (60)                                                        
* ==================================================================== *
    //28T'TECLE PF3 PARA VOLTAR'(I)                                     
  IF *PF-KEY EQ 'PF3'                                                   
    FETCH 'DBAPMENU'                                                    
  END-IF                                                                
* ==================================================================== *
  IF #DIA = *DATN                                                       
    REINPUT ' DIGITE UMA DATA DIFERENTE DE HOJE ' MARK *#DBID ALARM     
  END-IF                                                                
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO  #C11 LEAVING NO            
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO  #C21 LEAVING NO            
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO  #C31 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO  #C41 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO  #C51 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO  #C61 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO  #C71 LEAVING NO    
  COMPRESS '//* ADADBS DELCP TODATE=' #DIA INTO  #C81 LEAVING NO
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO  #C91 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C101 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C111 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C121 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C131 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C141 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C151 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C161 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C171 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C181 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C191 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C201 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C211 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C221 LEAVING NO    
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C231 LEAVING NO            
  COMPRESS 'ADADBS DELCP TODATE=' #DIA INTO #C241 LEAVING NO            
* ==================================================================== *
  COMPUTE #TOT = 242 * 80                                               
  CALL 'RJE' #RC #C01 #TOT                                              
  CALL 'GETJOB' #JOBNUM #CALLER                                         
* ==================================================================== *
  FORMAT KD=OFF                                                         
  DEFINE WINDOW NUMJOB                                                  
    SIZE 08 * 50    BASE 07/17   TITLE ' NUMERO DO JOB '                
    FRAMED ON                                                           
  INPUT WINDOW = 'NUMJOB'                                               
    01/01 'FOI SUBMETIDO O JOB:  ' #JOBNAME  (AD=IO)                    
    02/01 'COM O NUMERO ......:'  #JOBN     (AD=IO)                     
    03/01 '                       '                                     
    04/11 'TECLE ENTER PARA VOLTAR'(I)                                  
* ==================================================================== *
* FETCH 'DBAPMENU'                                                      
END-REPEAT                                                              
END 

Conclusão - A limpeza periódica do arquivo de Checkpoint é um investimento pequeno em automação que evita grandes dores de cabeça em produção. Manter o arquivo enxuto garante previsibilidade, reduz o tempo de busca durante recuperações de emergência e evita paradas desnecessárias no Adabas. Seu ambiente Adabas já possui um job agendado para o expurgo do Checkpoint ou essa manutenção ainda é feita sob demanda? Deixe seu comentário e compartilhe como é a rotina no seu mainframe!
Leia Mais