sábado, dezembro 27, 2025

PROGRAMANDO EM NATURAL - Criando Sistema

Programar em Natural é uma experiência muito prazerosa, especialmente quando trabalhamos com soluções que realmente fazem diferença no ambiente corporativo. Neste contexto, vamos apresentar uma solução que tem como objetivo desenvolver um sistema capaz de realizar a leitura e o tratamento automático dos dados gerados pelo RMM — o software responsável por monitorar os cartuchos e gerenciar as informações relacionadas ao uso e ao controle das fitas. Antes, a única forma de consultar essas informações era acessando o ambiente TSO e executando comandos diretamente no RMM, o que demandava tempo, conhecimento técnico específico e tornava o processo menos acessível para outros usuários. Com a solução proposta, passaremos a acessar esses dados diretamente por meio de programas desenvolvidos em Natural, permitindo consultar as informações dos cartuchos do RMM de maneira muito mais prática, estruturada e integrada. A partir das informações coletadas, será implementado um processo de carga automática para o banco de dados Adabas. Dessa forma, os dados ficarão centralizados, possibilitando consultas mais rápidas, melhor organização das informações, geração de relatórios gerenciais e maior integração com outros sistemas do ambiente corporativo. Além disso, a criação dessa base histórica contribuirá para auditorias, análises operacionais e apoio à tomada de decisões estratégicas.

MEMBER=@RMM25   000053 REC SAVE:26.12.2025 16:47 BY   USERID ADA4022  R=00000001                                                    
DSN=NTR.PRODUCAO.RMM                             LIB=PB VOL=ADAP25 UNIT=2314                                                        
....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8                                                    
//AADPA045 JOB (AABS,DIST),CLAUDEMAR,CLASS=S,MSGCLASS=A
//*UQ ALLOW                                                                                                                         
//* ----------------------------------------------------------------                                                                
//*         LISTAR OS CARTUCHOS DO RMM E SALVANDO NO BANCO                                                                          
//* ----------------------------------------------------------------                                                                
//STEP0001 EXEC PGM=IKJEFT01,REGION=4096K                                                                                           
//SYSTSPRT DD SYSOUT=G
//SYSPRINT DD SYSOUT=A                                                                                                              
//SYSTSIN  DD *                                                                                                                     
  RMM SEARCHDATASET OWNER(*) SINCE(91073) LIMIT(*)  

Saiu esse relatório

1IKJ56644I NO VALID TSO USERID, DEFAULT USER ATTRIBUTES USED                                                                        
 READY                                                                                                                              
   RMM SEARCHDATASET OWNER(*) SINCE(91073) LIMIT(*)                                                                                 
 Data set name                                Volume Owner    Create date Seq                                                       
 -------------------------------------------- ------ -------- ----------- -----  
 AAA.C.ACCOUNT.ANO2000                        TP0804 RMM      26/11/2007  1                                                         
 AAA.C.ACCOUNT.ANO2000                        TP0805 RMM      26/11/2007  1                                                         
 AAA.C.ACCOUNT.ANO2001                        TP0538 RMM      27/11/2007  1                                                         
 AAA.C.ACCOUNT.ANO2002                        TP0291 RMM      29/11/2007  1                                                         
 AAA.C.ACCOUNT.ANO2010.PART2                  TP0513 RMM      13/10/2010  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0001V00                 CT2025          30/03/2000  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0002V00                 CT1333          04/04/2000  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0003V00                 CT1624          31/01/2002  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0004V00                 CT2000          31/01/2002  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0004V00                 CT2088          31/01/2002  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0006V00                 CT1344 RMM      05/02/2002  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0006V00                 CT1774 RMM      05/02/2002  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0007V00                 CT1839 RMM      20/02/2003  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0007V00                 CT1845 RMM      20/02/2003  1                                                         
 AAA.C.ACCOUNT.CT0370.DI310301.DF300401       TP0291 RMM      30/11/2007  3                                                         
 AAA.C.ACCOUNT.CT1023.DI301100.DF010101       TP0291 RMM      30/11/2007  2                                                         
 AAA.C.ACCOUNT.CT1035.DI300102.DF030302       TP0291 RMM      30/11/2007  4                                                         
 AAA.C.ACCOUNT.DIARIO.G0306V00                TP1123          09/04/2013  1                                                         
 AAA.C.ACCOUNT.DIARIO.G0307V00                TP0314          12/04/2013  1  

