Adabas

Páginas: 49 (12240 palabras) Publicado: 23 de julio de 2015
Adabas: es una base de datos de listas invertidas, de alto rendimiento creada por la empresa alemana software AG, en el año1969. Actualmente se sigue comercializando bajo la versión Adabas 2006, incorporando gateways para SOA y SQL
historia: Adabas es considerado por algunos como uno de los primeros productos de base de datos disponibles comercialmente, Adabas ha mantenido su posición como unade las bases de datos OLTP más rápidas, Históricamente, Adabas fue usado en conjunción con el lenguaje natural de Software AG, por lo que muchas de las aplicaciones que usa Adabas por un lado son asimismo desarrolladas por natural.


Natural/ADABAS para coboleros: parte I.

¿Qué es Natural? Es un lenguaje de programación de la empresa Software AG que también se utiliza en entornos mainframe. Labase de datos que lo acompaña es ADABAS. Del mismo modo que Natural podría tener similitudes con COBOL, ADABAS no las tiene en absoluto con DB2.
Hoy día no tengo conocimiento de que quede algún banco en España que lo utilice, pues el único que conocí de primera mano lo estaba migrando a COBOL. Creo que telefónica todavía tenía una parte en Natural/ADABAS...

En este artículo nos haremos una idea decómo codificar en Natural asociándolo a un programa COBOL. Tomaremos como ejemplo el "Ejemplo 1" del manual de COBOL para principiantes.

Vamos a construir un programa que recogerá datos de la SYSIN de un JCL, y displayará la inforamción contenida en él.

JCL:

//**************EJECUCION NATURAL*******************
//**************************************************
//PROG1 EXEC NATBAT
//CMPRINT DDSYSOUT=*
//CMSYNIN DD *
LOGON SYSEXBAT
EXECUTE PGMNAT1
FIN
//SYSIN DD *
JOSE LOPEZ VAZQUEZ %
HUGO CASILLAS DIAZ %
JAVIER CARBONERO %
PACO GONZALEZ
/*

Donde EXEC NATBAT indica que vamos a ejecutar un programa natural en modo batch(puede cambiar según instalación).
CMPRINT DD SYSOUT=* indica que la información "displayada" se quedará en la cola CMPRINT (no lo vamos a guardar en un fichero).
EnCMSYNIN DD * hace logon a la librería e indicamos el programa q vamos a ejecutar (PGMNAT1).
En SYSIN incluimos la información que va a recibir el programa. El '%' indica que la información continúa en la siguiente línea.


Programa:

DEFINE DATA LOCAL
 1 WI-INDICE(P4)
 1 #WX-NOMBRE1(A20)
 1 #WX-NOMBRE2(A20)
 1 #WX-NOMBRE3(A20)
 1 #WX-NOMBRE4(A20)
 1 WX-TABLA-NOMBRES
   2 WX-NOMBRE(A20/4)
END-DEFINEINPUT #WX-NOMBRE1 #WX-NOMBRE2 #WX-NOMBRE3 #WX-NOMBRE4

MOVE #WX-NOMBRE1 TO WX-NOMBRE(1)
MOVE #WX-NOMBRE2 TO WX-NOMBRE(2)
MOVE #WX-NOMBRE3 TO WX-NOMBRE(3)
MOVE #WX-NOMBRE4 TO WX-NOMBRE(4)

FOR WI-INDICE = 1 TO 4
   WRITE 'WX-NOMBRE:'WX-NOMBRE(WI-INDICE)

END

Donde el área "DEFINE DATA LOCAL" equivaldría a nuestra WORKING-STORAGE; ahí definiríamos las variables/copys que necesitásemos para elprograma. En nuestro caso:

WI-INDICE: empaquetado(P) de 4 posiciones. Equivaldría a un 9(4) COMP-3. Los índices para bucles en natural deben ser siempre numéricos (N) o empaquetados (P).
#WX-NOMBRE1: alfanumérico (A) de 20. Equivaldría a nuestro PIC X(20). La almohadilla indica que es una variable que se recibe por INPUT.
WX-TABLA-NOMBRES: sería una tabla interna donde el campo WX-NOMBRE es unalfanumérico (A) de 20 y se repite 4 veces. Equivaldría a nuestro OCCURS 4 TIMES.

A continuación codificaríamos el "PROCESO" del programa. En nuestro caso:

INPUT: recoge los datos introducidos por SYSIN.
MOVE/TO: para informar variables existen otras opciones:
WX-NOMBRE(1) := #WX-NOMBRE1 ó
ASSIGN WX-NOMBRE(1) = #WX-NOMBRE1
FOR: es uno de los bucles de natural. Las sentencias se repetirán "PARA"WI-INDICE = 1, =2, =3 e =4.
WRITE: escribe en el CMPRINT, que equivaldría a nuestra SYSOUT. La sentencia WRITE equivaldría a nuestro DISPLAY. En natural también existe la sentencia DISPLAY. La diferencia con el WRITE está en que el DISPLAY da formato a los datos, crea columnas con cabeceras por ejemplo.

El resultado usando WRITE sería:

WX-NOMBRE: JOSE LOPEZ VAZQUEZ
WX-NOMBRE: HUGO CASILLAS DIAZ...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • La Ciudad De Adabo
  • Overview General Base De Datos Adabas

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS