|
 |
 |
Data Division
página(s) : 2/4 (5050 palabras totales en este texto) (149543 Lecturas) 
WORKING-STORAGE SECTION.
LINKAGE SECTION.
COMMUNICATION SECTION
SCREEN SECTION Para la WORKING y la LINKAGE
las normas son las mismas, asi que las veremos conjuntamente. Las otras dos secciones, COMMUNICATION y
SCREEN no las veremos en el manual.
Número de Nivel ...... Nombre de campo ...... PIC, VALUE, REDEFINES, OCCURS, JUST, SIGN, SYNC.
Cada campo declarado debe de llevar un
número de nivel que le informe al compilador del tipo de campo que es:
El nivel 01, identifica la primera entrada de un registro o la primera entrada de un campo que se va a
subdividir.
El nivel 77, identifica a una variable que no se va a subdividir y que no forma parte de ningún registro.
El nivel 88, identifica los posibles valores condicionales de una variable previamente definida.
Los niveles 02 al 49 indicarán las
distintas subdivisiones de un campo cuya primera entrada ha sido definida a nivel 01.
Los niveles 01 y 77 deberán de ir siempre en el Area A (Col 8) el resto es independiente.
A continuación pondremos el nombre del
campo, que no podrá ser ninguna palabra cobol ni llevar ningún carácter extraño,
principalmente se utilizarán letras y números o guiones. Es posible que algún campo que
definamos nunca vaya a ser usado por el programa pero si en cambio es necesario que exista
para que nos reserve el espacio, le llamaremos FILLER.
Y finalmente podrán venir una serie de cláusulas como:
PICTURE / PIC esta
palabra es la que utilizamos para identificar el tipo de datos que va a contener la
variable. Los posible valores son:
DE CAMPOS.
9 - Para campos numéricos.
A - Para campos alfabéticos.
X - Para campos alfanuméricos.
S - Indica variable con signo.
V - Indica punto decimal.
DE EDICIÓN.
$ - Representa la aparición del signo $ delante del
campo numérico.
. - Indica separación de miles.
, - Indica punto decimal. (estas dos pueden variar según hayamos
especificado en SPECIAL-NAMES DECIMAL-POINT IS COMMA).
Z - Representa un espacio para el 0 a
la izquierda en campos numéricos.
* - Igual pero se cambia el 0 por *.
B - Indica un espacio en blanco.
- ó + - Indican la aparición del signo correspondiente.
Puede haber mas pero los mas utilizados
son los que se han comentado.
Para indicar la longitud del campo se
puede repetir el símbolo tantas veces como longitud tenga o expresarla entre paréntesis,
es decir para definir una variable alfanumérica de 10 caracteres se pondría:
PIC X(10) o PIC XXXXXXXXXX. Los valores S y V solo
pueden aparecer una vez por cada variable.
A continuacion vamos a ver un ejemplo de
todo lo que hemos explicado para que se vaya quedando claro.
WORKING-STORAGE SECTION.
01 DOMICILIO.
02 TIPO PIC XX.
02 NOMBRE PIC X(20).
02 NUMERO PIC 9(4).
Fijaros que hemos definido 4 variables,
la primera no tiene PIC, por que indica que está subdividida en las 3 restantes. La
segunda "TIPO" nos dice que es una variable alfanúmerica y que puede contener 2
caracteres como máximo, la utilizariamos para guardar el tipo de calle, avenida, paseo,
plaza, etc.. Para la tercera "NOMBRE" va a ser también alfanumérica pero con
una longitud máxima de 20 caracteres y nos servirá para guardar el nombre de la calle,
plaza, avenida, etc y la última "NUMERO" indica una variable numérica de 4
dígitos, que quiere decir que puede contener valores entre 0 y 9999.
Observad que en Cobol no se guardan las
varables numéricas por bytes como ocurre con todos los lenguajes actuales sino por
número de dígitos, con ello quizás desaprovechamos mas la memoria pero en cambio
tenemos un control mejor del dato que puede contener nuestra variable.
Si TIPO fuera "AV", NOMBRE
"DE LOS DESAMPARADOS " y NUMERO "15", si nos refiriéramos a la
variable DOMICILIO ésta tendría el siguiente valor:"AVDE LOS DESAMPARADOS
0015".
| (1/4) | | (3/4) |
|
|