Foi criado essa view para gravar essas informações do RMM

 17:34:23               ***** NATURAL LIST COMMAND *****              27/12/2025                                                    
 User ADA4022            - List DDM AAFU-FITOTECA-RMM -         Library NATURAL                                                    
                                                                                                                                    
 DDM DBID 0      DDM FNR 433   VSAM Name          Default Sequence     Page   1                                                     
                                                                                                                                    
 T L  DB  Name                             F Leng  S D Remark                                                                       
 - -  --  -------------------------------- - ----  - - ------------------------                                                     
 *        Generation started                                                                                                        
 *        at 2025-07-19 20:10:26                                                                                                    
 *        by user ADA4022                                                                                                           
 *                                                                                                                                  
   1  AA  AAF-DATASET                      A   45  N D                                                                              
   1  AB  AAF-CARTUCHO                     A    6  N D                                                                              
   1  AC  AAF-OWNER                        A    8  N                                                                                
   1  AD  AAF-DATA                         A   10  N                                                                                
   1  AE  AAF-SEQUENCIA                    A    3  N                                                                                
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
 Command ===>                                                                                                                       
                                                                                                                                    
                                                                                                                                    
 End of List.                                                                                                                       
                                                                                                                                    
 Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---                                                    
       Help  Print Exit  Short       --    -     +     ++                Canc  

Foi criado no Adabas esse file para onde vamos armazenar as informações do RMM

  17:57:42          ***** A D A B A S  BASIC  SERVICES *****       2025-12-27                                                       
  DBID 230                    - Display File Layout -                 PDRF012                                                       
   ****************                                                                                                                 
   *  File 433    *   AAFD-FISICO-433                                                                                               
   ****************                                                                                                                 
                                                                                                                                    
   Records loaded ..... 0             Date loaded .......... 2025-07-19 20:09:59                                                    
   TOP ISN ............ 0             Date of last update .. 2025-12-27 17:57:32                                                    
   Max ISN expected ... 51699         Max Compr Rec Lngth .. 10792                                                                  
   Minimum ISN ........ 1             Asso/Data Padding .... 10%/10%                                                                
   Size of ISN ........ 3 Bytes       Highest Index Level .. 3                                                                      
   Number of Updates .. 0             Index Compression .... YES                                                                    
   ISN Reusage ........ YES           USERISN .............. NO                                                                     
   Space Reusage ...... YES           MIXDSDEV ............. YES                                                                    
   ADAM File .......... NO            PGMREFRESH ........... NO                                                                     
   Ciphered File ...... NO            NOACEXTENSION ........ NO                                                                     
   Coupled Files ...... NONE                                                                                                        
   Blk per DS Extent .. 0             Logged DSF Changes ... DS AC Index                                                            
   Blk per UI Extent .. 0             Total Changed Blks ... 52                                                                     
   Blk per NI Extent .. 0             Length of Owner ID ... 0                                                                      
                                                                                                                                    
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----                                                       
  Help               Exit      Refresh                              Menu   

Criamos com essa extenções de AC, UI, NI e DS

  17:58:08          ***** A D A B A S  BASIC  SERVICES *****       2025-12-27                                                       
  DBID 230                   - Display File Layout -                  PDRF022                                                       
  File 433                                                                                                                          
                                                                                                                                    
     I Dev  LiI  Space allocated  I      From         To    I Unused                                                                
     I Type TyI  Blocks   / Cyls. I      RABN         RABN  I BLOCKS  /  Cyls.                                                      
 ----I--------I-------------------I ------------------------I------------------                                                     
     I        I                   I                         I                                                                       
 ASSOI 8391 ACI       50        0 I     535813 -     535862 I        0        0                                                     
     I 8391 UII        1        0 I     535864 -     535864 I        0        0                                                     
     I 8391 NII        1        0 I     535863 -     535863 I        1        0                                                     
     I        I                   I                         I                                                                       
 DATAI 8391 DSI        1        0 I    1100108 -    1100108 I        1        0                                                     
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----                                                       
  Help               Exit      Refresh                              Menu    

Esse foi o programa que vamos ler do dataset e gravar no file Adabas

 >                                       > +  Program     RMM0003  Lib NATURAL                                                     
 Top    ....+....1....+....2....+....3....+....4....+....5....+....6....+....7..                                                    
   0010 * -------------------------------------------------------------------- *                                                    
   0020 *  FUNCAO: GRAVANDO OS DADOS DO RMM PARA UM FILE ADABAS                                                                     
   0030 *  AUTOR : USER DBA 4022                                                                                                
   0040 * -------------------------------------------------------------------- *                                                    
   0050 DEFINE DATA LOCAL                                                                                                           
   0060 01 RMM VIEW OF AAFU-FITOTECA-RMM                                                                                            
   0070   02 AAF-DATASET                                                                                                            
   0080   02 AAF-CARTUCHO                                                                                                           
   0090   02 AAF-OWNER                                                                                                              
   0100   02 AAF-DATA                                                                                                               
   0110   02 AAF-SEQUENCIA                                                                                                          
   0120 * -------------------------------------------------------------------- *                                                    
   0130 01 #DADOS-GENERICOS (A79)                                                                                                   
   0140 01 REDEFINE #DADOS-GENERICOS                                                                                                
   0150   02 FILLER                   1X                                                                                            
   0160   02 #DSN                     (A44)                                                                                         
   0170   02 FILLER                   1X                                                                                            
   0180   02 #VOLUME                  (A06)                                                                                         
   0190   02 FILLER                   1X                                                                                            
   0200   02 #OWNER                   (A08)  
   0210   02 FILLER                   1X                                                                                            
   0220   02 #CREATE_DATE             (A11)                                                                                         
   0230   02 REDEFINE  #CREATE_DATE                                                                                                 
   0240     03 #DIA                   (A02)                                                                                         
   0250     03 #SEPARATOR1            (A01)                                                                                         
   0260     03 #MES                   (A02)                                                                                         
   0270     03 #SEPARATOR2            (A01)                                                                                         
   0280     03 ANO                    (A04)                                                                                         
   0290   02 FILLER                   1X                                                                                            
   0300   02 #SEQ                     (N05)                                                                                         
   0310 END-DEFINE                                                                                                                  
   0320 * -------------------------------------------------------------------- *                                                    
   0330 * GRAVANDO OS DADOS                                                                                                         
   0340 * -------------------------------------------------------------------- *                                                    
   0350 READ WORK FILE 1 #DADOS-GENERICOS                                                                                           
   0360 * -------------------------------------------------------------------- *                                                    
   0370   IF   #SEPARATOR1 EQ '/'                                                                                                   
   0380     AAF-DATASET     :=  #DSN                                                                                                
   0390     AAF-CARTUCHO    :=  #VOLUME                                                                                             
   0400     AAF-OWNER       :=  #OWNER  
   0410     AAF-DATA        :=  #CREATE_DATE                                                                                        
   0420     AAF-SEQUENCIA   :=  #SEQ                                                                                                
   0430   END-IF                                                                                                                    
   0440 * -------------------------------------------------------------------- *                                                    
   0450 * AGORA VAMOS MOSTRA/GRAVAR NO BANCO                                                                                        
   0460 * -------------------------------------------------------------------- *                                                    
   0470 * 1 - MOSTRAR NO RELATORIO OS DADOS                                                                                         
   0480 * -------------------------------------------------------------------- *                                                    
   0490 ** WRITE                                                                                                                    
   0500 **    AAF-DATASET                                                                                                           
   0510 **    AAF-CARTUCHO                                                                                                          
   0520 **    AAF-OWNER                                                                                                             
   0530 **    AAF-DATA                                                                                                              
   0540 **    AAF-SEQUENCIA                                                                                                         
   0550 * -------------------------------------------------------------------- *                                                    
   0560 * 2 - GRAVAR NO BANCO DE DADOS                                                                                              
   0570 * -------------------------------------------------------------------- *                                                    
   0580   STORE RMM                                                                                                                 
   0590   END TRANSACTION                                                                                                           
   0600 END-WORK  
   0610 END  

