Cobol
Environment Division
Es la segunda división por orden de aparición, y en ella se especifican, el ordenador donde se escribió y se ejecutará el programa, así como la relación entre los ficheros a utilizar con sus correspondencias externas, es decir con los dispositivos a los que hará referencia el programa objeto cuando vaya a establecer comunicación con dicho fichero.Diremos antes de continuar que en los primeros cobol había muchas partes que eran obligatorias en cada programa, pero hoy en día, por ejemplo, ésta división ya no es obligatoria, así como ninguna de sus partes. Su sintaxis sería la siguiente:
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SOURCE-COMPUTER. Ordenador donde se escribió la fuente.
OBJECT-COMPUTER. Ordenador donde se ejecuta elobjeto.
SPECIAL-NAMES. Cambiar valores para constantes del lenguaje, pueden variar en cada compilador.
Como se aprecia en su sintaxis, ésta segunda división se divide a su vez en dos secciones, que se describen a continuación:
CONFIGURATION SECTION: Donde describimos los tipos de ordenadores en que se escribió y se ejecutará el programa, o bien el nombre del compilador y asignación de valores aciertas constantes utilizadas por el compilador, estos valores se introducen en sus respectivas líneas como se ve arriba.
Para la línea de SPECIAL-NAMES el uso más habitual es el de cambiar el punto decimal usado por los ingleses por la coma y así poder especificar los puntos para los miles, su formato sería el siguiente:
SPECIAL-NAMES.
DECIMAL-POINT IS COMMA.
También podríamos cambiar elvalor del símbolo de la moneda con:
CURRENCY SIGN IS literal , suele ser un solo carácter y no puede coincidir con ninguno de los que usamos para definir las variables, es decir ni A, ni Z, ni 9,ni -,ni +,ni X, etc...
O hacer que todas las letras introducidas sean mayúsculas o minúsculas o que no haya diferencias entre ambas con la clausula ALPHABET.
INPUT-OUTPUT SECION: Es la siguiente seccióndentro de la Environment, donde se especificarán todos los ficheros que vamos a utilizar, su tipo, su modo de acceso así como el medio en que estarán, esta sección solo será obligatoria cuando vayamos a utilizar ficheros. Esta tiene dos párrafos FILE-CONTROL e I-O-CONTROL.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT [OPTIONAL] Nombre-de-archivo
ASSIGN TO Tipo-de-dispositivo
ORGANIZATIONIS Tipo de organización
ACCESS MODE IS Modo de acceso al fichero
RECORD KEY IS Clave del registro
ALTERNATE RECORD KEY IS Claves alternativas registro
WITH DUPLICATES
FILE STATUS IS Variable de estado del fichero.
Vamos a explicar cada una de las cláusulas que encontramos dentro de la Input-Output Section.
Cláusula SELECT es aquí donde especificamos el nombre lógico que va a tenerel fichero dentro del programa, suele ser una palabra que identifique lo más claro posible el contenido del fichero, por ejemplo ARTICULOS, PROVEEDORES, CLIENTES.
Cláusula OPTIONAL si indicamos esta opción al hacer un OPEN I-O, si el archivo no existe, se crea. Con lo cual nos evitamos tener que abrirlo como OUTPUT y cerrarlo, antes de poder utilizarlo por primera vez.
Cláusula ASSIGN aquíespecificamos el tipo de dispositivo, si es una impresora PRINTER, si es un fichero sobre el que vamos a grabar RANDOM o DISC, se pueden utilizar otros como INPUT, INPUT-OUTPUT, CASSETTE, MAGNETIC-TAPE, pero sin duda los más utilizados son los dos primeros para identificar si el fichero utilizará una salida impresa o se utilizará sobre disco. Para identificar ficheros utilizados para clasificarutilizaremos SORT.
Cláusula ORGANIZATION aquí indicamos la organización de los registros de nuestro fichero, podrá ser SEQUENTIAL, RELATIVE o INDEXED, si nuestro archivo fuera secuencial se podría omitir ésta clausula así como las restantes.
De ésta organización se deriva el formato del fichero, SEQUENTIAL si los registros se graban secuencialmente conforme se dan entrada sin importar si están o no...
Regístrate para leer el documento completo.