You are on page 1of 2

START

----------

USING START COMMAND WE CAN INDICATE WHERE


THE RECORD POSITION SHOULD BE ESTABLISHED
IN THE DATASET, BY USING A RELATIONAL
OPERATOR AND THE KEY VALUE.

FORMAT
-------------

START filename KEY IS EQUAL TO / = /


GREATER THAN /
> /
NOT LESS THAN /
NOT < dataname
[INVALID KEY impreative statement].

eg. MOVE 'RAM' TO ACCNA.


START BANK-FILE KEY IS NOT LESS THAN ACCNA INVALID
KEY STOP RUN.
PROGRAM
------------
IDENTIFICATION DIVISION.
PROGRAM-ID. IFW.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT BANK-FILE ASSIGN TO BBBB
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
RECORD KEY IS ACCNO
ALTERNATE RECORD KEY IS ACCNA WITH DUPLICATES
FILE STATUS IS FIST.
DATA DIVISION.
FILE SECTION.
FD BANK-FILE.
01 BANK-REC.
02 ACCNO PIC 9(5).
02 ACCNA PIC X(20).
02 ACCTY PIC A.
02 ACCAM PIC 9(5).
02 FILLER PIC X(49).
WORKING-STORAGE SECTION.
77 FIST PIC XX.
77 ANA PIC X(20).
PROCEDURE DIVISION.
ST-PARA.
PERFORM OPEN-PARA.
PERFORM START-PARA.
PERFORM READ-PARA UNTIL FIST = '10'.
PERFORM CLOSE-PARA.
STOP RUN.
OPEN-PARA.
OPEN INPUT BANK-FILE.
IF FIST = '35'
DISPLAY 'FILE NOT FOUND'
STOP RUN.
START-PARA.
ACCEPT ACCNA.
START BANK-FILE KEY IS EQUAL TO ACCNA INVALID KEY
display 'key not found'
STOP RUN.
READ-PARA.
READ BANK-FILE NEXT AT END DISPLAY 'EOF'.
IF FIST NOT = '10'
DISPLAY ACCNO ' ' ACCNA ' ' ACCTY ' ' ACCAM.
CLOSE-PARA.
CLOSE BANK-FILE.

RUNJCL SHOULD CONTAIN


//BBBB DD DSN=ISAM40.SAMU.KSDS1,DISP=SHR
//BBBB1 DD DSN=ISAM40.SAMU.PATH1,DISP=SHR
//SYSIN DD *
RAM
/*

You might also like