CODIFICACION COBOL VSAM

January 24, 2021 | Author: Anonymous | Category: N/A
Share Embed Donate


Short Description

Download CODIFICACION COBOL VSAM...

Description

COBOL VSAM

Gabriel Alejandro Kordon

B o r r a d o r material en preparación CODIFICACIÓN COBOL PARA ARCHIVOS VSAM y Cobol para archivos de longitud variable 1. INSTRUCCIONES DEL LENGUAJE COBOL PARA ARCHIVOS VSAM 1.1 Codificación de Las “select” en la ENVIRONMENT DIVISION: Cláusulas: organization, record key, alternate record key, FILE STATUS y password. 1.2 Access is DYNAMIC: •

Instrucción delete



Ejemplos de codificación.

2. ARCHIVOS CON REGISTROS DE LONGITUD VARIABLE 2.1 Generalidades 2.2 Codificación COBOL. Definición de FD: ARCHIVO su descripción. 2.3 Codificación COBOL. Definición de registros 2.4 Clausula APPLY WRITE-ONLY.

1 / 20

COBOL VSAM

Gabriel Alejandro Kordon

1. INTRODUCCIONES DEL LENGUAJE COBOL PARA ARCHIVOS VSAM Hay dos divisiones que tienen instrucciones especiales: LA ENVIRONMENT DIVISION y LA PROCEDURE DIVISION.

1.1ENVIRONMENT DIVISION En la ENVIRONMENT DIVISION encontramos algunas opciones nuevas basadas

en el siguiente formato: SELECT nombre- archivo- interno ASSIGN TO nombre-archivo-externo ORGANIZATION IS INDEXED ACCESS MODE IS {SEQUENTIAL RANDOM DYNAMIC} RECORD KEY IS

nombres- de- datos- 1

ALTERNATE RECORD KEY IS nombre- de- datos- 2 [WITH DUPLICATES] FILE STATUS IS

nombre- de- datos- 3

PASSWORD IS

nombre- de- datos- 4

2 / 20

COBOL VSAM

Gabriel Alejandro Kordon

La instrucción ORGANIZATION IS INDEXED explica que ese será un archivo KSDS (VSAM), un archivo secuencial con índice VSAM. Para archivos ESDS (archivos secuenciales bajo VSAM), no se codifica la cláusula ORGANIZATION, siendo obligatoria para un KSDS, ya que de omitirse asume “Organization is sequential”. Las opciones de acceso se indican con ACCESS MODE y al omitir ésta cláusula asume ACCESS MODE IS SEQUENTIAL. El modo de acceso para archivos secuenciales es siempre SEQUENTIAl. Para archivos de organización indexada, puede ser: •

SEQUENTIAL



RANDOM



DYNAMIC

El modo de acceso DYNAMIC será tratado mas adelante. RECORD KEY hace referencia a un nombre de dato que debe ser un campo dentro de la descripción del registro, la clave de ordenamiento del archivo. La opción ALTERNATE RECORD especifica la clave alternativa para el archivo. Cuando se emplean claves alternadas podemos tener acceso a registros con base en la clave principal, especificada en la cláusula RECORD KEY,o con base en otra ALTERNATE RECORD KEY. La mención de DUPLICATES es para que el valor asociado con la clave de registro alternativa pueda estar duplicado, en cualquiera de los registros del archivo. En ausencia de esta palabra, la presencia de valores de clave duplicadas es una condición de error. Los valores duplicados estarían permitidos solo para claves alternas, pues cada registro debe tener una clave principal única.

3 / 20

COBOL VSAM

Gabriel Alejandro Kordon

FILE STATUS Al utilizar archivos VSAM en un programa COBOL, tenemos la posibilidad de conocer como ha terminado una instrucción de entrada/ salida relacionada a estos archivos, pues el metodo de acceso VSAM devuelve al programa un código numérico de dos dígitos que indica como ha finalizado la sentencia INPUT/OUTPUT de COBOL. Este código se denomina FILE STATUS y puede ser consultado por el programa COBOL y condicionar la ejecución de determinadas rutinas según el valor indicado en dicho código. En la WORKING- STORAGE SECTION se define un campo elemental para cada archivo VSAM (generalmente con nivel 77) y es mencionado en la SELECT del archivo. Los errores más frecuentes a detectar con FILE STATUS son:

21 22 23 24 30 34 91 92 93 94

Error de secuencia. Clave duplicada. Registro no encontrado. Capacidad excedida- archivo ksds. Error de datos, de paridad o transmisión. Capacidad excedida- archivo Esds. Password erronea. Error lógico. Recurso no disponible. Requerimiento secuencial carente de pointer, falla en el

95 96

Start. información de archivo invalida o incompleta. falta tarjeta dd.

4 / 20

COBOL VSAM

Gabriel Alejandro Kordon

PASSWORD Los archivos VSAM pueden tener claves de protección, PASWORD, para ser accedidos. Las claves de protección son definidas para cada archivo con el comando DEFINE del AMS. Hay tres tipos de protección, que definen a la clave: -

clave de lectura

-

clave de grabación

-

clave E/S o Maestra.

En la WORKING- STORAGE SECTION se define un campo indicado en la select como PASSWORD IS ......... nombre de campo. Antes de ejecutar el OPEN del archivo protegido se pedirá al operador que ingrese la palabra clave y ésta se deberá alojar en el campo indicado en la select. Cuando se ejecuta la instrucción OPEN, se llama a la ejecución de las rutinas del AMS que controlarán si la clave de PASSWORD es la correcta. De no ser así, terminará la instrucción con FILE STATUS = 91. Estableciendo el programa que acción se deberá realizar.

OTRAS de las ventajas del VSAM, es la utilización del acceso secuencial y por indice en forma simultánea (ACCESO DINAMICO) y la eliminación FÍSICA de registros (DELETE).

5 / 20

COBOL VSAM

Gabriel Alejandro Kordon

1.2 ACCESO DINAMICO (DYNAMIC) EL ACCESS IS DYNAMIC permite acceder al archivo VSAM en forma “SEQUENTIAL” y “RANDOM” en un programa de aplicación en lenguaje COBOL. En la PROCEDURE DIVISION el siguientes verbos: OPEN

proceso sequencial se hará a travez de los

I-O

WRITE REWRITE START DELETE CLOSE Y el READ con el siguiente formato:

READ

file- name NEXT RECORD [INTO record- name] AT END instrucción imperativa

El formato del START es:

START

file- name [KEY IS

EQUAL

TO

(=)

GREATER

THAN

(>)

NOT LEES

THAN

(NOT
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF