quinta-feira, fevereiro 15, 2024

JCL para listar um Programa Fonte Natural sem Numeração de Linhas

Com a crescente tendência de migração de plataformas de alto custo para alternativas mais acessíveis e modernas, muitos analistas enfrentam o desafio de transpor a lógica de programas de um ambiente de mainframe para uma plataforma mais atualizada. Nesse contexto, a obtenção de uma cópia do programa em formato de texto torna-se uma etapa crucial para recriar a lógica na nova plataforma. A transição de sistemas legados para ambientes mais modernos é motivada por diversos fatores, incluindo redução de custos, maior flexibilidade e compatibilidade com tecnologias emergentes. No entanto, migrar programas de uma plataforma alta, como mainframes, para uma plataforma baixa, como servidores distribuídos, requer uma compreensão profunda da estrutura e da lógica subjacente dos programas originais. Ao obter uma cópia do programa em formato de texto de um programa do Natural, os analistas podem analisar o código-fonte de forma mais detalhada e acessível. Isso permite uma melhor compreensão da lógica de negócios implementada no programa original e facilita a identificação de possíveis pontos de ajuste e otimização durante o processo de migração. Além disso, o formato de texto oferece maior portabilidade e interoperabilidade entre diferentes plataformas de desenvolvimento. Uma vez que o código esteja disponível em formato de texto, ele pode ser facilmente importado e manipulado em uma ampla variedade de ambientes de desenvolvimento e ferramentas de edição, simplificando o processo de recriação da lógica na plataforma de destino. No entanto, é importante ressaltar que a migração de programas entre plataformas envolve mais do que simplesmente copiar e colar o código-fonte. É necessário realizar uma análise abrangente dos requisitos de negócios, identificar dependências de sistemas externos e adaptar a lógica do programa para se adequar ao ambiente de destino. Em resumo, a obtenção de uma cópia do programa em formato de texto é um passo fundamental no processo de migração de plataformas. Facilita a compreensão da lógica de negócios e permite uma transição mais suave e eficiente para ambientes de desenvolvimento modernos. Com as estratégias certas e uma abordagem cuidadosa, os analistas podem garantir uma migração bem-sucedida e aproveitar os benefícios das tecnologias mais recentes e acessíveis. Segue um exemplo de JCL para listar um programa fonte Natural que mostra a numeração das linhas:

MEMBER=CASSIM1  000020 REC SAVE:23.02.2023 09:59 BY   USERID DBA025  R=00000001
DSN=BIB.PRODUCAO.ADA                             LIB=TS VOL=DIS303 UNIT=1525 
....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
//DBAPNAT4 JOB (AAF,TSS),'DBA025',CLASS=S,MSGCLASS=A                         
//*UQ ALLOW                                                                     
//* ----------------------------------------------------------------            
//*                     LISTA OS PROGRAMAS DO NATURAL                       
//* ----------------------------------------------------------------            
//NATURAL  EXEC NATURAL,PARM1='SYS=D,MT=0,STACK=(LOGON SOURCE)'                 
//CMWKF01  DD SYSOUT=A                                                          
//CMWKF02  DD SYSOUT=A                                                          
//CMPRINT  DD SYSOUT=G                                                          
//SYSIN    DD *                                                                 
 L * A@ATUAEM
 L * A@CONVEM
FIN

Output é esse - O problema é que lista a numeração vem junto

1Logon accepted to library SOURCE.                                             
1NEXT L * A@ATUAEM                                                             
112:18:17  Program     A@ATUAEM Library SOURCE          User DBAPNAT4 2019-10-24
+          Program     A@ATUAEM         SOURCE               DBAPNAT4          
+          Program     A@ATUAEM         SOURCE               DBAPNAT4          
0010 ***                                                                     
0020 * FUNCAO DO PROGRAMA ... ATUALIZAR EMISSOR DE AUTO                      
0030 ***                                                                     
0040 DEFINE DATA                                                             
0050 LOCAL                                                                   
0060 1 #CONT                      (P9)                                       
0070 1 #IND                       (P9)                                       
0080 1 #TOT                       (P9)                                       
0090 1 #WK                        (A483)                                     
0100 1 REDEFINE #WK                                                          
0110   2 #ISN                     (N10)                                      
0120   2 FILLER                   473X                                       
0130 1 #RC                        (N1)                                       
0140 1 #EMI-NOVO                  (N2)                                       
0150 1 #AR-ID                     (A10)                                      
0160 1 REDEFINE #AR-ID                                                       
0170   2 #EMI                     (N2)                                       
0180   2 #NUM                     (N8)                                       
0190 1 #CIR-ID                    (A14)                                      
0200 1 REDEFINE #CIR-ID 
--------------------------------------------------------------------------------
OP=S CL=ALL IN=ALL JB=DBAPNAT4,04770 DS=1 SI=SO LR=1 LL=80 PP=0 DC= RL=999999  
AD=J DE= SC= PT= SQ=C RR=0 OC= SD=2000   24.10.2019, 12:18:22

É só rodar com o parametros NUMBERS OFF após listar o programa

