División de Información se utiliza para definir las variables utilizadas en el programa. Para describir los datos en COBOL, uno debe comprender los siguientes términos:
Nombre de Datos
Número de Nivel
Cláusula Imagen
Cláusula de Valor
01 TOTAL-STUDENTS PIC9(5) VALUE '125'. | | | | | | | | | | | | Level Number Data Name Picture Clause Value Clause
Nombres de datos debe estar definido en la División de Información antes de utilizarlas en la Division de Procedure. Deben tener un nombre definido por el usuario; palabras reservadas no se pueden utilizar. Nombres de datos da referencia a los lugares de memoria donde se almacenan los datos reales. Pueden ser primarias o tipo de grupo.
Ejemplo
El ejemplo siguiente muestra los datos válidos y no válidos los nombres:
Valid: WS-NAME TOTAL-STUDENTS A100 100B Invalid: MOVE (Reserved Words) COMPUTE (Reserved Words) 100 (No Alphabet) 100+B (+ is not allowed)
Número de nivel se utiliza para especificar el nivel de datos en un registro. Que se utilizan para diferenciar los elementos elementales y elementos de grupo. Elementos elementales pueden agruparse para crear elementos de grupo.
Número de Nivel | Descripción |
---|---|
01 | Descripción del registro entrada |
02 A 49 | Grupo elemental y elementos |
66 | Cláusula Rename elementos |
77 | Elementos que no pueden ser sub-divididos |
88 | Nombre de la Condición entrada |
Elementos elementales no puede dividirse. Número de nivel, los datos nombre, foto y cláusula cláusula de valor (opcional) se utiliza para describir un tema elemental.
Grupo los elementos constan de uno o más elementos elementales. Número de nivel, nombre de los datos, y cláusula de valor (opcional) que se utilizan para describir un elemento de grupo. Grupo número de nivel es siempre 01.
Ejemplo
El ejemplo siguiente muestra Grupo elemental y los elementos:
DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-NAME PIC X(25). ---> ELEMENTARY ITEM 01 WS-CLASS PIC 9(2) VALUE '10'. ---> ELEMENTARY ITEM 01 WS-ADDRESS. ---> GROUP ITEM 05 WS-HOUSE-NUMBER PIC 9(3). ---> ELEMENTARY ITEM 05 WS-STREET PIC X(15). ---> ELEMENTARY ITEM 05 WS-CITY PIC X(15). ---> ELEMENTARY ITEM 05 WS-COUNTRY PIC X(15) VALUE 'INDIA'. ---> ELEMENTARY ITEM
Cláusula Imagen se utiliza para definir los siguientes elementos:
Tipo de datos pueden ser numéricos, alfabéticos o alfanuméricos. Tipo Numérico consiste sólo de dígitos 0 a 9. Alfabético tipo consta de las letras de la A a la Z y espacios. Tipo Alfanumérico consta de dígitos, letras y caracteres especiales.
Signo puede utilizarse con datos numéricos. Puede ser + o .
Posición del punto decimal se puede usar con datos numéricos. Posición asumida es la posición del punto decimal y no se incluyen en los datos.
Longitud define el número de bytes utilizados en el elemento de datos.
Los símbolos utilizados en una imagen cláusula:
Símbolo | Descripción |
---|---|
9 | Valor Numérico |
A | Orden alfabético |
X | Alfanumérico |
V | Decimal implícito |
S | Signo |
P | Decimal asumido |
Ejemplo
El siguiente ejemplo muestra el uso de PIC cláusula:
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-NUM1 PIC S9(3)V9(2). 01 WS-NUM2 PIC PPP999. 01 WS-NUM3 PIC S9(3)V9(2) VALUE -123.45. 01 WS-NAME PIC A(6) VALUE 'ABCDEF'. 01 WS-ID PIC X(5) VALUE 'A121$'. PROCEDURE DIVISION. DISPLAY "WS-NUM1 : "WS-NUM1. DISPLAY "WS-NUM2 : "WS-NUM2. DISPLAY "WS-NUM3 : "WS-NUM3. DISPLAY "WS-NAME : "WS-NAME. DISPLAY "WS-ID : "WS-ID. STOP RUN.
JCL para ejecutar el programa COBOL:
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C //STEP1 EXEC PGM=HELLO
Cuando se compila y ejecuta el programa antes mencionado, se produce el resultado siguiente:
WS-NUM1 : +000.00 WS-NUM2 : .000000 WS-NUM3 : -123.45 WS-NAME : ABCDEF WS-ID : A121$
Cláusula de valor es una cláusula opcional que se usa para inicializar los elementos de datos. Los valores pueden ser literales numéricos, alfanuméricos, literal o figurativa constante. Puede utilizarse tanto con los elementos elementales y grupo.
Ejemplo
El siguiente ejemplo muestra el uso de cláusula de valor:
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-NUM1 PIC 99V9 VALUE IS 3.5. 01 WS-NAME PIC A(6) VALUE 'ABCD'. 01 WS-ID PIC 99 VALUE ZERO. PROCEDURE DIVISION. DISPLAY "WS-NUM1 : "WS-NUM1. DISPLAY "WS-NAME : "WS-NAME. DISPLAY "WS-ID : "WS-ID. STOP RUN.
JCL para ejecutar el programa COBOL:
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C //STEP1 EXEC PGM=HELLO
Cuando se compila y ejecuta el programa antes mencionado, se produce el resultado siguiente:
WS-NUM1 : 03.5 WS-NAME : ABCD WS-ID : 00