Monday, March 14, 2011

Mainframe-cobol

To search all


000100 IDENTIFICATION DIVISION.                                         00010000
000200 PROGRAM-ID. SEARALL2                                             00020000
000300 ENVIRONMENT DIVISION.                                            00030000
000400 INPUT-OUTPUT SECTION.                                            00040000
000500 FILE-CONTROL.                                                    00050000
000600      SELECT INFILE ASSIGN TO INDD.                               00060000
000700*     SELECT OUTFILE ASSIGN TO OUTDD.                             00070000
000800 DATA DIVISION.                                                   00080000
000900 FILE SECTION.                                                    00090000
001000 FD INFILE.                                                       00100000
001100 01 IN-REC.                                                       00110000
001200      02 IN-STU-ID PIC 9(5).                                      00120000
001300      02 IN-STU-NAME PIC X(10).                                   00130000
001400      02 IN-SUB-NAME PIC X(5).                                    00140000
001500      02 IN-MARKS-SUB PIC 9(3).                                   00150000
001600      02 FILLER PIC X(57).                                        00160000
001700*FD OUTFILE.                                                      00170000
001800*01 OUT-REC.                                                      00180000
001900*     02 OUT-STU-ID PIC 9(5).                                     00190000
002000*     02 OUT-STU-NAME PIC X(10).                                  00200000
002100*     02 OUT-SUB-NAME PIC X(5).                                   00210000
002200*     02 OUT-MARKS-SUB PIC 9(3).                                  00220000
002300*     02 FILLER PIC X(57).                                        00230000
002400 WORKING-STORAGE SECTION.                                         00240000
002500 01 TABLE1.                                                       00250000
002600      02 STU-DETAILS OCCURS 4 TIMES                               00260001
002610                 ASCENDING KEY IS IN-STU-ID                       00261000
002700                 INDEXED BY F1.                                   00270000
002800          03 STU-ID PIC 9(5).                                     00280000
002900          03 STU-NAME PIC X(10).                                  00290000
003000          03 MARKS-DETAILS OCCURS 4 TIMES INDEXED BY F2.          00300001
003100               04 SUB-NAME PIC X(5).                              00310000
003200               04 MARKS-SUB PIC 9(3).                             00320000
003300 01 AA PIC 9(3).                                                  00330000
003400 01 FLAG PIC X VALUE 'N'.                                         00340000
003500      88 EOF VALUE 'Y'.                                           00350000
003600      88 NOT-EOF VALUE 'N'.                                       00360000
003700 PROCEDURE DIVISION.                                              00370000
003800      PERFORM OPEN-PARA.                                          00380000
003900      SET F1 TO 1.                                                00390000
004000      PERFORM READ-PARA  UNTIL F1 > 4.                            00400001
004100      SET F1 TO 1.                                                00410000
004200      SET F2 TO 1.                                                00420000
004300      PERFORM SEARCH-PARA UNTIL F1 > 4.                           00430001
004400      PERFORM CLOSE-PARA.                                         00440000
004500      STOP RUN.                                                   00450000
004600 OPEN-PARA.                                                       00460000
004700      OPEN INPUT INFILE.                                          00470000
004800      ACCEPT AA.                                                  00480000
004900      DISPLAY '      AA  ' AA.                                    00490000
005000 READ-PARA.                                                       00500000
005100      READ INFILE INTO STU-DETAILS(F1).                           00510000
005200       DISPLAY STU-DETAILS(F1).                                   00520000
005300      SET F1 UP BY 1.                                             00530000
005400 SEARCH-PARA.                                                     00540000
005500      DISPLAY 'SEARCH PARA' STU-DETAILS(F1).                      00550000
005600      SET F2 TO 1.                                                00560000
005700      PERFORM SEARCH-PARA1.                                       00570003
005800      SET F1 UP BY 1.                                             00580000
005900 SEARCH-PARA1.                                                    00590000
006000      SEARCH ALL MARKS-DETAILS AT END                             00600000
006100      DISPLAY 'NO PROCESS'                                        00610000
006200      WHEN MARKS-DETAILS(F1 , F2) = AA                            00620002
006300      DISPLAY ' SUB-NAM ='   SUB-NAME(F1 , F2)                    00630000
006400      DISPLAY ' SUB-MAR ='   MARKS-SUB(F1 , F2)                   00640000
006500      END-SEARCH.                                                 00650000
006600*     SET F2 UP BY 1.                                             00660003
006700 CLOSE-PARA.                                                      00670000
006800      CLOSE INFILE.                                               00680000



No comments:

Post a Comment