MEMBER=CASSIM1  000015 REC SAVE:24.10.2019 12:26 BY   USERID DBA025  R=00000001
DSN=BIB.PRODUCAO.ADA                             LIB=TS VOL=DIS303 UNIT=1525   
....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
//DBAPNAT4 JOB (AAF,TSS),'DBA025',CLASS=S,MSGCLASS=A                        
//*UQ ALLOW                                                                    
//* ----------------------------------------------------------------           
//*          GRAVA EM UM DATA SET OS PROGRAMAS DO NATURAL                      
//* ----------------------------------------------------------------           
//NATURAL  EXEC NATURAL,PARM1='SYS=D,MT=0,STACK=(LOGON SOURCE)'                
//CMWKF01  DD SYSOUT=A                                                         
//CMWKF02  DD SYSOUT=A                                                         
//CMPRINT  DD SYSOUT=G                                                         
//SYSOUT   DD SYSOUT=A                                                         
//CMPRT01  DD SYSOUT=G                                                         
//SYSIN    DD *                                                                
L * A@ATUAEM NUMBERS OFF                                                       
L * A@CONVEM NUMBERS OFF                                                       
FIN                                                                            
/*

Resultado

1Logon accepted to library SOURCE.                                              
1NEXT L * A@ATUAEM NUMBERS OFF                                                  
108:04:19  Program     A@ATUAEM Library SOURCE          User DBAPNAT4 2024-02-15
+          Program     A@ATUAEM         SOURCE               DBAPNAT4           
+          Program     A@ATUAEM         SOURCE               DBAPNAT4           
 ***                                                                            
 * FUNCAO DO PROGRAMA ... ATUALIZAR EMISSOR DE AUTO                             
 ***                                                                            
 DEFINE DATA                                                                    
 LOCAL                                                                          
 1 #CONT                      (P9)                                              
 1 #IND                       (P9)                                              
 1 #TOT                       (P9)                                              
 1 #WK                        (A483)                                            
 1 REDEFINE #WK                                                                 
   2 #ISN                     (N10)                                             
   2 FILLER                   473X                                              
 1 #RC                        (N1)                                              
 1 #EMI-NOVO                  (N2)                                              
 1 #AR-ID                     (A10)                                             
 1 REDEFINE #AR-ID                                                              
--------------------------------------------------------------------------------
OP=S CL=ALL IN=ALL JB=DBAPNAT4,01709 DS=1 SI=SO LR=1 LL=80 PP=0 DC= RL=999999   
AD=J DE= SC= PT= SQ=C RR=0 OC= SD=2000   15.02.2024,  8:06:56  

Leia Mais

sábado, fevereiro 03, 2024

Rodando Programa Natural no JCL

Ao enfrentar desafios de automação e processamento de dados em mainframes, muitas vezes surge a necessidade de executar programas Natural para realizar tarefas específicas. Entretanto, em alguns casos, pode ser conveniente contornar o desenvolvimento de um programa Natural completo e recorrer a uma abordagem mais direta usando Job Control Language (JCL). Imagine a seguinte situação: você precisa realizar uma tarefa específica em um mainframe, mas não deseja criar um programa Natural do zero. Nesse cenário, é possível usar uma abordagem alternativa, aproveitando as funcionalidades do console para executar comandos diretamente. Aqui está um exemplo prático de como executar um programa Natural via JCL sem a necessidade de desenvolver um programa Natural específico:

 //AAFSNATB JOB (AAF,TSS),'CLAUD',CLASS=S,MSGCLASS=A             
 //*UQ ALLOW                                                                    
 //* ----------------------------------------------------------------           
 //*                   RODANDO PROGRAMA VIA JCL                                 
 //* ----------------------------------------------------------------           
 //STEP01   EXEC NATURAL,PARM1='SYS=T,MT=0,STACK=(LOG ADA744)'                
 //CMWKF01  DD SYSOUT=A                                                         
 //CMWKF02  DD SYSOUT=G                                                         
 //CMPRT01  DD SYSOUT=G,HOLD=YES                                                
 //CMSYNIN DD *                                                                 
 LOGON ADA744                                                                 
 EDT                                                                            
 DEFINE DATA LOCAL                                                              
 1 A(A10) INIT <'HELLO'>                                                        
 END-DEFINE                                                                     
 WRITE A 'WORLD'                                                                
 END                                                                            
 .E                                                                             
 RUN

rodou ok
 IEF142I AAFSNATB NATURAL STEP01 - STEP WAS EXECUTED - COND CODE 0000           
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
--------------------------------------------------------------------------------
OP=S CL=ALL IN=ALL JB=AAFSNATB,08023 DS=3 SI=CC LR=1 LL=80 PP=0 DC= RL=999999   
AD=J DE= SC= PT= SQ=C RR=0 OC= SD=2000   07.06.2023,  9:52:08

Resultado
1Logon accepted to library ADA744.                                            
1NEXT LOGON ADA744                                                            
1Logon accepted to library ADA744.                                            
1NEXT EDT                                                                       
 0010 DEFINE DATA LOCAL                                                         
 0020 1 A(A10) INIT <'HELLO'>                                                   
 0030 END-DEFINE                                                                
 0040 WRITE A 'WORLD'                                                           
 0050 END                                                                       
 0060 .E                                                                        
1NEXT RUN                                                                       
1PAG      1                                                                     
0HELLO      WORLD                                                               
1NAT9995 Natural session terminated normally.                                   
UQS0009 - END OF DATA SET.
Leia Mais

quinta-feira, fevereiro 01, 2024

Software para Gerenciar EntireX Broker de código aberto

O software recebe o nome de Marguerite e tem como propósito oferecer uma solução ágil e simplificada para administrar os brokers do EntireX da Software AG, sem depender do System Management Hub. Ele busca replicar a praticidade de uso e o desempenho do antigo "EntireX Broker Control Center" que a Software AG costumava incluir no WholeX há muitos anos, mas com uma gama mais ampla de recursos.

Pontos Fortes

* É muito fácil de configurar e espero poder mantê-lo tão simples. Basta executar o executável, nenhuma instalação é necessária. Ele pode perguntar onde estão as bibliotecas WholeX © Miniruntime (broker32.dll), então você terá que dizer onde estão seus corretores e pronto.
* Corre rápido. É C++ nativo puro. Ele conversa diretamente com sua corretora usando o protocolo ACI.
* É multithread: se você tiver problemas para se conectar a um de seus corretores, ele não travará todo o aplicativo. Marguerite continuará funcionando normalmente.
* Será possível atualizar automaticamente as informações da sua corretora em intervalos de tempo pré-definidos
* Ele fornece uma interface de usuário moderna e personalizável: você pode abrir múltiplas subjanelas simultaneamente, alterar seu tamanho, posição, separá-las... Você pode classificar suas listas em qualquer coluna, redimensionar, mover ou remover colunas, Marguerite se lembrará de tudo e restaure-o na próxima vez que você iniciá-lo
* Marguerite é freeware/código aberto

Pré-requisitos

Marguerite deve ser executado em qualquer máquina Windows (do Win XP ao Windows 8 - Rodei no Windows 10 de boa).
Por enquanto, ele roda apenas em Windows, mas eu o construí pensando na portabilidade, usando a biblioteca wxWidgets. E será portado pelo menos para Linux, e talvez para outras plataformas, dependendo do feedback dos usuários.
Antes de iniciá-lo, você deve instalar o miniruntime WholeX © (pelo menos versão 8). Ele está disponível pra quem tem o cadastro no site da Software AG usando o programa chamado "Software AG Installer".
Na primeira vez que você for iniciá-lo, ele procurará a biblioteca broker32.dll no miniruntime Wholex©. Se não conseguir encontrá-lo, ele perguntará onde ele está localizado no seu PC. O próximo passo é informar o endereço do seu EntireX Wholex©.

Download

Baixe o Marguerite agora mesmo para verificar as conexões do seu EntireX Broker diretamente no seu desktop.

* Site Oficial - Site - Download

Instalando o Runtime do EntireX

Antes de tudo temos que instalar o Runtime do EntireX - nos tempos primordios era gratis, hoje tem que ter acesso ao site da Software Ag para se fazer o download;

Rodando a primeira vez

A primeira vez temos que chamar o dll - broker32.dll - depois criamos os ETBs:

Observação

Se por acaso você informou uma dll diferente da broker32.dll ele nunca mais vai entrar, para alterar/limpar essa informação da dll errada acesse o regedit.exe e mude essa informação valor do PLUGIN da Marguerite

É Gratis

O Site fala: Marguerite é um freeware de código aberto. Fique à vontade para usá-lo para fins comerciais, redistribuí-lo, melhorá-lo... Ainda está em sua fase inicial de desenvolvimento. Mas isso não significa que seja inutilizável: já é estável e pode ser usado para ver rapidamente quais serviços estão disponíveis em uma corretora, mesmo que parte das informações exibidas nas listas não estejam corretas, e apenas alguns recursos são implementados.
Leia Mais

quarta-feira, janeiro 10, 2024

Rodar job pegandos dados do SYSAOS

O SYSAOS eu amo, sim, como não amar algo que consegue fazer muitas coisas que sem ele teriamos que rodar vários jobs - O SYSAOS tem algumas coisas que só tem nele, um bom exemplo é saber a % de utilização do PLOG - No SYSAOS acessando a opção A/U/P temos a % de utilização do PLOG - esse valor em % do PLOG essa informação não pode ser obtido através de comandos convencionais no Adabas. A singularidade dessa informação evidencia a importância do SYSAOS como uma ferramenta essencial para monitorar e obter insights específicos que não estão disponíveis por meio das interfaces tradicionais do Adabas. Essa funcionalidade exclusiva ressalta a relevância do SYSAOS para a gestão eficaz e aprofundada do ambiente Adabas.
                                                                                
  20:20:37          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
  DBID 096                      -  PLOG Status  -                     PACUP02   
                                                                                
                                                                                
                                                                                
        The nucleus is currently writing on ..... PLOGR1                        
                                                                                
        Size of one PLOG area (in BLKs.) ........   188296                      
                                                                                
        Last block written ......................    18459  (  10 %)            
                                                                                
        Number of switches since nucleus start ..        5                      
                                                                                
        Date/Time of last switch ................ 2023-03-11 06:13:20           
                                                                                
        Number of PLOGs .........................        5                      
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----   
  Help               Exit      Refresh                              Menu        

Conseguimos rodar um job para conseguir essa informação - esse é o JCL
MEMBER=@A1003   000011 REC SAVE:21.02.2022 15:58 BY   USERID DBA0281  R=00000001
DSN=ADABAS.JCLS.DBA                                LIB=S3 VOL=ADAC03 UNIT=1526    
....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
//AAFSNATB JOB (AAFA,DIBD),SUPORTE,CLASS=S,MSGCLASS=Z                           
//*UQ ALLOW                                                                     
//*------------------------------------------------------------                 
//*                   SYSAOS - PLOG STATUS%                                     
//*------------------------------------------------------------                 
//GBP0100 EXEC NATURAL,PARM1='SYS=PA15 MT=0 OBJIN=N IM=D'                       
//CMPRINT DD SYSOUT=A                                                           
//SYSIN   DD *                                                                  
LOGON SYSAOS                                                                    
||DI PLOGST                                                                     
FIN                                                                             

Resultado do job
1Logon accepted to library SUPORTE2.                                            
1NEXT LOGON SYSAOS                                                              
1 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
+ 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
+ 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
  Isolated                       -  Main Menu  -                      PMAIN02   
+ Isolated                       -  Main Menu  -                                
+ Isolated                       -  Main Menu  -                                
-              Code  Basic Services              Code  Other Services           
+              Code  Basic Services              Code  Other Services           
+              Code  Basic Services              Code  Other Services           
               ----  ----------------------      ----  ---------------------    
                A    Session monitoring           1    Adabas Cache Facility    
+               A                                                               
+               A                                                               
                C    Checkpoint maintenance       2    Delta Save Facility      
+               C                                                               
+               C                                                               
                F    File maintenance             3    Trigger Maintenance      
+               F                                                               
+               F                                                               
                M    Database maintenance         4    AOS Security             
+               M                                 4    AOS Security             
+               M                                 4    AOS Security             
                O    Session opercoms             5    Transaction Manager      
+               O                                                               
+               O                                                               
                R    Database report              6    Adabas Statistics        
+               R                                                               
+               R                                                               
                S    Space calculation            7    Vista                    
+               S                                                               
+               S                                                               
                ?    Help                         8    Fastpath                 
+               ?                                                               
+               ?                                                               
                .    Exit                         9    SAF Security             
+               .                                                               
+               .                                                               
               ----  ----------------------      ----  ---------------------    
0  Code ....... _                                                               
+               _                                                               
+               _                                                               
   Database ... 96      (DB.S096.PARMLIB)                                      
+               96                                                              
+               96                                                              
0 Command ==>                                                                   
+                                                                               
+                                                                               
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----   
  Help               Exit                                                       
+ Help               Exit                                                       
+ Help               Exit                                                       
 DATA ||DI PLOGST                                                               
1 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
+ 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
+ 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
  DBID 96                       -  PLOG Status  -                     PACUP02   
+ DBID 96                       -  PLOG Status  -                               
+ DBID 96                       -  PLOG Status  -                               
+                                                                               
+                                                                               
-       The nucleus is currently writing on ..... PLOGR1                        
0       Size of one PLOG area (in BLKs.) ........    60000                      
0       Last block written ......................    13127  (  22 %)            
+                                                           (     %)            
+                                                           (     %)            
0       Number of switches since nucleus start ..        0                      
0       Date/Time of last switch ................ 0000-00-00 00:00:00           
0       Number of PLOGs .........................        5                      
-                                                                               
+                                                                               
+                                                                               
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----   
  Help               Exit      Refresh                              Menu        
+ Help               Exit      Refresh                              Menu        
+ Help               Exit      Refresh                              Menu        
1 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
+ 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
+ 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
                            -  Resource Utilization  -                PACU002   
+                           -  Resource Utilization  -                          
+                           -  Resource Utilization  -                          
0 Code  Service                           Code  Service                         
+ Code  Service                           Code  Service                         
+ Code  Service                           Code  Service                         
  ----  -------------------------------   ----  ------------------------------- 
   C    Command usage                      S    System status                   
+  C                                       S                                    
+  C                                       S                                    
   F    File usage                         T    Thread usage                    
+  F                                       T                                    
+  F                                       T                                    
   H    High water marks (pools/queues)    W    WORK status                     
+  H                                       W                                    
+  H                                       W                                    
   L    Workpool (LWP) usage               X    Cluster usage                   
+  L                                                                            
+  L                                                                            
   N    Nucleus File Status                Y    Display PPT table               
+  N                                       Y                                    
+  N                                       Y                                    
   P    PLOG status                                                             
+  P                                                                            
+  P                                                                            
   ?    Help                                                                    
+  ?                                                                            
+  ?                                                                            
   .    Exit                                                                    
+  .                                                                            
+  .                                                                            
  ----  -------------------------------   ----  ------------------------------- 
-         Code ......... _                                                      
+                        _                                                      
+                        _                                                      
          File Number .. 0                                                      
+                        0                                                      
+                        0                                                      
          Database ID .. 96     (DB.S096.PARMLIB)                              
+                        96                                                     
+                        96                                                     
  EPACU03 : 'PLOG Status' successfully displayed                                
+ EPACU03 : 'PLOG Status' successfully displayed                                
+ EPACU03 : 'PLOG Status' successfully displayed                                
  Command ==>                                                                   
+                                                                               
+                                                                               
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----   
  Help               Exit                                           Menu        
+ Help               Exit                                           Menu        
+ Help               Exit                                           Menu        
 DATA FIN                                                                       
1 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
+ 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
+ 19:58:18          ***** A D A B A S  BASIC  SERVICES *****          2023-03-11
                            -  Resource Utilization  -                PACU002   
+                           -  Resource Utilization  -                          
+                           -  Resource Utilization  -                          
0 Code  Service                           Code  Service                         
+ Code  Service                           Code  Service                         
+ Code  Service                           Code  Service                         
  ----  -------------------------------   ----  ------------------------------- 
   C    Command usage                      S    System status                   
+  C                                       S                                    
+  C                                       S                                    
   F    File usage                         T    Thread usage                    
+  F                                       T                                    
+  F                                       T                                    
   H    High water marks (pools/queues)    W    WORK status                     
+  H                                       W                                    
+  H                                       W                                    
   L    Workpool (LWP) usage               X    Cluster usage                   
+  L                                                                            
+  L                                                                            
   N    Nucleus File Status                Y    Display PPT table               
+  N                                       Y                                    
+  N                                       Y                                    
   P    PLOG status                                                             
+  P                                                                            
+  P                                                                            
   ?    Help                                                                    
+  ?                                                                            
+  ?                                                                            
   .    Exit                                                                    
+  .                                                                            
+  .                                                                            
  ----  -------------------------------   ----  ------------------------------- 
-         Code ......... _                                                      
+                        _                                                      
+                        _                                                      
          File Number .. 0                                                      
+                        0                                                      
+                        0                                                      
          Database ID .. 96     (DB.S096.PARMLIB)                              
+                        96                                                     
+                        96                                                     
  EPACU03 : 'PLOG Status' successfully displayed                                
+ EPACU03 : 'PLOG Status' successfully displayed                                
+ EPACU03 : 'PLOG Status' successfully displayed                                
  Command ==>                                                                   
+                                                                               
+                                                                               
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----   
  Help               Exit                                           Menu        
+ Help               Exit                                           Menu        
+ Help               Exit                                           Menu        
 MACU002  0038 NAT1106 Data string for input field too long.                    
1NAT9978 Error occurred during execution/compilation.                           
UQS0009 - END OF DATA SET.

Essa é a parte do job importante - podemos gravar em um dataset e criar um programa natural para fazer um filtro dessa informação
-       The nucleus is currently writing on ..... PLOGR1                        
0       Size of one PLOG area (in BLKs.) ........    60000                      
0       Last block written ......................    13127  (  22 %)            
+                                                           (     %)            
+                                                           (     %)            
0       Number of switches since nucleus start ..        0                      
0       Date/Time of last switch ................ 0000-00-00 00:00:00           
0       Number of PLOGs .........................        5
Leia Mais

Não Conseguindo Acessar o Predict - Resolvendo

A utilização de uma versão consideravelmente antiga pode resultar em diversos desafios. Gostaria de compartilhar uma situação específica que me fez pensar que não tinha o que fazer, pois não havia nenhuma mensagem de erro ou qualquer indicação aparente. Como a versão dos software envolvidos eram todos muito antigas, tornou-se inviável o suporte criar uma correção especifica. O problema em questão ocorria algumas vezes ao tentar acessar o Predict, quando, por vezes, não entrava no sistema do Predict, não dando pistas sobre a origem do problema.
10:26:03        TID    83          COM641/D          User DBA023      26.12.18
                                 -- COM-PASS --                             USTS
        Suspended Programs                          Program Services           
---------------------------------       ---------------------------------------
Programs     Name     C Level  PF       Service Description    Programs  ID  PF
--------   --------   - -----  --       --------------------   --------  --  --
                          1              Logon/Logoff Utility   ULOG       A   
                          2              System Job Queue       UQ         B   
                          3              Text Editor Utility    UEDIT      C   
                          4              PDS Maint. Utility     UPDS       D   
                          5              
                          6              
                          7              
                          8              
                          9              
                                                                               
Enter Input:                                                   HELP       ?   
DBAX 099 SYSDIC                                                               
-------------------------------------------------------------------------------
LU Name: TERM1381      HC TID:               Recall: =         Language: 001  
Devtype: 3270 VS       Device: PRINT520     Suspend: <  PA1    Case    : UPPER
Lines  : 24               Key: PA2             Jump: NO NO                    
Columns: 80

Não acontece nada - Tem cara de ser coisa do Buffer Pool;
10:24:57        TID    83          COM641/D          User DBA023      26.12.18
                                 -- COM-PASS --                             USTS
        Suspended Programs                          Program Services           
---------------------------------       ---------------------------------------
Programs     Name     C Level  PF       Service Description    Programs  ID  PF
--------   --------   - -----  --       --------------------   --------  --  --
                          1              Logon/Logoff Utility   ULOG       A   
                          2              System Job Queue       UQ         B   
                          3              Text Editor Utility    UEDIT      C   
                          4              PDS Maint. Utility     UPDS       D   
                          5              
                          6              
                          7              
                          8              
                          9              
                                                                               
Enter Input:                                                   HELP       ?   
                                                                               
-------------------------------------------------------------------------------
LU Name: TERM1381      HC TID:               Recall: =         Language: 001  
Devtype: 3270 VS       Device: PRINT520     Suspend: <  PA1    Case    : UPPER
Lines  : 24               Key: PA2             Jump: NO NO                    
Columns: 80

Solução

Deletado todos os programas das bibliotecas SYS* do banco 099 - suspeito que tem um programa SYS* causando esse problema;
09:52:33        TID    66          COM641/D          User DBA023      28.12.23
                                -- COM-PASS --                             USTS
       Suspended Programs                          Program Services            
---------------------------------       ---------------------------------------
Programs     Name     C Level  PF       Service Description    Programs  ID  PF
--------   --------   - -----  --       --------------------   --------  --  --
                         1              Logon/Logoff Utility   ULOG       A    
                         2              System Job Queue       UQ         B    
                         3              Text Editor Utility    UEDIT      C    
                         4              PDS Maint. Utility     UPDS       D    
                         5              
                         6              
                         7              
                         8              
                         9              

Enter Input:                                                   HELP       ?
nat2 stack=(sysbpm)
-------------------------------------------------------------------------------
LU Name: TERM1381      HC TID:               Recall: =         Language: 001
Devtype: 3279 V        Device: PRINT520     Suspend: <  PA1    Case    : UPPER
Lines  : 43               Key: PA2             Jump: NO NO  
Columns: 80  

Vamos deletar os programas das bibliotecas SYS* do banco 099
 09:41:25             ***** NATURAL SYSBPM UTILITY *****             28/12/2023
 BPNAME NATGBP                  - Main Menu -                   Type Global Nat
 BPPROP OFF                                                       Loc CPAC NAT4
                                                                               
                                                                               
            Object Functions                Object Pool Statistics             
                                                                               
            L  List Objects                 A  Buffer Pool                     
            D  Delete Objects               C  BP Cache                        
            I  Directory Information                                           
            H  Hexadecimal Display          Other Functions                    
            W  Write to Work File                                              
            X  Display Sorted Extract       S  Select Buffer Pool              
            ?  Help                         B  Blacklist Maintenance           
            .  Exit                         P  Preload List Maintenance        
                                                                               
    Code .. d   Library ... SYS*____                                           
                Object .... *_______________________________________           
                DBID ...... 099__  FNR .. 0____  Object Pool ... * (B,C,*)     
                                                                               
Command ===> 

Deletado 204 programas no buffer pool
  09:41:25             ***** NATURAL SYSBPM UTILITY *****             28/12/2023
  BPNAME NATGBP                  - Main Menu -                   Type Global Nat
  BPPROP OFF                                                       Loc CPAC NAT4
                                                                                
                                                                                
             Object Functions                Object Pool Statistics             
                                                                                
             L  List Objects                 A  Buffer Pool                     
             D  Delete Objects               C  BP Cache                        
             I  Directory Information                                           
             H  Hexadecimal Display          Other Functions                    
             W  Write to Work File                                              
             X  Display Sorted Extract       S  Select Buffer Pool              
             ?  Help                         B  Blacklist Maintenance           
             .  Exit                         P  Preload List Maintenance        
                                                                                
     Code .. d   Library ... SYS*____                                           
                 Object .... *_______________________________________           
                 DBID ...... 099__  FNR .. 0____  Object Pool ... * (B,C,*)     
                                                                                
 Command ===>                                                                   
                                                                                
 204 object(s) deleted or marked for deletion.                                  
                                                                                
 Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
       Help        Exit  Last        Flip                                Canc   

Tentando acessar o SYSDIC do banco 099
 09:44:21        TID    75          COM641/D          User DBA023      28.12.23
                                 -- COM-PASS --                             USTS
        Suspended Programs                          Program Services            
 ---------------------------------       ---------------------------------------
 Programs     Name     C Level  PF       Service Description    Programs  ID  PF
 --------   --------   - -----  --       --------------------   --------  --  --
 NCF414     SUPORTE2   L  1 *            Logon/Logoff Utility   ULOG       A    
                          2              System Job Queue       UQ         B    
                          3              Text Editor Utility    UEDIT      C    
                          4              PDS Maint. Utility     UPDS       D    
                          5              
                          6              
                          7              
                          8              
                          9              

 Enter Input:                                                   HELP       ?
 DBAX 099 SYSDIC                                                                
 -------------------------------------------------------------------------------
 LU Name: TERM1381      HC TID:               Recall: =         Language: 001
 Devtype: 3279 V        Device: PRINT520     Suspend: <  PA1    Case    : UPPER
 Lines  : 43               Key: PA2             Jump: NO NO  
 Columns: 80

Deu certo
 09:45:27             *****  P R E D I C T  4.4.1  *****              2023-12-28
 Plan   0                   - Function Main Menu -               Profile DBA023
                                                                                
        Documentation                      External objects                     
                                                                                
        A  Active retrieval                F  File implementation               
        M  Maintenance                     G  Generation                        
        R  Retrieval                       I  Incorporation                     
        X  List xref for 3GL               C  Comparison                        
                                           L  Administration                    
                                                                                
        DDA services                       Miscellaneous                        
                                                                                
        D  Defaults                        W  What is new ?                     
        S  Special functions               ?  Help system                       
                                           .  Leave Predict                     
                                                                                
 Function ........                                                              
 Object type ....*                     Menu type ....* F                        
                                                                                
 Command ===> 

Leia Mais

segunda-feira, novembro 27, 2023

Determinar quais descritores não são mais utilizados no Adabas

Descrição

Existe uma ferramenta que permite determinar quais índices (descritores, superdescritores) não são mais usados?

Resolução

Para descobrir quais descritores são usados em um arquivo (e quais não), você pode usar o comando o AFPLOOK. Este módulo é entregue na biblioteca de LOAD do Adabas.
O AFPLOOK é habilitado especificando (ADARUN FASTPATH=YES) no núcleo de inicialização jcl.
Um relatório está incluído no protocolo de desligamento do núcleo Adabas (DDPRINT), que mostra quais comandos estão sendo lidos por quais descritores. O relatório AFPLOOK também pode ser visualizado online usando SYSAOS ( SYSAFP ).

Simulação

Foi colocado o parametro;
MEMBER=ADAP420  000060 REC SAVE:11.03.2023 21:52 BY   USERID ADA0025  R=00000001
DSN=ADA.ADABAS.ADAPARM                                    VOL=PRL303 UNIT=1526    
....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
* ------------------------------------------------------------                  
* ADAP420 - PARAMENTROS DO BANCO 420                                            
* ------------------------------------------------------------                  
ADARUN AOSLOG=YES       <=== LOG ACTIVE NUCLEUS UPDATE COMMANDS                 
ADARUN FASTPATH=YES     <=== DESCOBRIR DESCRITORES USADOS                       
ADARUN PROG=ADANUC      <=== PROGRAM                                            
ADARUN CLOGL=5          <=== CLOGLAYOUT                                         
ADARUN MODE=MULTI       <=== MODE OF OPERATION                                  
ADARUN SVC=249          <=== SVC NUMBER                                         
ADARUN DBID=420         <=== DATA BASE ID (PHYSICAL)      .                     
ADARUN DEVICE=8391      <=== DEVICE TYPE OF RABN 1 OF ASSO                      
ADARUN DSF=NO           <=== DSF                                                
ADARUN LOCAL=NO         <=== LOCAL DATA-BASE                                    
ADARUN CT=300           <=== COMMAND TIME LIMIT (SECONDS) .                     
ADARUN LBP=2000000      <=== LENGTH OF BUFFER POOL                              
ADARUN LCP=2000         <=== LENGTH OF SECURITY POOL                            
ADARUN LFP=2048000      <=== LENGTH OF INTERNAL FORMAT POOL                     
ADARUN LFIOP=500000     <=== LENGTH OF ASYNC BUFFER FLUSH                       
ADARUN LI=40000         <=== LENGTH OF ISN LIST TABLE                           
ADARUN LOGGING=YES      <=== LOGGING OF ADABAS COMMANDS

Colocando no ar

 21:53:39        TID   204          COM641/P          User ADA0025      11.03.23
                          ---   System Messages   ---                       UQM1
 STC05599  S AAFAI420                                                           
 STC00505  $HASP100 AAFAI420 ON STCINRDR                                        
 STC00505  IEF695I START AAFAI420 WITH JOBNAME AAFAI420 IS ASSIGNED TO USER ADAB
 STC00505  $HASP373 AAFAI420 STARTED                                            
 STC00505  IEF403I AAFAI420 - STARTED - TIME=21.53.39                           
 STC00505  TSS7250E 136 J=AAFAI420 A=ADAT TYPE=PROGRAM RESOURCE=SDKADA       
 STC00505  TSS7251E Access Denied to PROGRAM                            
 STC00505  +POP000I Adapop V7.4.2 initialised, EP=972091D0 CIB=1721D268         
 STC00505  +ADAN02 00420 Nucleus run without protection log                     
 STC00505  +ADAL01 00420 2023-03-11 21:53:38 CLOG not active                    
 STC00505  +ADAN03 00420 ADABAS coming up                                       
 STC00505  +ADAN19 00420 Buffer flush is  a s y n c h r o n o u s               
 STC00505  +ADAN01 00420 A D A B A S  V7.4.4  is active                         
 STC00505  +ADAN01 00420 MODE = MULTI                                           
 STC00505  +ADAN01 00420 Running without recovery log                           
 STC00174 @59 DF3001A  *** RVS 5.1  ***                                         
 ******************************** BOTTOM OF DATA *******************************
 Select Function:                                                       CONSOLE 
 Operand/Command:                                                               
 Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
                                    Retrv  Up    Down        Left  Right        

Depois que tiramos o banco do ar

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                                                                               
 21.21.20 STC00492 ---- SATURDAY,  11 MAR 2023 ----                             
 21.21.20 STC00492  IEF695I START AAFAI420 WITH JOBNAME AAFAI420 IS ASSIGNED TO USER ADAT                                                                    
 21.21.20 STC00492  $HASP373 AAFAI420 STARTED                                   
 21.21.20 STC00492  IEF403I AAFAI420 - STARTED - TIME=21.21.20                  
 21.21.21 STC00492  TSS7250E 136 J=AAFAI420 A=ADAT TYPE=PROGRAM RESOURCE=SDKADA                                                                              
 21.21.21 STC00492  TSS7251E Access Denied to PROGRAM                   
 21.21.21 STC00492  +POP000I Adapop V7.4.2 initialised, EP=972091D0 CIB=1721D268
 21.21.21 STC00492  +ADAN02 00420 Nucleus run without protection log            
 21.21.21 STC00492  +ADAL01 00420 2023-03-11 21:21:19 CLOG not active           
 21.21.21 STC00492  +ADAN03 00420 ADABAS coming up                              
 21.21.21 STC00492  +ADAN19 00420 Buffer flush is  a s y n c h r o n o u s      
 21.21.21 STC00492  +ADAN01 00420 A D A B A S  V7.4.4  is active                
 21.21.21 STC00492  +ADAN01 00420 MODE = MULTI                                  
 21.21.21 STC00492  +ADAN01 00420 Running without recovery log                  
 21.22.39 STC00492  +ADAN51 00420 2023-03-11 21:22:39 Operator type-in: ADAEND  
 21.22.39 STC00492  +ADAN42 00420 2023-03-11 21:22:39 Function accepted         
 21.22.39 STC00492  +ADAM97 00420 This ASCB/initiator will be terminated by MVS at EOJ                                                                          
 21.22.39 STC00492  IEF404I AAFAI420 - ENDED - TIME=21.22.39                    
 21.22.39 STC00492  IEF352I ADDRESS SPACE UNAVAILABLE                           
 21.22.39 STC00492  $HASP395 AAFAI420 ENDED                                     
0------ JES2 JOB STATISTICS ------                                                                                                                              
-  11 MAR 2023 JOB EXECUTION DATE                                               
-            2 CARDS READ                                                       
-          579 SYSOUT PRINT RECORDS                                             
-            0 SYSOUT PUNCH RECORDS                                             
-           25 SYSOUT SPOOL KBYTES                                              
-         1.32 MINUTES EXECUTION TIME                                           

S,SI=SO - é gerado dentro da SYSOUT do relatório abaixo

 DBID 420                ADABAS/FASTPATH COMMAND SAMPLER              PAGE:   1 
                                    STARTED 21:22 17/070   ENDED 21:22 17/070   
 ----- -- -- ----------         --  ---------- ---------                        
  FILE CC DE DIRECT ACC         RC  SEQUENTIAL SEQUENCES                        
 ----- -- -- ----------         --  ---------- ---------                        
     8 L3 LL          1          1                                              
       L9 LL          7          7                                              
       L9 LO         12         12                                              
       S1 LE          3          1                                              
       S1 LL        103                                                         
       S1 LO         12                      5         5                        
       TOTAL        138         21           5                        211 ( 65%)
                                 ALREADY PREFETCHED:         57                 
                                    (MAX.RBL DA 3129,SEQ 3129)                  
 --------------------------------------------------------------                 
     9 L3 LX         16         14           2         2                        
       L9 LX          2          2                                              
       TOTAL         18         16           2                         38 ( 11%)
                                    (MAX.RBL DA 1524,SEQ 1524)                  
 --------------------------------------------------------------                 
    11 L1 --          1                                                         
       L3 S4          1          1                                              
       L3 UA          1                     33         1                        
       S1 AC          1                                                         
       S1 AU          1                                                         
       S1 FU          1                                                         
       S1 KG          1                                                         
       S1 LO          1                                                         
       S1 S4          8                                                         
       S1 S5          1                                                         
       S1 UA          3                                                         
       TOTAL         20          1          33                         54 ( 16%)
                                  EXCLUDED COMMANDS:          1                 
                                    (MAX.RBL DA 1750,SEQ 42)                    
 --------------------------------------------------------------                 
    15 L9 LL          5          5                                              
       S1 LL         10                                                         
       TOTAL         15          5                                     20 (  6%)
 --------------------------------------------------------------                 
 DBID 420                ADABAS/FASTPATH COMMAND SAMPLER              PAGE:   2 
                                    STARTED 21:22 17/070   ENDED 21:22 17/070   
          JOB/COMMAND SUMMARY:                                                  
   AAFCINIP:      401                                                           
 DBID 420                ADABAS/FASTPATH COMMAND SAMPLER              PAGE:   3 
                                    STARTED 21:22 17/070   ENDED 21:22 17/070   
 ---------------------- POTENTIAL OPTIMIZATION SUMMARY -------------------------
          SAMPLED COMMANDS                     MAXIMUM OPTIMIZATION             
 SAMPLED FILE COMMANDS      323 ( 80%) <------ SEQUENTIAL:           40 ( 12%)  
                                               DIRECT ACCESS:       191 ( 59%)  
                                                         RCS:        82 ( 25%)  
 EXCLUDED COMMANDS           79 ( 19%)                                          
 TOTALS                     402 (100%)                              313 ( 77%)  
 -------------------------------------------------------------------------------
                       COMMAND ANALYSIS                                         
 REJECTED COMMANDS                                                              
          MAX. USERS EXCEEDED:             0                                    
          MAX. CIDS  EXCEEDED:             0                                    
          MAX. FILES EXCEEDED:             0         0 (  0%)                   
                                                                                
 EXCLUDED COMMANDS                                                              
          BAD COMMANDS:                    0                                    
          NON-FILE COMMANDS:               9                                    
          NON-FILE RCS:                   12                                    
          EXCLUDED FILE COMMANDS:          1                                    
          UPDATE COMMANDS:                 0                                    
          ALREADY PREFETCHED:             57        79 ( 19%)                   
 SAMPLED FILE COMMANDS                             323 ( 80%)                   
 ALL COMMANDS SEEN                                 402 (100%)                   
 -------------------------------------------------------------------------------
          PARAMETERS USED                                                       
          MAX. FILES:    32  FILES NEEDED:         4                            
           ..MAX. DE:    16  OVERFLOWS:            0                            
          MAX. USERS:   256  HIGH USERS:           5                            
           ..MAX.CID:     5  HIGH CIDS:            4                            
          * REUSED USER AREA OCCURENCES:           0                            
          MAX.RECORDS: NO LIMIT                                                 
                                                                                
 21:22:39 ADAM97 00420 This ASCB/initiator will be terminated by MVS at EOJ     
Leia Mais

segunda-feira, março 27, 2023

PROGRAMANDO EM NATURAL - Update

Para atualizar registros no Adabas em um ambiente mainframe, você pode utilizar a linguagem de programação Natural, que é a linguagem padrão para acessar o Adabas nesse ambiente. A instrução UPDATE atualiza valores de campos de um arquivo Adabas. O registro atualizado é sempre o último lido anteriormente pelas instruções FIND, READ ou GET.

A seguir, apresento um exemplo de código Natural para atualizar registros em uma tabela do Adabas:

Exemplos em Natural

Programa 1 - Deslocar para a esquerda
DEFINE DATA LOCAL
1 EMPLOYEES VIEW OF EMPLOYEES-IN-ADABAS
  2 EMPLOYEE-ID
  2 NAME
  2 SALARY
END-DEFINE

FIND EMPLOYEES WHERE EMPLOYEE-ID = '1234'
  /* Verifica se encontrou algum registro */
  IF *NOT FOUND
    WRITE 'Registro não encontrado'
  ELSE
    /* Atualiza o registro */
    UPDATE EMPLOYEES
      SET NAME = 'Novo nome', SALARY = 5000
      WHERE EMPLOYEE-ID = '1234'
    END-UPDATE
  END-IF

