This program creates a sequential file of employee salary records. The input records are arranged in ascending order of employee number. The output file has the identical order.
Figure 122. Example of a Sequential File of Employee Salary Records
5722WDS V5R3M0 030905 LN IBM ILE COBOL CBLGUIDE/CRTSEQ ISERIES1 03/09/15 14:46:40 Page 2 S o u r c e STMT PL SEQNBR -A 1 B..+....2....+....3....+....4....+....5....+....6....+....7..IDENTFCN S COPYNAME CHG DATE 1 000100 IDENTIFICATION DIVISION. 2 000200 PROGRAM-ID. CRTSEQ. 000300 3 000400 ENVIRONMENT DIVISION. 4 000500 CONFIGURATION SECTION. 5 000600 SOURCE-COMPUTER. IBM-ISERIES 6 000700 OBJECT-COMPUTER. IBM-ISERIES 7 000800 INPUT-OUTPUT SECTION. 8 000900 FILE-CONTROL. 9 001000 SELECT INPUT-FILE ASSIGN TO DISK-FILEA 11 001100 FILE STATUS IS INPUT-FILE-STATUS. 12 001200 SELECT OUTPUT-FILE ASSIGN TO DISK-FILEB 14 001300 FILE STATUS IS OUTPUT-FILE-STATUS. 15 001400 DATA DIVISION. 16 001500 FILE SECTION. 17 001600 FD INPUT-FILE. 18 001700 01 INPUT-RECORD. 19 001800 05 INPUT-EMPLOYEE-NUMBER PICTURE 9(6). 20 001900 05 INPUT-EMPLOYEE-NAME PICTURE X(28). 21 002000 05 INPUT-EMPLOYEE-CODE PICTURE 9. 22 002100 05 INPUT-EMPLOYEE-SALARY PICTURE 9(6)V99. 23 002200 FD OUTPUT-FILE. 24 002300 01 OUTPUT-RECORD. 25 002400 05 OUTPUT-EMPLOYEE-NUMBER PICTURE 9(6). 26 002500 05 OUTPUT-EMPLOYEE-NAME PICTURE X(28). 27 002600 05 OUTPUT-EMPLOYEE-CODE PICTURE 9. 28 002700 05 OUTPUT-EMPLOYEE-SALARY PICTURE 9(6)V99. 002800 29 002900 WORKING-STORAGE SECTION. 30 003000 77 INPUT-FILE-STATUS PICTURE XX. 31 003100 77 OUTPUT-FILE-STATUS PICTURE XX. 32 003200 77 OP-NAME PICTURE X(7). 33 003300 01 INPUT-END PICTURE X VALUE SPACE. 34 003400 88 THE-END-OF-INPUT VALUE "E". 003500 35 003600 PROCEDURE DIVISION. 36 003700 DECLARATIVES. 003800 INPUT-ERROR SECTION. 003900 USE AFTER STANDARD ERROR PROCEDURE ON INPUT-FILE. 004000 INPUT-ERROR-PARA. 37 004100 DISPLAY "UNEXPECTED ERROR ON ", OP-NAME, "FOR INPUT-FILE". 38 004200 DISPLAY "FILE STATUS IS ", INPUT-FILE-STATUS. 39 004300 DISPLAY "PROCESSING ENDED". 40 004400 STOP RUN. 004500 004600 OUTPUT-ERROR SECTION. 004700 USE AFTER STANDARD ERROR PROCEDURE ON OUTPUT-FILE. 004800 OUTPUT-ERROR-PARA. 41 004900 DISPLAY "UNEXPECTED ERROR ON ", OP-NAME, "FOR OUTPUT-FILE". 42 005000 DISPLAY "FILE STATUS IS ", OUTPUT-FILE-STATUS. 43 005100 DISPLAY "PROCESSING ENDED". 44 005200 STOP RUN. 005300 END DECLARATIVES. 5722WDS V5R3M0 030905 LN IBM ILE COBOL CBLGUIDE/CRTSEQ ISERIES1 03/09/15 14:46:40 Page 3 STMT PL SEQNBR -A 1 B..+....2....+....3....+....4....+....5....+....6....+....7..IDENTFCN S COPYNAME CHG DATE 005400 005500 MAIN-PROGRAM SECTION. 005600 MAINLINE. 45 005700 MOVE "OPEN" TO OP-NAME. 46 005800 OPEN INPUT INPUT-FILE 005900 OUTPUT OUTPUT-FILE. 006000 47 006100 MOVE "READ" TO OP-NAME. 48 006200 READ INPUT-FILE INTO OUTPUT-RECORD 49 006300 AT END SET THE-END-OF-INPUT TO TRUE 006400 END-READ. 006500 50 006600 PERFORM UNTIL THE-END-OF-INPUT 51 006700 MOVE "WRITE" TO OP-NAME 52 006800 WRITE OUTPUT-RECORD 53 006900 MOVE "READ" TO OP-NAME 54 007000 READ INPUT-FILE INTO OUTPUT-RECORD 55 007100 AT END SET THE-END-OF-INPUT TO TRUE 007200 END-READ 007300 END-PERFORM. 007400 56 007500 MOVE "CLOSE" TO OP-NAME. 57 007600 CLOSE INPUT-FILE 007700 OUTPUT-FILE. 58 007800 STOP RUN. * * * * * E N D O F S O U R C E * * * * * |
(C) Copyright IBM Corporation 1992, 2005. All Rights Reserved.