sábado, agosto 15, 2026

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 DA GESTAO DA INFORMACAO' (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!

0 Comments:

Enviar um comentário