9 dic 2009

CURSO COBOL OS/390. OPERACIONES CON ARCHIVOS.

    EN ESTE APARTADO SOLO HABLAREMOS DE ARCHIVOS SECUENCIALES, SON LOS QUE HE USADO.
    EXISTEN BASICAMENTE 4 OPERACIONES BASICAS EN ARCHIVOS QUE SON:

APERTURA
LECTURA
ESCRITURA
CIERRE

    LA OPERACION DE APERTURA SE REALIZA SE REALIZA CON LA INSTRUCCION OPEN SOBRE EL NOMBRE QUE DECLARAMOS EN LA ENVIRONMENT DIVISION  DESPUES MEDIANTE UN IF ES IMPORTANTE VALIDAR EL FILE STATUS.

    CUANDO ES PARA LECTURA DESPUES DEL OPEN PONEMOS INPUT, CUANDO ES PARA ESCRITURA PONEMOS OUTPUT.

        OPEN INPUT E1DQCLIE
        IF FS-E1DQCLIE = ZEROES
            CONTINUE
        ELSE
            SET SW-ERROR TO TRUE
            DISPLAY 'ERROR PROCESO APERTURA'
            MOVE FS-E1DQCLIE TO WS-ERROR-ESTATUS
        END-IF.

    LA OPERACION DE LECTURA SE REALIZA CON LA INSTRUCCION READ SOBRE EL ARCHIVO, EXISTEN ALGUNA VARIANTES DE ELLA. DESPUES EVALUAMOS EL FILE STATUS, PERO ESTA VEZ UTILIZAREMOS EVALUATE.

    CUANDO DECLARAMOS TODA LA ESTRUCTURA DEL ARCHIVO DENTRO DE LA FD.

        READ E1DQCLIE
        EVALUATE FS-E1DQCLIE
            WHEN ZEROES
                CONTINUE
            WHEN '10'
                SET SW-FIN-ARCHIVO TO TRUE
            WHEN OTHER
                SET SW-ERROR TO TRUE
                DISPLAY 'ERROR PROCESO LECTURA'
                MOVE FS-E1DQCLIE TO WS-ERROR-ESTATUS
        END-EVALUATE.

    CUANDO DECLARAMOS EL LAYOUT EN LA WORKING.

        READ E1DQCLIE INTO WS-E1DQCLIE
        EVALUATE FS-E1DQCLIE
            WHEN ZEROES
                CONTINUE
            WHEN '10'
                SET SW-FIN-ARCHIVO TO TRUE
            WHEN OTHER
                SET SW-ERROR TO TRUE
                DISPLAY 'ERROR PROCESO LECTURA'
                MOVE FS-E1DQCLIE TO WS-ERROR-ESTATUS
        END-EVALUATE.


    LA OPERACION DE ESCRITURA SE REALIZA MEDIANTE LA INSTRUCCION WRITE Y SE HACE SOBRE EL REGISTRO FD  NO SOBRE EL ARCHIVO.

        WRITE FD-S1DQSALI
        IF FS-S1DQSALI = ZEROES
            CONTINUE
        ELSE
            SET SW-ERROR TO TRUE
            DISPLAY 'ERROR PROCESO ESCRITURA'
            MOVE FS-E1DQCLIE TO WS-ERROR-ESTATUS
        END-IF.

POR ULTIMO EL CLOSE PARA CERRAR EL ARCHIVO:

        CLOSE S1DQSALI

0 comentarios: