
2.- Empezando
Vamos a ver todos éstos pasos, creando nuestra primera aplicación a la que llamaremos
"AGENDA". Si bien el programa lo voy a realizar
utilizando sintaxis que sean comunes a todos los compiladores, en el uso de ventanas voy a
utilizar las de RM, pero si queréis aplicar otro formato, solo tenéis que ver como se hace
con Acucobol, en la sección de Ventanas dentro de Temáticos.
Debéis de tener en cuenta que el programa fuente que yo vaya representando aquí, no tiene los
espacios precisos y algunos caracteres no se representan correctamente. Pero al final, pero
abajo podéis encontrar un enlace al programa .cbl, dispuesto para que lo bajéis y lo
compiléis.
Siempre que vaya ampliando la sección, el programa estará preparado con lo que haya sin
errores y listo para probar.
Al estar dividido por capítulos, las modificaciones y ampliaciones las iré haciendo en cada
uno de ellos, es decir que si al principio declaro unas variables y luego me van haciendo
falta mas, estás aparecerán en el capítulo correspondiente. Solo espero que os aclaréis y lo
podáis seguir con suficiente claridad.
Las frases en éste color son comentarios.
»»
INICIO |
Antes de nada, identificamos
nuestro programa. |
IDENTIFICATION
DIVISION.
PROGRAM-ID. PRUEBA.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
OBJECT-COMPUTER. RMCOBOL-85
PROGRAM COLLATING SEQUENCE IS MAYUS-MINUS.
SPECIAL-NAMES.
Aqui hacemos que el valor de
las mayúsculas y minúsculas sea el mismo y además signamos el
punto decimal como una coma.
ALPHABET MAYUS-MINUS IS
1 THRU 65, 'A' ALSO 'a', 'B' ALSO 'b', 'C' ALSO 'c',
'D' ALSO 'd', 'E' ALSO 'e', 'F' ALSO 'f',
'G' ALSO 'g', 'H' ALSO 'h', 'I' ALSO 'i',
'J' ALSO 'j', 'K' ALSO 'k', 'L' ALSO 'l',
'M' ALSO 'm', 'N' ALSO 'n', 'O' ALSO 'o',
'P' ALSO 'p', 'Q' ALSO 'q', 'R' ALSO 'r',
'S' ALSO 's', 'T' ALSO 't', 'U' ALSO 'u',
'V' ALSO 'v', 'W' ALSO 'w', 'X' ALSO 'x',
'Y' ALSO 'y', 'Z' ALSO 'z',
92 THRU 97, 124 THRU 128
DECIMAL-POINT IS COMMA.
|
|
»»
ARCHIVOS |
Ahora definimos el registro de los archivos que
vamos a utilizar. Una buena estructura podría ser: Código, Nombre, Dirección, Código
Postal, Población, Provincia, Teléfono, Móviles, Correo
electrónico y Página Web. Tendremos dos claves, una principal y
otra alternativa con el nombre. Así iría quedando nuestro
programa. |
INPUT-OUTPUT
SECTION.
FILE-CONTROL. definimos los
archivos con los que vamos a trabajar, su organización, su acceso
y sus claves.
SELECT AGENDA ASSIGN TO RANDOM "AGENDA.DAT"
ORGANIZATION INDEXED ACCESS DYNAMIC
RECORD KEY KEYAGE ALTERNATE RECORD KEY
KEYAGE1
FILE STATUS STAAGE.
SELECT IMPRESORA ASSIGN TO PRINT
"PRINTER1".
DATA DIVISION.
FILE SECTION. aqui
describimos la estructura del registro, con sus campos y el tamaño
de cada uno. Vamos a darle una clave alternada para tener los datos ordenador
por código y por nombre.
FD AGENDA LABEL RECORD STANDARD.
01 REGAGE.
02 KEYAGE.
03 AGECOD PIC 9(4).
02 AGENOM PIC X(30).
02 AGEDOM PIC X(30).
02 AGEPOS PIC 99999.
02 AGEPOB PIC X(20).
02 AGEPRO PIC X(15).
02 AGETEL PIC X(20).
02 AGEMOV PIC X(20).
02 AGEMAI PIC X(30).
02 AGEWEB PIC X(40).
02 KEYAGE1.
03 AGENOM1 PIC X(30).
03 AGECOD1 PIC 9(4).
lo mismo hacemos para el archivo de impresora.
FD IMPRESORA LABEL RECORD OMITTED.
01 LINEA
PIC X(132).
|
Decir que esto será invariable, pero a
partir de aquí, la Working-Storage Section y la Procedure Division, puede
ir variando en cada uno de los capítulos.
|
|