Explicando o código acima:

* A cláusula DEFINE DATA define uma estrutura de dados (EMPLOYEES) que representa uma visualização da tabela EMPLOYEES-IN-ADABAS, contendo as colunas EMPLOYEE-ID, NAME e SALARY.
* A cláusula FIND busca na tabela EMPLOYEES-IN-ADABAS o registro cujo EMPLOYEE-ID é igual a '1234'. Se o registro for encontrado, ele é armazenado na estrutura de dados EMPLOYEES.
* A cláusula IF verifica se o registro foi encontrado. Se não foi encontrado, é exibida uma mensagem de erro. Se foi encontrado, o registro é atualizado utilizando a cláusula UPDATE, que define quais colunas serão atualizadas e quais valores serão atribuídos a elas. A cláusula WHERE especifica qual registro será atualizado (no caso, o registro cujo EMPLOYEE-ID é igual a '1234').
* A cláusula END-UPDATE finaliza a atualização do registro.
Leia Mais

sábado, março 25, 2023

O futuro do mainframe é agora!

O mainframe tem sido uma plataforma crítica para muitas empresas por décadas e continua a ser uma parte importante da infraestrutura de TI para muitas delas. Embora alguns prognosticadores tenham previsto a morte do mainframe nos últimos anos, a realidade é que o mainframe ainda é uma plataforma confiável e poderosa para muitas empresas, especialmente aquelas em setores regulamentados, como serviços financeiros e saúde.

