Curso Cobol Srb

  • View
    25

  • Download
    6

Embed Size (px)

Transcript

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 1

    CONTENIDO CURSO DE COBOL

    CAPITULO I INTRODUCCIN Y GENERALIDADES

    INTRODUCCIN

    TIPOS DE DATOS

    TIPOS DE PALABRAS

    REAS DE TRABAJO

    TIPOS DE CONSTANTES

    CAPITULO II ESTRUCTURA DEL COBOL

    IDENTIFICATION DIVISION

    ENVIRONMENT DIVISION

    DATA DIVISION

    PROCEDURE DIVISION

    CAPITULO III VERBOS DE ENTRADA/SALIDA/ASIGNACIN/UTILITARIOS

    DISPLAY

    ACCEPT

    MOVE

    CAPITULO IV VERBOS ARITMETICOS

    ADD

    SUBTRACT

    MULTIPLY

    DIVIDE

    COMPUTE

    CAPITULO V CONDICIONALES

    IF

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 2

    EVALUATE

    CAPITULO VI VERBOS DE CONTROL

    PERFORM o BSICO o ANIDADOS o TIMES o UNTIL o THRU o VARYING o COMBINADO o LINEA

    TIMES UNTIL VARYING

    CAPITULO VII FORMATOS DE EDICION

    MASCARAS

    CAPITULO VIII TABLAS DE MEMORIA

    OCCURS

    DEPENDING ON

    ORDENAMIENTOS

    BUSQUEDAS

    CAPITULO IX ARCHIVOS SECUENCIALES

    OPEN

    CLOSE

    READ

    WRITE

    REWRITE

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 3

    LINEAS DE BALANCE

    BUSQUEDAS EN ARCHIVOS

    CAPITULO X ARCHIVOS INDEXADOS

    OPEN

    CLOSE

    READ

    WRITE

    REWRITE

    START

    DELETE

    CAPITULO XI SUBPROGRAMACION

    CALL

    LINK

    COPY

    CAPITULO XII BUSQUEDAS EN ARCHIVOS

    SIMPLES

    LINEAS DE BALANCES

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 4

    CURSO DE COBOL

    CAPITULO INTRODUCCIN Y GENERALIDADES

    INTRODUCCION

    C COMMAND O B BUSINESS O ORIENTED L LANGUAJE

    HISTORIA

    1959 1974 ANSI 1985 RMCOBOL/85 1991 COBOL ENTERPRISE (HOST) 2002 (COBOL ANSI-2002) 2007 Se esta preparando una nueva versin.

    Existen varios compiladores que permiten emplear COBOL como lenguaje de scripting y de servicio Web, Tambin existen compiladores que permiten generar cdigo COBOL para la plataforma .NET Y EJB(Enterprise Java Beans).

    REAL COBOL COBOL-I COBOL-II MICROFOCUS COBOL VICOBOL.

    TIPOS DE DATOS

    TIPO DATO FORMATO LONGITUD VALORES

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 5

    ALFABETICOS A 256 car. A..Z, a..z

    NUMERICOS 9 18 dig. 0..9

    ALFANUMERICOS

    X 256 car. A..Z, a..z,0..9, caracteres especiales.

    TIPOS DE PALABRAS

    USUARIO 30 Caracteres mximo No caracteres especiales (-) EJM: LEER-ARCHIVO-MAESTRO -CONTADOR CONTADOR-

    RESERVADAS READ, DISPLAY, MOVE,etc. REAS DE TRABAJO

    A Columnas 8 a la 11

    B Columnas 12 a la 72 1-6 Enumeracin automtica de las lneas 7 * - 73-80 No se utilizan

    TIPOS DE CONSTANTES

    ALFABETICAS

    NUMERICAS

    ALFANUMERICAS

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 6

    FIGURATIVAS ZERO ZEROS 0 ZERUES SPACE SPACES Espacios en blanco LOW-VALUES Valores Nulos HIGH-VALUES Mximo valor ALL QUOTTE Comilla Sencilla () QUOTTES Comilla Doble ()

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 7

    CAPITULO II ESTRUCTURA DEL COBOL

    IDENTIFICATION DIVISION

    ENVIRONMENT DIVISION

    DATA DIVISION

    PROCEDURE DIVISION 8

    IDENTIFICATION DIVISION. PROGRAM-ID. Nombre del programa. AUTHOR. Nombre del autor. INSTALLATION. Lugar donde est instalado. DATE-WRITTEN. Fecha de creacin. DATE-COMPILED. (Fecha de compilacin.) REMARKS. Comentarios. EJM: 8 IDENTIFICATION DIVISION. PROGRAM-ID. PRUEBA. AUTHOR. SERGIO OSWALDO ROJAS BERNAL. INSTALLATION. BBVA COLOMBIA. DATE-WRITTEN. 23-AGO-2010. DATE-COMPILED. REMARKS. PROGRAMA QUE GENERA UNA PRUEBA DE COBOL.

    8 12 ENVIRONMENT DIVISION. CONFIGURATION SECTION.

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 8

    SOURCE-COMPUTER. Ordenador donde se escribi el fuente. OBJECT-COMPUTER. Ordenador donde se ejecuta el objeto. SPECIAL-NAMES. Cambiar valores para constantes del lenguaje, pueden variar en cada compilador. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT [OPTIONAL] Nombre-de-archivo ASSIGN TO Tipo-de-dispositivo ORGANIZATION IS Tipo de organizacion ACCESS MODE IS Mode 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.

    Para la linea de SPECIAL-NAMES el uso mas habitual es el de cambiar el punto decimal usado por los ingleses por la coma y asi poder especificar los puntos para los miles, su formato sera el siguiente: SPECIAL-NAMES. DECIMAL-POINT IS COMMA. Tambin podramos cambiar el valor del smbolo de la moneda con: CURRENCY SIGN IS literal , suele ser un solo caracter 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...

    EJM: 8 12 ENVIRONMENT DIVISION. CONFIGURATION SECTION. SOURCE-COMPUTER. IBM 390. OBJECT-COMPUTER. IBM 390. SPECIAL-NAMES.

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 9

    DECIMAL-POINT IS COMMA. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT NOMINA ASSIGN TO DISK DATOS ORGANIZATION IS SEQUENTIAL ACCESS MODE IS SEQUENTIAL FILE STATUS IS VAR-ESTADO.

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 10

    8 12 DATA DIVISION. FILE SECTION. WORKING-STORAGE SECTION. LINKAGE SECTION. COMMUNICATION SECTION. SCREEN SECTION. REPORT SECTION. Niveles : 01 y 77 Subniveles : 02..49 Subnivel : 88 nombres de condicin 8 12 FILE SECTION. FD Nombre del fichero. BLOCK CONTAINS Numero de registros por bloque RECORDS RECORD CONTAINS Nmero de caracteres por registro CHARACTERS LABEL RECORD Etiqueta de registro DATA RECORD Nombre del registro. 01 Nombre del registro. 02 CAMPO 1. 02 CAMPO 2. 02 CAMPO 3. 02 CAMPO 4. . . 02 CAMPO n. 8 12 WORKING-STORAGE SECTION. 01 VAR-ENTERA PIC 9(8) VALUE ZEROS.

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 11

    01 VAR-ENTERA PIC 99999999 VALUE ZEROS. 01 VAR-ALFABE PIC A(30) VALUE SPACES. 01 VAR-ALFANU PIC X(50) VALUE SPACES 01 RAYA PIC X(80) VALUE ALL -. 01 VAR-REAL PIC 9(8)V99 VALUE ZEROS. 01 VAR-REAL2 PIC 9(8)V9(2) VALUE ZEROS. 01 VAR-SIGNO PIC S9(8)V99 VALUE ZEROS. 77 IVA PIC 9V99 VALUE 0.16. LINKAGE SECTION. 01 PAR-FECHA PIC 9(8). 01 PAR-SALDO PIC S9(8)V99. COMMUNICATION SECTION. SCREEN SECTION. REPORT SECTION.

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 12

    8 12 PROCEDURE DIVISION (USING Variable, Variable ...). DECLARATIVES. Nombre-seccionSECTION. USE AFTER ERROR PROCEDURE ON tipo. Nombre-parrafo. Sentencias. ..... END DECLARATIVES. Nombre-seccion SECTION. Nombre-parrafo. Sentencias. PROCEDURE DIVISION (USING Variable, Variable ...). Cuando especificamos USING en la linea de PROCEDURE DIVISION , despus deberemos de dar los nombres de variables que hayamos definido en la LINKAGE SECTION, para compartir en el programa, lo que nos indicar que ste ha sido llamado por otro programa y que esas variables traern un valor procedente del programa llamador, que a su vez utiliz la instruccin CALL con las mismas variables. Se pondran tantos prrafos y secciones como quisieramos controlar, siempre teniendo en cuenta que sta se acaba cuando se indique END DECLARATIVES. Si no quisieramos utilizar sta seccin, podriamos de igual manera controlar los errores en nuestro programa preguntando siempre por la variable de error de cada fichero que se defini como FILE STATUS en la FILE-CONTROL. PROCEDURE DIVISION. INICIO. Instruccin1 nstruccin2

    Instruccin3 Instruccin-n STOP RUN.

  • MANUAL DE COBOL

    Elaborado por Sergio Oswaldo Rojas Bernal Pgina 13

    CAPITULO III VERBOS DE ENTRADA/SALIDA/ASIGNACIN Y UTILITARIOS

    ACCEPT: Verbo de Entrada

    Formato para aceptar datos del sistema o variables de entorno. ACCEPT variable FROM (DATE, DAY, DAY-OF-WEEK, TIME, CENTURY-DATE, CENTURY-DAY, ESCAPE-KEY, Segn la opcin escogida, as ser el valor que contendr la variable usada, una vez completada la sentencia. Veamos cada una de las opciones:

    DATE, devuelve la fecha en formato AAMMDD, por lo que la variable debe de estar definida con PIC 9(6).

    CENTURY-DATE, igual que DATE, pero acepta la fecha con 8 dgitos en formato SSAAMMDD. Definir con PIC 9(8).

    DAY, devuelve el ao y el da del ao en que estamos con el formato AADDD, siendo el valor 1, para el 1 de Enero y as sucesivamente. Debe de estar definida con PIC 9(5).

    CENTURY-DAY, igual que DAY, pero acepta 4 dgitos para el ao, quedando el formato AAAADDD. Definir con PIC 9(7).

    DAY-OF-WEEK, devuelve un dgito que indica el da de la semana, siendo 1 el Lunes, 2 el Martes, ... Aqu, la variable debe de estar definida como PIC 9.

    TIME, devuelve la hora con formato HHMMSSMM, la variable debe de estar como PIC 9(8).

    ESCAPE-KEY, devuelve el cdigo de la tecla de excepcin pulsada, debe de estar definida con PIC 99 y segn el compilador los valores pueden ser distintos, pero los bsicos suelen ser los mismos, por ejemplo: ENTER=13, FLECHA ARRIBA=52, FLECHA-ABAJO=53 y las tecl