Processing Files and Records
6.3 Creating and Processing Files
Example 6–27 (Cont.) Using Segmented Keys
DATA DIVISION.
FILE SECTION.
FD FLAVORS.
01 ICE-CREAM-MASTER.
02 ICE-CREAM-DATA.
03 ICE-CREAM-STORE-KIND
03 ICE-CREAM-STORE-MANAGER
03 ICE-CREAM-STORE-SIZE
03 ICE-CREAM-STORE-ADDRESS
03 ICE-CREAM-STORE-CITY
03 ICE-CREAM-STORE-STATE
03 ICE-CREAM-STORE-ZIP
WORKING-STORAGE SECTION.
01 PROGRAM-STAT
88 OPERATOR-STOPS-IT
PROCEDURE DIVISION.
A000-BEGIN.
OPEN I-O FLAVORS.
PERFORM A020-INITIAL-PROMPT.
IF OPERATOR-STOPS-IT
PERFORM A030-RANDOM-READ.
PERFORM A025-SUBSEQUENT-PROMPTS UNTIL OPERATOR-STOPS-IT.
PERFORM A005-TERMINATE.
A005-TERMINATE.
DISPLAY "END OF JOB".
STOP RUN.
A020-INITIAL-PROMPT.
DISPLAY "Do you want to see the manager of a store?".
PERFORM A040-GET-ANS UNTIL PROGRAM-STAT = "Y" OR "y" OR "N" OR "n".
IF PROGRAM-STAT = "N" OR "n"
THEN
A025-SUBSEQUENT-PROMPTS.
MOVE SPACE TO PROGRAM-STAT.
DISPLAY "Do you want to see the manager of another store?".
PERFORM A040-GET-ANS UNTIL PROGRAM-STAT = "Y" OR "y" OR "N" OR "n".
IF PROGRAM-STAT = "Y" OR "y"
THEN
ELSE
A030-RANDOM-READ.
DISPLAY "Enter store kind: ".
ACCEPT ICE-CREAM-STORE-KIND.
DISPLAY "Enter zip code: " AT LINE PLUS 2.
ACCEPT ICE-CREAM-STORE-ZIP.
PERFORM A100-READ-INPUT-BY-KEY.
A040-GET-ANS.
DISPLAY "Please answer Y or N"
ACCEPT PROGRAM-STAT.
A100-READ-INPUT-BY-KEY.
READ FLAVORS KEY IS SEG-ICE-CREAM-KEY
INVALID KEY
NOT INVALID KEY
6–36 Processing Files and Records
PERFORM A005-TERMINATE.
MOVE "1" TO PROGRAM-STAT.
PERFORM A030-RANDOM-READ
MOVE "1" TO PROGRAM-STAT.
DISPLAY "Store does not exist - Try again"
DISPLAY "The manager is: ", ICE-CREAM-STORE-MANAGER.
PIC XX.
PIC X(40).
PIC XX.
PIC X(20).
PIC X(20).
PIC XX.
PIC XXXXX.
PIC X.
VALUE "1".
Need help?
Do you have a question about the COBOL AAQ2G1FTK and is the answer not in the manual?
Questions and answers