Aqui estão algumas tendências que podem influenciar o futuro do mainframe:

Virtualização: a virtualização de servidores tem sido uma tendência importante nos últimos anos, permitindo que as empresas reduzam custos, aumentem a eficiência e melhorem a flexibilidade. A virtualização também está disponível para o mainframe, o que pode ajudar as empresas a consolidar cargas de trabalho em uma única plataforma e a usar recursos de forma mais eficiente.

Cloud computing: a maioria das empresas está considerando mover cargas de trabalho para a nuvem, e o mainframe não é exceção. Algumas empresas estão usando nuvens privadas ou híbridas para executar cargas de trabalho no mainframe, enquanto outras estão usando serviços de mainframe em nuvem pública.

Modernização: muitas empresas estão atualizando seus aplicativos legados para torná-los mais eficientes e fáceis de usar. A modernização do mainframe envolve a atualização de aplicativos, a adoção de tecnologias modernas, como Java e serviços da web, e a melhoria da experiência do usuário.

Big Data e Analytics: o mainframe é uma plataforma confiável para processamento de dados, e muitas empresas estão usando-o para processar grandes volumes de dados para análises e insights. O mainframe é particularmente útil para lidar com grandes cargas de trabalho de dados, pois é capaz de processar grandes quantidades de informações com eficiência.

