En la primera parte del post comenzamos a revisar, hace algunas semanas, la lista de instrucciones utilizadas para la conexión Natural ADABAS. Recordemos que una de las ventajas principales del lenguaje Natural es su facilidad para interaccionar con la base de datos ADABAS.
Ya estuvimos viendo los que son considerados como los comandos más importantes a este respecto (ver post Comandos Natural de acceso a ficheros ADABAS - 1). A continuación, trataremos de completar la revisión enumerando el resto de cláusulas que pueden ser utilizadas en la conexión Natural ADABAS.
- FIND:
Esta instrucción sirve para buscar un registro o un grupo de registros
en el fichero ADABAS sin necesidad de usar un superdescriptor.
Normalmente, a diferencia de la instrucción READ, se utiliza para
procesar un número reducido de registros. En general, no se suele
emplear en las instalaciones debido al elevado consumo de recursos que
conlleva.
FIND CLIENTES WITH APELLIDO1 = ’ALDEGUER’
- GET SAME: Este comando se emplea para obtener de nuevo la información del registro que está siendo procesado en ese momento.
GET SAME VALOR
- GET TRANSACTION DATA:
Con esta cláusula podremos recuperar la información que haya sido
almacenada en la última transacción con la instrucción END TRANSACTION.
GET TRANSACTION DATA CLIENTES-ET
- HISTOGRAM:
Este comando nos permite extraer los datos de los campos del fichero
ADABAS que hayan sido definidos como descriptores o que formen parte de
un superdescriptor. En general, el uso de esta sentencia está prohibido
en las instalaciones debido a su alto consumo de recursos.
HISTOGRAM CLIENTES DNI STARTING FROM '1'
DISPLAY DNI *NUMBER *COUNTER
END-HISTOGRAM
- OBTAIN: Esta instrucción se utiliza para poner a disposición una serie de ocurrencias de una matriz ADABAS en almacenamiento continuo.
OBTAIN VALOR
De
los comandos indicados, los que se suelen emplear con mayor frecuencia
son READ, UPDATE, STORE, DELETE y GET, junto con las sentencias END
TRANSACTION y BACKOUT TRANSACTION. Con estas 7 instrucciones tendremos
suficiente para realizar el 90% de los accesos a la base de datos
ADABAS.
Como vemos, el uso de estos comandos es muy
intuitivo y, como decíamos más arriba, las sentencias son más sencillas
de codificar que en el caso de otros lenguajes como Cobol o Java. De
hecho, a pesar de su antigüedad, la sencillez de acceso a la base de datos sigue siendo una de las ventajas competitivas del lenguaje Natural.
Como
siempre, lo importante para hacernos con el control de estas sentencias
es practicar. En este caso, debido a la similitud de Natural con los
lenguajes clásicos de programación, el tiempo requerido para adaptarnos a
su funcionamiento es muy inferior al de los modernos lenguajes
orientados a objetos.
Y nada más. Con lo comentado
debería ser suficiente para hacernos con una idea de cuáles son los
comandos que vamos a necesitar para acceder a ADABAS desde Natural.
Ahora ya es cuestión de cada uno aprovechar este conocimiento o no...
Saludos.
Desarrollando en Cobol y Natural sobre Plataforma Mainframe
Mostrando entradas con la etiqueta ADABAS. Mostrar todas las entradas
Mostrando entradas con la etiqueta ADABAS. Mostrar todas las entradas
jueves, 12 de marzo de 2015
jueves, 5 de marzo de 2015
Comandos Natural de acceso a ficheros ADABAS (1)
En la mayoría de los casos, en las grandes aplicaciones el lenguaje Natural aparece integrado con la base de datos ADABAS. Una de las ventajas de dicha unión, es que en dicho lenguaje tenemos una serie de comandos que hace que el acceso a los ficheros de esta base de datos sea relativamente fácil.
Usando comandos Natural, los accesos a ADABAS son más sencillos que los que se realizan en la mayoría de las conexiones entre otros lenguajes y sus bases de datos asociadas. En particular, la operativa Natural-ADABAS se realiza de forma más directa que, por ejemplo, los accesos Cobol-DB2 o los accesos Java-ORACLE.
A continuación, vamos a ir repasando cuáles son los principales comandos de los que disponemos en Natural para ir accediendo a la información de los ficheros ADABAS.
- READ: Este comando se utiliza para leer los registros de un fichero mediante el uso de un superdescriptor. Nos da la posibilidad de leer un número determinado de registros o de extraer todos los registros que cumplan una determinada condición de búsqueda.
CL. READ CLIENTES BY CLIENTES-CL-CLAVE = 'US06004'
DISPLAY CODIGO DNI NOMBRE APELLIDO1 APELLIDO2 *ISN
END-READ
- UPDATE: Se utiliza para actualizar los campos de un registro del fichero. Actuará únicamente sobre el registro que estemos leyendo en ese momento.
CL. READ (1) CLIENTES BY CLIENTES-CL-CLAVE = 'US06004'
MOVE 'FRANCISCO JESUS' TO NOMBRE
UPDATE (CL.)
END-READ
- STORE: Se emplea para dar de alta un nuevo registro en el fichero. Se creará un registro que contenga, en los campos correspondientes, toda la información que hayamos proporcionado previamente.
MOVE 'US06099' TO CODIGO
MOVE '45281999H' TO DNI
MOVE 'JOSE ANTONIO' TO NOMBRE
MOVE 'SANCHEZ' TO APELLIDO1
MOVE 'PEREZ' TO APELLIDO2
STORE CLIENTES
- DELETE: Este comando procederá a borrar un registro completo. Solamente actuará sobre el registro que estemos leyendo en ese momento.
CL. READ (1) CLIENTES BY CLIENTES-CL-CLAVE = 'US06004'
DELETE (CL.)
END-READ
- GET: Sirve para obtener la información de los campos correspondientes a un registro concreto. La búsqueda de dicho registro se puede realizar únicamente mediante su ISN asociado (Internal Sequence Number).
GE. GET CLIENTES *ISN (CL.)
- END TRANSACTION: Este comando sirve para confirmar y consolidar las modificaciones propuestas sobre los ficheros mediante UPDATE, DELETE o STORE. Hasta que no se ejecute el END TRANSACTION realmente la informacion no estará almacenada en la base de datos ADABAS.
READ CLIENTES WITH CLIENTES-CL-CLAVE = ’US06099’
DELETE
END TRANSACTION
END-READ
- BACKOUT TRANSACTION: Sirve para deshacer y desechar todas las modificaciones propuestas mediante los comandos UPDATE, DELETE o STORE. De esta forma nos aseguramos de que dichos cambios nunca van a llegar a la base de datos ADABAS.
READ CLIENTES WITH CLIENTES-CL-CLAVE = ’US06099’
DELETE
END-READ
...
BACKOUT TRANSACTION
El próximo día continuaremos viendo la lista de comandos Natural con los que podemos acceder a la base de datos ADABAS. Aunque, evidentemente, los enumerados anteriormente son los más importantes, no podemos dejar de conocer la funcionalidad del resto de la API de la conexión Natural ADABAS.
Eso es todo. Como siempre, quedáis invitados a la segunda parte del post, donde completaremos el trabajo de revisión, iniciado hoy, de las instrucciones Natural ADABAS.
Saludos.
Usando comandos Natural, los accesos a ADABAS son más sencillos que los que se realizan en la mayoría de las conexiones entre otros lenguajes y sus bases de datos asociadas. En particular, la operativa Natural-ADABAS se realiza de forma más directa que, por ejemplo, los accesos Cobol-DB2 o los accesos Java-ORACLE.
A continuación, vamos a ir repasando cuáles son los principales comandos de los que disponemos en Natural para ir accediendo a la información de los ficheros ADABAS.
- READ: Este comando se utiliza para leer los registros de un fichero mediante el uso de un superdescriptor. Nos da la posibilidad de leer un número determinado de registros o de extraer todos los registros que cumplan una determinada condición de búsqueda.
CL. READ CLIENTES BY CLIENTES-CL-CLAVE = 'US06004'
DISPLAY CODIGO DNI NOMBRE APELLIDO1 APELLIDO2 *ISN
END-READ
- UPDATE: Se utiliza para actualizar los campos de un registro del fichero. Actuará únicamente sobre el registro que estemos leyendo en ese momento.
CL. READ (1) CLIENTES BY CLIENTES-CL-CLAVE = 'US06004'
MOVE 'FRANCISCO JESUS' TO NOMBRE
UPDATE (CL.)
END-READ
- STORE: Se emplea para dar de alta un nuevo registro en el fichero. Se creará un registro que contenga, en los campos correspondientes, toda la información que hayamos proporcionado previamente.
MOVE 'US06099' TO CODIGO
MOVE '45281999H' TO DNI
MOVE 'JOSE ANTONIO' TO NOMBRE
MOVE 'SANCHEZ' TO APELLIDO1
MOVE 'PEREZ' TO APELLIDO2
STORE CLIENTES
- DELETE: Este comando procederá a borrar un registro completo. Solamente actuará sobre el registro que estemos leyendo en ese momento.
CL. READ (1) CLIENTES BY CLIENTES-CL-CLAVE = 'US06004'
DELETE (CL.)
END-READ
- GET: Sirve para obtener la información de los campos correspondientes a un registro concreto. La búsqueda de dicho registro se puede realizar únicamente mediante su ISN asociado (Internal Sequence Number).
GE. GET CLIENTES *ISN (CL.)
- END TRANSACTION: Este comando sirve para confirmar y consolidar las modificaciones propuestas sobre los ficheros mediante UPDATE, DELETE o STORE. Hasta que no se ejecute el END TRANSACTION realmente la informacion no estará almacenada en la base de datos ADABAS.
READ CLIENTES WITH CLIENTES-CL-CLAVE = ’US06099’
DELETE
END TRANSACTION
END-READ
- BACKOUT TRANSACTION: Sirve para deshacer y desechar todas las modificaciones propuestas mediante los comandos UPDATE, DELETE o STORE. De esta forma nos aseguramos de que dichos cambios nunca van a llegar a la base de datos ADABAS.
READ CLIENTES WITH CLIENTES-CL-CLAVE = ’US06099’
DELETE
END-READ
...
BACKOUT TRANSACTION
El próximo día continuaremos viendo la lista de comandos Natural con los que podemos acceder a la base de datos ADABAS. Aunque, evidentemente, los enumerados anteriormente son los más importantes, no podemos dejar de conocer la funcionalidad del resto de la API de la conexión Natural ADABAS.
Eso es todo. Como siempre, quedáis invitados a la segunda parte del post, donde completaremos el trabajo de revisión, iniciado hoy, de las instrucciones Natural ADABAS.
Saludos.
Suscribirse a:
Entradas (Atom)



