Sunday, September 8, 2019

COBOL program to reading the records randomly from KSDS

       ID DIVISION.
       PROGRAM-ID. FILEOPEN.
      *****************************************************************
      ***   READING  RECORDS  RANDOMLY FROM KSDS                    ***
      *****************************************************************
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT INFILE ASSIGN TO DD1
           ORGANIZATION INDEXED
           ACCESS MODE IS RANDOM
           RECORD KEY IS ENO
           FILE STATUS IS INFL-ST.
       DATA DIVISION.
       FILE SECTION.
       FD INFILE.
       01 INREC.
         04 ENO PIC X(4).
         04 ENAME PIC X(4).
         04 EMOB PIC X(10).
         04 FILLER PIC X(62).
       WORKING-STORAGE SECTION.
       01 INFL-ST PIC X(2).
       88 INFL-OK VALUE '00'.
       88 END-INFL VALUE '10'.
       PROCEDURE DIVISION.
       000-MAIN.
           DISPLAY 'FILE READING STARTS'.
           PERFORM 100-OPEN-PARA
           THRU 100-OPEN-PARA-EXIT
           PERFORM 200-PROCESS-PARA
           THRU 200-PROCESS-PARA-EXIT
           PERFORM 300-CLOSE-PARA
           THRU 300-CLOSE-PARA-EXIT
           PERFORM 999-STOP-RUN
           THRU 999-STOP-RUN-EXIT.
       000-EXIT.
           EXIT.
       100-OPEN-PARA.
           OPEN INPUT INFILE
           IF INFL-OK
           DISPLAY 'INFILE OPENING SUCCESFULLY'
           ELSE
           DISPLAY 'ERROR OPENING INFILE:' INFL-ST
           PERFORM 999-STOP-RUN
           THRU 999-STOP-RUN-EXIT
           END-IF.
       100-OPEN-PARA-EXIT.
           EXIT.
       200-PROCESS-PARA.
           ACCEPT ENO
           READ INFILE
           KEY IS ENO
           INVALID KEY
           DISPLAY 'INVALID KEY'
           NOT INVALID KEY
           DISPLAY INREC
           END-READ.
       200-PROCESS-PARA-EXIT.
           EXIT.
       300-CLOSE-PARA.
           CLOSE INFILE
           IF INFL-OK
           DISPLAY 'INFILE CLOSE SUCCESSFULLY'
           ELSE
           DISPLAY 'ERROR CLOSE SUCCESSFULLY' INFL-ST
           GO TO 300-CLOSE-PARA-EXIT
           END-IF.
       300-CLOSE-PARA-EXIT.
           EXIT.
       999-STOP-RUN.
           DISPLAY 'PROGRAM READING ENDED'
           STOP RUN.
       999-STOP-RUN-EXIT.
           EXIT.

No comments:

Post a Comment