Segurança: a segurança é uma preocupação crescente para as empresas, e o mainframe é uma plataforma conhecida por sua segurança. Muitas empresas estão usando o mainframe para hospedar aplicativos críticos e proteger informações confidenciais.

Em resumo, embora o futuro do mainframe possa ser influenciado por essas tendências, é provável que o mainframe continue a ser uma plataforma crítica para muitas empresas por muitos anos. As empresas continuarão a investir no mainframe para garantir a confiabilidade, segurança e eficiência de seus aplicativos críticos de negócios. No entanto, as empresas também podem considerar modernizar seus aplicativos legados para torná-los mais eficientes e fáceis de usar.

Futuro do Adabas Mainframe

Adabas é um banco de dados desenvolvido pela Software AG para mainframes IBM na década de 1970. Embora seja um sistema antigo, ainda é amplamente utilizado em muitas organizações como uma solução confiável e escalável para armazenar grandes volumes de dados.

Embora o uso de mainframes tenha diminuído ao longo dos anos, ainda existem muitas empresas que dependem deles para armazenar e processar dados críticos. À medida que as organizações buscam modernizar suas infraestruturas de TI e migrar para a nuvem ou migram para os bancos relacionais, muitas estão considerando a possibilidade de abandonar os sistemas mainframe em favor de soluções mais modernas e ágeis.

