
Partes de un programa COBOL
Capítulo 5: Estructura de un programa COBOL
Empecemos viendo la estructura de un programa COBOL, es algo muy importante, ya que el orden es fundamental para programar en COBOL. Los programas medianamente complejos fácilmente pueden llegar a tener unas cuantas miles de líneas de código.
Jerarquía en la estructura de un programa COBOL
Aquí tienes el orden jerárquico de un programa COBOL. Tenemos el programa que engloba al resto de elementos.
PROGRAMA
DIVISIONES
SECCIONES
PÁRRAFOS
FRASES
DECLARACIONES
Veamos un programa de ejemplo, no importa que lo entiendas, ahora nos vamos a dedicar a ver cada apartado, más adelante explicaré todas las palabras del código.
IDENTIFICATION DIVISION.
PROGRAM-ID. Test1.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT OPTIONAL EMPLEADOS-ARCHIVO
ASSIGN TO "g:\cobol\empleados.dat"
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
PROCEDURE DIVISION.
STOP RUN.
END PROGRAM Test1.
Divisiones COBOL
Dentro de un programa tenemos las divisiones. Son un total de cuatro y deben estar incluidas en todo programa COBOL. Las divisiones son las partes principales en las que se divide cualquier programa COBOL, las veremos en detalle muy pronto.
IDENTIFICATION DIVISION
-Línea 1
ENVIRONMENT DIVISION
-Línea 4
DATA DIVISION
-Línea 11
PROCEDURE DIVISION
-Línea 15
Secciones COBOL
Las secciones son conjuntos de uno o más párrafos. Son secciones o divisiones de las propias divisiones, es decir, partes que forman cada una de las cuatro divisiones del programa.
Dentro de cada división tenemos una o varias secciones. Por ejemplo, en la ENVIRONMENT DIVISION
puedes ver una sección INPUT-OUTPUT SECTION
(línea 5
) y dos más en la DATA DIVISION
, FILE SECTION
y WORKING-STORAGE SECTION
(líneas 12 y 13
).
Tanto las divisiones como las secciones empiezan escribiendo su nombre y terminan cuando empieza una nueva sección o división.
No tienes que comprender todo esto estrictamente, solo quiero que te vayas creando una idea general de todo esto.
Tenemos dos clases de secciones predefinidas en el lenguaje, las opcionales, las cuales no ocurrirá nada si no se especifican y las obligatorias.
También están las secciones creadas por quién crea el programa, no solo las predefinidas en el lenguaje COBOL.
Tanto las divisiones como las secciones son fácilmente identificables, las divisiones siempre llevan su nombre seguido de la palabra DIVISION
y las secciones SECTION
. Finalizan ambas con un punto.
Aquí tienes tres ejemplos, los dos primeros son secciones predefinidas propias del lenguaje y la tercera es una creada por mí.
WORKING-STORAGE SECTION.
FILE SECTION.
PROGRAMACION-FACIL SECTION.
Párrafos, frases y declaraciones COBOL
En las secciones podemos escribir párrafos. Dentro de esos párrafos, frases y finalmente en esas frases encontramos el eslabón inferior en esta jerarquía, las declaraciones.
Cómo puedes ver, esta jerarquía toma parte del lenguaje natural que hablamos las personas, párrafos y frases por ejemplo.
Los párrafos son un conjunto de frases.
El párrafo empieza con su nombre y termina donde empieza el siguiente párrafo o termina el programa. En tres de las cuatro divisiones nos encontramos párrafos predefinidos por el lenguaje COBOL. Solo en una de ellas (la división de procedimientos PROCEDURE DIVISION
que veremos pronto) podemos escribir párrafos que creemos nosotros mismos.
Un ejemplo de párrafo es FILE-CONTROL
. Se trata de un párrafo predefinido en el lenguaje COBOL.
IDENTIFICATION DIVISION.
PROGRAM-ID. Test1.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT OPTIONAL EMPLEADOS-ARCHIVO
ASSIGN TO "g:\cobol\empleados.dat"
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
PROCEDURE DIVISION.
STOP RUN.
END PROGRAM Test1.
Si creamos párrafos propios, les podremos dar el nombre que queramos y los incluiremos en la PROCEDURE DIVISION
.
Aquí unos ejemplos:
CONTINUAR.
MOVE "S" TO ENTRADA.
IF EMPLEADOS-NOMBRE = SPACE
MOVE "N" TO ENTRADA.
ESCRIBIR-REGISTRO.
WRITE EMPLEADOS-REGISTRO.
REINICIAR.
DISPLAY "¿Desea almacenar otro registro en la base de datos?".
ACCEPT SI-NO.
IF SI-NO = "s"
MOVE "S" TO SI-NO.
IF SI-NO NOT = "S"
MOVE "N" TO SI-NO.
Las frases u oraciones son una o varias declaraciones terminadas con un punto.
En COBOL, las declaraciones de lenguaje se denominan verbos. Una declaración comienza con el nombre del verbo y sigue por la actuación de este.
Los verbos/palabras en COBOL son las palabras del lenguaje.
Seguramente tengas que volver cuando sepas un poco más a revisar esta información, pero no te preocupes demasiado por entenderlo todo, ya iré explicando cada sección de los programas que vayamos escribiendo.
En el siguiente capítulo empezamos a ver las divisiones de COBOL más detalladamente.
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.