Curso de COBOL desde cero

Los archivos lógicos y físicos con COBOL

Capítulo 23: Archivos lógicos y físicos

Empezamos con el último bloque del curso, las bases de datos en COBOL.

A partir de aquí es recomendable que veas los vídeos para comprender los temas que quedan, ya que la dificultad aumenta considerablemente

Si sabes algo de bases de datos, seguramente entenderás más fácilmente este nuevo tema, si no, no te preocupes porque voy a explicarlo todo en detalle.

En un programa COBOL, un archivo es una colección de unidades de información relacionadas dentro de una categoría de datos. Es decir, como una base de datos. A estos archivos, los podemos llamar también como archivo de datos o archivo lógico.

Los registros, son cada una de las partes de información del archivo, es decir, por ejemplo, si tenemos un archivo con los empleados de una empresa, su nombre almacenado en el archivo, los apellidos, la edad, el puesto de trabajo, etc, todo esto formará un registro de cada empleado.
Por lo que podemos decir que un archivo está formado por registros que forman una colección.

Un campo es una parte de información de los registros, cada registro, puede tener varios campos, tales como el nombre, la edad, los apellidos, la dirección, etc.

En la siguiente imagen puedes ver los conocidos como archivos. Estos archivos son capaces de guardar información como una base de datos.
En estos archivos podemos almacenar campos y registros.

Bases de datos COBOL

Veamos un ejemplo práctico.

En un programa COBOL, la descripción de un registro de datos se ingresa como una variable de estructura.

En COBOL, un archivo se define en dos partes: el archivo lógico, que incluye el diseño del registro, y el archivo físico, que incluye el nombre del archivo en el disco y cómo se organizará el archivo.

El archivo lógico de COBOL

Empecemos con el archivo lógico. El archivo lógico se define en la DATA DIVISION, en la FILE SECTION.

DATA DIVISION.

FILE SECTION.

FD ARCHIVO-EMPLEADOS.
	01 EMPLEADOS.
		05 NOMBRE PIC X(25).
		05 APELLIDOS PIC X(50).
		05 TELEFONO PIC X(9).
		05 DIRECCION PIC X(50).

La palabra reservada FD es la que utilizamos para especificar la definición del archivo lógico, F de file y D de descriptor (descriptor de archivo en español).
La palabra FD se considera un número de nivel especial. Hay que darle un nombre y no poner punto. Con esto, ya tenemos creado el archivo lógico.

Ahora podríamos poner debajo del FD una etiqueta con la palabra reservada LABEL, pero no la vamos a poner, ya que esto se utilizaba en la época en que se utilizaban más las unidades de cinta que discos duros, por lo que esto se ha quedado obsoleto. Pero es cierto, que si necesitases utilizarla, la puedes utilizar, pero eso depende de qué tan viejo sea el sistema sobre el que vayas a trabajar.

El archivo físico de COBOL

Ahora pasemos al archivo físico.
El archivo físico se escribe en la ENVIRONMENT DIVISION dentro de la sección FILE-CONTROL.

ENVIRONMENT DIVISION.
FILE-CONTROL.
SELECT ARCHIVO-EMPLEADOS
ASSIGN TO "empleados.dat"
ORGANIZATION IS SEQUENTIAL.

Con el SELECT, especificamos el nombre del archivo lógico correspondiente al físico y se lo asignamos con ASSIGN TO.
Lo que hacemos básicamente con esto, es relacionar el archivo físico empleados.dat del disco duro con el archivo lógico ARCHIVO-EMPLEADOS.

Con ORGANIZATION IS SEQUENTIAL estamos especificando que la organización del archivo va a ser secuencial, por lo que cuando busquemos algo, lo hará leyendo desde el primer registro hasta encontrar el que se esté buscando.
Si añadimos un nuevo registro, este se almacenará al final del archivo.

Comentarios

Si te quedan dudas sobre el temario, sobre COBOL, o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.

Programación Fácil YouTube

Suscríbete

Si te ha gustado este curso y crees que el trabajo merece la pena, te agradeceré eternamente que te suscribas a mi canal de YouTube para apoyarme y que pueda seguir haciendo cursos gratuitos.

Además, si te encanta la programación, tienes un montón más de cursos gratuitos para ver.

No solo eso, podrás participar enviándome comentarios con tus sugerencias para temas específicos o cursos completos o incluso las dudas que tengas y las intentaré ir resolviendo en los cursos que estén todavía abiertos.