Esse é o JCL que vamos usar para gerar as informações do RMM e que vamos gravar no Adabas

MEMBER=@RMM25   000053 REC SAVE:26.12.2025 16:47 BY   USERID ADA4022  R=00000001                                                    
DSN=NTR.PRODUCAO.RMM                             LIB=PB VOL=ADAP25 UNIT=2314                                                        
....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8                                                    
//AADPA045 JOB (AABS,DIST),CLAUDEMAR,CLASS=S,MSGCLASS=A                                                               
//*UQ ALLOW                                                                                                                         
//* ----------------------------------------------------------------                                                                
//*         LISTAR OS CARTUCHOS DO RMM E SALVANDO NO BANCO                                                                          
//* ----------------------------------------------------------------                                                                
//  SET DSN1=AAF.S.TSSUSER.CLAU                                                                                                     
//  SET DSN2=AAF.S.BKP072                                                                                                           
//* ----------------------------------------------------------------                                                                
//STEP0001 EXEC PGM=IKJEFT01,REGION=4096K                                                                                           
//SYSTSPRT DD DISP=SHR,DSN=&DSN1                                                                                                    
//SYSPRINT DD SYSOUT=A                                                                                                              
//SYSTSIN  DD *                                                                                                                     
  RMM SEARCHDATASET OWNER(*) SINCE(91073) LIMIT(*)                                                                                  
//* ----------------------------------------------------------------                                                                
//* FILTRO DOS CARTUCHOS RETIDOS                                                                                                    
//* ----------------------------------------------------------------                                                                
//STEP0002 EXEC PGM=SORT                                                                                                            
//SYSPRINT DD SYSOUT=Z                                                                                                              
//SYSOUT   DD SYSOUT=Z                                                                                                              
//SORTIN   DD DISP=SHR,DSN=&DSN1                                                                                                    
//SORTOUT  DD DISP=SHR,DSN=&DSN2                                                                                                    
//SORTWK1  DD DSN=&&TEMP01,DISP=(NEW,PASS),                                                                                         
//           SPACE=(CYL,2),UNIT=SYSDA, 
//           DCB=(LRECL=133,BLKSIZE=1330,RECFM=FBA)                                                                                 
//* --------------------------------------------------------------                                                                  
//SYMNAMES  DD *                                                                                                                    
  LABEL;1,46,CH                                                                                                                     
  CT;47,2,CH                                                                                                                        
  CARTUCHO;49,4,CH                                                                                                                  
  DATA;63,10,CH                                                                                                                     
  SEQ;75,4,CH                                                                                                                       
//SYSIN    DD *                                                                                                                     
  SORT FIELDS=(CT,A,CARTUCHO,A,75,4,UFF,A)                                                                                          
  INCLUDE COND=(CT,EQ,C'CT',OR,CT,EQ,C'TP',OR,CT,EQ,C'VC')                                                                          