Além disso, muitas das habilidades e conhecimentos necessários para trabalhar com sistemas mainframe estão se tornando mais difíceis de encontrar à medida que uma nova geração de profissionais de TI entra no mercado de trabalho. Isso pode tornar mais difícil para as organizações manterem seus sistemas mainframe em funcionamento.

A Software AG continua investindo em Adabas para manter sua relevância no mercado, oferecendo novos recursos e integrações para atender às necessidades de seus clientes. Além disso, a empresa também está promovendo a modernização de aplicativos legados em mainframes para plataformas mais modernas.

Embora o futuro do Adabas mainframe possa ser desafiador com a crescente adoção de tecnologias modernas, ainda há muitas empresas que dependem dele para suas operações críticas de negócios. Portanto, a Software AG provavelmente continuará a oferecer suporte e atualizações para o Adabas por muitos anos, enquanto trabalha para atrair novos clientes e modernizar sua base instalada.

Adabas & Natural para além de 2050

Adabas & Natural são sistemas de gerenciamento de bancos de dados e linguagens de programação, respectivamente, desenvolvidos pela Software AG. Embora tenham sido lançados há várias décadas, eles ainda são amplamente utilizados por muitas organizações em todo o mundo. No entanto, a empresa está ciente da necessidade de evoluir e se adaptar às mudanças tecnológicas para atender às necessidades em constante mudança de seus clientes.

A Software AG tem seu plano para apoiar e desenvolver seu portfólio de produtos Adabas & Natural para além do ano de 2050. Essa é uma resposta para os clientes de Adabas & Natural que baseiam suas aplicações estratégicas ou demissão-crítica nessa plataforma de alta performance. Ao alavancar sua gama completa de capacidades de digitalização para aplicações corporativas em Adabas & Natural, a Software AG esta lançando um portfolio de serviços radicalmente estendido. Que é projetado para complementar os recursos do cliente endereçando a questão da mudança geracional que é enfrentada pela industria de software.

Essas iniciativas indicam que a Software AG está trabalhando para garantir que seus produtos e serviços permaneçam relevantes para os clientes em um futuro em constante evolução.
Leia Mais