/*                                                                                                                                  
//* ---------------------------------------------------------------                                                                 
//*                      ICEGENER PARA A SYSOUT                                                                                     
//* ---------------------------------------------------------------                                                                 
//STEP0003 EXEC PGM=ICEGENER                                                                                                        
//SYSPRINT DD SYSOUT=A                                                                                                              
//SYSUT1   DD DISP=SHR,DSN=&DSN2                                                                                                    
//SYSUT2   DD SYSOUT=A                                                                                                              
//SYSIN    DD DUMMY                                                                                                                 
//* ----------------------------------------------------------------                                                                
//* GRAVANDO NO FILE 433                                                                                                            
//* ---------------------------------------------------------------- 
//NATD EXEC NATURAL,PARM1='SYS=D,MT=0,STACK=(LOG NATURAL)'                                                                         
//CMWKF01  DD DISP=SHR,DSN=&DSN2                                                                                                    
//CMPRINT  DD SYSOUT=G                                                                                                              
//CMPRT01  DD SYSOUT=G,HOLD=YES                                                                                                     
//SYSIN    DD *                                                                                                                     
RMM0003                                                                                                                             
/*

Rodou ok

 IEF142I AADPA045 STEP0001 - STEP WAS EXECUTED - COND CODE 0000                                                                     
 IEF142I AADPA045 STEP0002 - STEP WAS EXECUTED - COND CODE 0000                                                                     
 IEF142I AADPA045 STEP0003 - STEP WAS EXECUTED - COND CODE 0000                                                                     
 IEF142I AADPA045 NATURAL NATD - STEP WAS EXECUTED - COND CODE 0000 

Esse dataset onde é jogado direto os dados do RMM - ele saiu fora de ordem

DSN=AAF.S.TSSUSER.CLAU                                  VOL=ADW001 UNIT=2500                                                        
....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+....0....+....1....+....2....+....3..
1READY                                                                                                                              
   RMM SEARCHDATASET OWNER(*) SINCE(91073) LIMIT(*)                                                                                 
 Data set name                                Volume Owner    Create date Seq                                                       
 -------------------------------------------- ------ -------- ----------- -----                                                     
 AAA.C.ACCOUNT.ANO2000                        TP0804 RMM      26/11/2007  1                                                         
 AAA.C.ACCOUNT.ANO2000                        TP0805 RMM      26/11/2007  1                                                         
 AAA.C.ACCOUNT.ANO2001                        TP0538 RMM      27/11/2007  1                                                         
 AAA.C.ACCOUNT.ANO2002                        TP0291 RMM      29/11/2007  1                                                         
 AAA.C.ACCOUNT.ANO2010.PART2                  TP0513 RMM      13/10/2010  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0001V00                 CT2025          30/03/2000  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0002V00                 CT1333          04/04/2000  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0003V00                 CT1624          31/01/2002  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0004V00                 CT2000          31/01/2002  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0004V00                 CT2088          31/01/2002  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0006V00                 CT1344 RMM      05/02/2002  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0006V00                 CT1774 RMM      05/02/2002  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0007V00                 CT1839 RMM      20/02/2003  1                                                         
 AAA.C.ACCOUNT.ANUAL.G0007V00                 CT1845 RMM      20/02/2003  1                                                         
 AAA.C.ACCOUNT.CT0370.DI310301.DF300401       TP0291 RMM      30/11/2007  3                                                         
 AAA.C.ACCOUNT.CT1023.DI301100.DF010101       TP0291 RMM      30/11/2007  2                                                         
 AAA.C.ACCOUNT.CT1035.DI300102.DF030302       TP0291 RMM      30/11/2007  4                                                         
 AAA.C.ACCOUNT.DIARIO.G0306V00                TP1123          09/04/2013  1                                                         
 AAA.C.ACCOUNT.DIARIO.G0307V00                TP0314          12/04/2013  1  

Agora fica classifica - pelo SORT

DSN=AAF.S.BKP072                                        VOL=PRD304 UNIT=151E                                                        
....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+....0....+....1....+....2.           
 ALA.C.DIRF.A2000                             CT0001 RMM      15/03/2001  1                                                         
 ALA.C.DIRF.A2000                             CT0001 RMM      09/04/2001  2                                                         
 ALA.C.DIRF.A2000                             CT0001 RMM      08/05/2001  3                                                         
 ALA.C.HISTORIC.REF0500                       CT0002 RMM      30/05/2000  1                                                         
 ALA.C.DIR.S.BKP.A1996                        CT0003 RMM      02/07/1999  1                                                         
 ALA.C.DIR.S.BKP1.R041996.PR6168              CT0003 RMM      02/07/1999  2                                                         
 ALA.C.DIR.S.BKP2.R041996.PR6168              CT0003 RMM      02/07/1999  3                                                         
 ALA.C.DIR.S.BKP3.R041996.PR6168              CT0003 RMM      02/07/1999  4                                                         
 ALA.C.DIR.S.BKP1.R051996.PR5069              CT0003 RMM      02/07/1999  5                                                         
 ALA.C.DIR.S.BKP2.R051996.PR5069              CT0003 RMM      02/07/1999  6                                                         
 ALA.C.DIR.S.BKP3.R051996.PR5069              CT0003 RMM      02/07/1999  7                                                         
 ALA.C.DIR.S.BKP1.R051996.PR5879              CT0003 RMM      02/07/1999  8                                                         
 ALA.C.DIR.S.BKP2.R051996.PR5879              CT0003 RMM      02/07/1999  9                                                         
 ALA.C.MIL.S.BKP1.R091999.FOL0                CT0004 RMM      30/09/1999  1                                                         
 ALA.C.MIL.S.BKP2.R091999.FOL0                CT0004 RMM      30/09/1999  2                                                         
 ALA.C.DIR.S.BKP2.R021998.SEDUC.COM3          CT0005 RMM      20/05/1998  1                                                         
 ALA.C.MIL.S.BKP.A1995                        CT0006 RMM      21/05/1998  1                                                         
 ALA.C.MIL.S.BKP1.R081995.FOL0                CT0006 RMM      21/05/1998  2                                                         
 ALA.C.MIL.S.BKP2.R081995.FOL0                CT0006 RMM      21/05/1998  3                                                         
 ALA.C.MIL.S.BKP3.R081995.FOL0                CT0006 RMM      21/05/1998  4                                                         
 ALA.C.MIL.S.BKP1.R091995.FOL0                CT0006 RMM      21/05/1998  5                                                         
 ALA.C.MIL.S.BKP2.R091995.FOL0                CT0006 RMM      21/05/1998  6                                                         
1ALA.C.MIL.S.BKP3.R091995.FOL0                CT0006 RMM      21/05/1998  7 
 

Gravou no Adabas

  18:05:29          ***** A D A B A S  BASIC  SERVICES *****       2025-12-27                                                       
  DBID 230                    - Display File Layout -                 PDRF012                                                       
   ****************                                                                                                                 
   *  File 433    *   AAFD-FISICO-433                                                                                               
   ****************                                                                                                                 
                                                                                                                                    
   Records loaded ..... 29985         Date loaded .......... 2025-07-19 20:09:59                                                    
   TOP ISN ............ 28810         Date of last update .. 2025-12-27 18:01:28                                                    
   Max ISN expected ... 51699         Max Compr Rec Lngth .. 10792                                                                  
   Minimum ISN ........ 1             Asso/Data Padding .... 10%/10%                                                                
   Size of ISN ........ 3 Bytes       Highest Index Level .. 3                                                                      
   Number of Updates .. 29931         Index Compression .... YES                                                                    
   ISN Reusage ........ YES           USERISN .............. NO                                                                     
   Space Reusage ...... YES           MIXDSDEV ............. YES                                                                    
   ADAM File .......... NO            PGMREFRESH ........... NO                                                                     
   Ciphered File ...... NO            NOACEXTENSION ........ NO                                                                     
   Coupled Files ...... NONE                                                                                                        
   Blk per DS Extent .. 0             Logged DSF Changes ... DS AC Index                                                            
   Blk per UI Extent .. 0             Total Changed Blks ... 348                                                                    
   Blk per NI Extent .. 0             Length of Owner ID ... 0                                                                      
                                                                                                                                    
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----                                                       
  Help               Exit      Refresh                              Menu 

Excedeu algumas extenções, temos depois de aumentar na produção

  18:05:36          ***** A D A B A S  BASIC  SERVICES *****       2025-12-27                                                       
  DBID 230                   - Display File Layout -                  PDRF022                                                       
  File 433                                                                                                                          
                                                                                                                                    
     I Dev  LiI  Space allocated  I      From         To    I Unused                                                                
     I Type TyI  Blocks   / Cyls. I      RABN         RABN  I BLOCKS  /  Cyls.                                                      
 ----I--------I-------------------I ------------------------I------------------                                                     
     I        I                   I                         I                                                                       
 ASSOI 8391 ACI       50        0 I     535813 -     535862 I        0        0                                                     
     I 8391 UII        1        0 I     535864 -     535864 I        0        0                                                     
     I 8391 UII       11        0 I     539893 -     539903 I        9        0                                                     
     I 8391 NII        1        0 I     535863 -     535863 I        0        0                                                     
     I 8391 NII      192        1 I     539904 -     540095 I       84        0                                                     
     I        I                   I                         I                                                                       
 DATAI 8391 DSI        1        0 I    1100108 -    1100108 I        0        0                                                     
     I 8391 DSI      323        4 I    1111313 -    1111635 I      140        1                                                     
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----                                                       
  Help               Exit      Refresh                              Menu 

Esse é o programa que vamos ler o file 433

 >                                       > +  Program     RMM0004  Lib NATURAL                                                     
 Top    ....+....1....+....2....+....3....+....4....+....5....+....6....+....7..                                                    
   0010 * -------------------------------------------------------------------- *                                                    
   0020 * FUNCAO - LER O REGISTROS DO FILE 433 - RMM                           *                                                    
   0030 * AUTOR  - USER DBA 4022                                               *                                                    
   0040 * -------------------------------------------------------------------- *                                                    
   0050 DEFINE DATA                                                                                                                 
   0060 LOCAL                                                                                                                       
   0070 01 RMM VIEW OF AAFU-FITOTECA-RMM                                                                                            
   0080   02 AAF-DATASET                                                                                                            
   0090   02 AAF-CARTUCHO                                                                                                           
   0100   02 AAF-OWNER                                                                                                              
   0110   02 AAF-DATA                                                                                                               
   0120   02 AAF-SEQUENCIA                                                                                                          
   0130 END-DEFINE                                                                                                                  
   0140 WRITE '--- LEITURA SEQUENCIAL ---'                                                                                          
   0150 READ RMM BY ISN                                                                                                             
   0160   DISPLAY AAF-DATASET AAF-CARTUCHO AAF-OWNER AAF-DATA AAF-SEQUENCIA                                                         
   0170 END-READ                                                                                                                    
   0180 WRITE / '--- BUSCA POR DESCRITOR (AAF-DATASET) ---'                                                                         
   0190 READ RMM BY AAF-DATASET /* STARTING FROM #DATASET-INICIO                                                                    
   0200 * READ RMM BY AAF-CARTUCHO STARTING FROM 'VC0001' 
   0210   /* OPCIONAL: CONDIçãO DE PARADA SE QUISER APENAS UM RANGE                                                                 
   0220   IF AAF-DATASET > 'ABC.DATASET.ZZZ'                                                                                        
   0230     ESCAPE BOTTOM                                                                                                           
   0240   END-IF                                                                                                                    
   0250 END-READ                                                                                                                    
   0260 END                                                                                                                         
        ....+....1....+....2....+....3....+....4....+....5....+... S 26   L 7 

Resultado

 MORE                                                                                                                               
 PAG      1                                                                                                       27/12/25  17:49:59
                                                                                                                                    
                  AAF-DATASET                  AAF-CARTUCHO AAF-OWNER  AAF-DATA  AAF-SEQUENCIA                                      
 --------------------------------------------- ------------ --------- ---------- -------------                                      
                                                                                                                                    
 --- LEITURA SEQUENCIAL ---                                                                                                         
 ALA.C.DIRF.A2000                              CT0001       RMM       15/03/2001 1                                                  
 ALA.C.DIRF.A2000                              CT0001       RMM       09/04/2001 2                                                  
 ALA.C.DIRF.A2000                              CT0001       RMM       08/05/2001 3                                                  
 ALA.C.HISTORIC.REF0500                        CT0002       RMM       30/05/2000 1                                                  
 ALA.C.DIR.S.BKP.A1996                         CT0003       RMM       02/07/1999 1                                                  
 ALA.C.DIR.S.BKP1.R041996.PR6168               CT0003       RMM       02/07/1999 2                                                  
 ALA.C.DIR.S.BKP2.R041996.PR6168               CT0003       RMM       02/07/1999 3                                                  
 ALA.C.DIR.S.BKP3.R041996.PR6168               CT0003       RMM       02/07/1999 4                                                  
 ALA.C.DIR.S.BKP1.R051996.PR5069               CT0003       RMM       02/07/1999 5                                                  
 ALA.C.DIR.S.BKP2.R051996.PR5069               CT0003       RMM       02/07/1999 6                                                  
 ALA.C.DIR.S.BKP3.R051996.PR5069               CT0003       RMM       02/07/1999 7                                                  
 ALA.C.DIR.S.BKP1.R051996.PR5879               CT0003       RMM       02/07/1999 8                                                  
 ALA.C.DIR.S.BKP2.R051996.PR5879               CT0003       RMM       02/07/1999 9                                                  
 ALA.C.MIL.S.BKP1.R091999.FOL0                 CT0004       RMM       30/09/1999 1                                                  
 ALA.C.MIL.S.BKP2.R091999.FOL0                 CT0004       RMM       30/09/1999 2                                                  
 ALA.C.DIR.S.BKP2.R021998.SEDUC.COM3           CT0005       RMM       20/05/1998 1                                                  
 ALA.C.MIL.S.BKP.A1995                         CT0006       RMM       21/05/1998 1                                                  
 ALA.C.MIL.S.BKP1.R081995.FOL0                 CT0006       RMM       21/05/1998 2                                                  
 ALA.C.MIL.S.BKP2.R081995.FOL0                 CT0006       RMM       21/05/1998 3                                                  
 ALA.C.MIL.S.BKP3.R081995.FOL0                 CT0006       RMM       21/05/1998 4  
 ALA.C.MIL.S.BKP1.R091995.FOL0                 CT0006       RMM       21/05/1998 5                                                  
 ALA.C.MIL.S.BKP2.R091995.FOL0                 CT0006       RMM       21/05/1998 6                                                  
 ALA.C.MIL.S.BKP3.R091995.FOL0                 CT0006       RMM       21/05/1998 7                                                  
 ALA.C.MIL.S.BKP1.R101995.FOL0                 CT0006       RMM       21/05/1998 8                                                  
 ALA.C.MIL.S.BKP2.R101995.FOL0                 CT0006       RMM       21/05/1998 9                                                  
 ALA.C.MIL.S.BKP3.R101995.FOL0                 CT0006       RMM       21/05/1998 10                                                 
 ALA.C.MIL.S.BKP1.R111995.FOL0                 CT0006       RMM       21/05/1998 11                                                 
 ALA.C.MIL.S.BKP2.R111995.FOL0                 CT0006       RMM       21/05/1998 12                                                 
 ALA.C.MIL.S.BKP3.R111995.FOL0                 CT0006       RMM       21/05/1998 13                                                 
 ALA.C.MIL.S.BKP1.R131995.FOL0                 CT0006       RMM       21/05/1998 14                                                 
 ALA.C.MIL.S.BKP2.R131995.FOL0                 CT0006       RMM       21/05/1998 15                                                 
 ALA.C.MIL.S.BKP3.R131995.FOL0                 CT0006       RMM       21/05/1998 16                                                 
 ALA.C.MIL.S.BKP1.R121995.FOL0                 CT0006       RMM       21/05/1998 17                                                 
 ALA.C.MIL.S.BKP2.R121995.FOL0                 CT0006       RMM       21/05/1998 18                                                 
 ALA.C.MIL.S.BKP3.R121995.FOL0                 CT0006       RMM       21/05/1998 19                                                 
 AAA.C.ACCOUNT.DIARIO.G1858V00                 CT0007                 21/11/2006 1                                                  
 ABD.C.ROTULO.PEDIDOS.TEMP.G0814V00            CT0008                 10/05/2004 1                                                  
 AAA.C.ACCOUNT.DIARIO.G1711V00                 CT0009                 07/08/2006 1                                                  
 ALA.C.DIR.L.BKP2.R021998.SEDUC.COM3           CT0010       RMM       20/05/1998 1                                                  
 ALA.C.DIR.L.BKP2.R121998.SEDUC.COM3.Y2K       CT0010       RMM       15/01/2000 2                                                  
 ALA.C.DIR.L.BKP1.R041998.FOL2                 CT0011       RMM       20/05/1998 1 

0 comentários:

Enviar um comentário