EXAMPLES OF KSAM FILE ACCESS FROM COBOL PROGRAM [ KSAM/3000 Reference Manual ] MPE/iX 5.0 Documentation
KSAM/3000 Reference Manual
EXAMPLES OF KSAM FILE ACCESS FROM COBOL PROGRAM
The following three examples illustrate KSAM file access from a COBOL
program. The file accessed in each example is called KSAMFILE. It was
created previously by the KSAMUTIL >BUILD command with BYTE type keys:
the primary key containing the name of a person and the alternate key
containing his telephone number; the remaining data in each record is his
address.
EXAMP1. SEQUENTIAL WRITE
The first example reads data from an input file into working storage and
then writes it to a KSAM file. Access mode is sequential so that as each
record is written, the keys are linked in sequential order although the
records are not physically written in sequence. Input-output type is
output only, the only type allowed for the procedure CKWRITE. The
following procedures are illustrated:
CKOPEN
CKWRITE
CKCLOSE
_________________________________________________________________________________
| |
| Input to EXAMP1: |
| |
| NOLAN JACK 923-4975 967 REED AVE. SUNNYVALE CA. 94087|
| HOSODA JOE 227-8214 1180 SAINT PETER CT. LOS ALTOS CA. 94022|
| ECKSTEIN LEO 287-5137 5303 STEEVENS CREEK SANTA CLARA CA. 95050|
| CARDIN RICK 578-7018 11100 WOLFE ROAD CUPERTINO CA. 94053|
| PASBY LINDA 295-1187 TOWN & CNTRY VILLAGE SAN JOSE CA. 94012|
| SEELY HENRY 293-4220 1144 LEBERTY ST. EL CERRITO CA. 94053|
| ROBERT GERRY 258-5535 12345 TELEGRAPH AVE . BERKELEY CA. 90871|
| TURNEWR IVAN 984-8498 22905 EMERSON ST. OAKLAND CA. 98234|
| WHITE GORDON 398-0301 4350 ASHBY AVE. BERKELEY CA. 91234|
| WESTER ELDER 287-4598 1256 KINGFISHER ST. SUNNYVALE CA. 43098|
| **END OF INPUT FOR EXAMP1** |
| |
| Program EXAMP1 |
| |
| 001000 IDENTIFICATION DIVISION. |
| 001100 PROGRAM-ID. EXAMP1. |
| 001200 ENVIRONMENT DIVISION. |
| 001300 INPUT-OUTPUT SECTIONS |
| 001400 FILE-CONTROL. |
| 001500 SELECT SEQ-DATA ASSIGN TO "SEQDATA". |
| 001600 DATA DIVISION. |
| 001700 FILE SECTION. |
| 001800 FD SEQ-DATA |
| 001900 LABEL RECORDS ARE STANDARD. |
| 002000 01 INPUT-REC. |
| 002100 05 REAL-DATA PIC X(72). |
| 002200 WORKING-STORAGE SECTION. |
| 002300 77 RECSIZE PIC S9(4) COMP VALUE 74. |
| 002400 77 RESULT PIC 9(4) VALUE ZERO. |
| 002500 01 DATA-REC. |
| 002600 05 FILLER PIC XX VALUE SPACES. |
| 002700 05 REAL-DATA PIC X(72). l |
_________________________________________________________________________________
Figure 3-3. Sequential Write Using COBOL
_________________________________________________________________________
| |
| 002800 01 FILETABLE. |
| 002900 02 FILENUMBER PIC S9(4) COMP VALUE 0. |
| 003000 02 FILENAME PIC X(8) VALUE "GKSAMFIL". |
| 003100 02 I-O-TYPE PIC S9(4) COMP VALUE 1. |
| 003200 02 A-MODE PIC S9(4) COMP VALUE 0. |
| 003300 02 PREV-OP PIC S9(4) COMP VALUE 0. |
| 003400 01 STATUSKEY. |
| 003500 02 STATUS-KEY-1 PIC X. |
| 003600 02 STATUS.KEY-2 PIC X. |
| 003700 |
| 003800 PROCEDURE DIVISION. |
| 003900 START. |
| 004000 OPEN INPUT SEQ-DATA@ |
| 004100 CALL "CKOPEN" USING FILETABLE, STATUSKEY. |
| 004200 IF STATUS-KEY-1="9" THEN |
| 004300 CALL "CKERROR" USING STATUSKEY, RESULT |
| 004400 DISPLAY "CKOPEN ERROR NO.", RESULT. |
| 004500 IF STATUS-KEY-1 NOT = "0" THEN |
| 004600 DISPLAY "CKOPEN FAILED" |
| 004700 STOP RUN. |
| 004800 LOOP. |
| 004900 READ SEQ-DATA |
| 005000 AT END GO TO FINISH. |
| 005100 MOVE CORP INPUT-REC TO DATA-REC. |
| 005200 CALL "CKWRITE" USING FILETABLE, STATUSKEY, DATA-REC,|
| 005300 RECSIZE. |
| 005400 IF STATUSKEY = "02" THEN |
| 005500 DISPLAY "DUPLICATE KEY". |
| 005600 IF STATUS-KEY-1 = "0" THEN |
| 005700 DISPLAY DATA-REC |
| 005800 GO TO LOOP. |
| 005900 IF STATUS-KEY-1 = "9" THEN |
| 006000 CALL "CKERROR" USING STATUSKEY, RESULT |
| 006100 DISPLAY "CKWRITE ERROR NO.", RESULT |
| 006200 DISPLAY DATA-REC |
| 006300 GO TO LOOP. |
| 006400 FINISH. |
| 006500 CLOSE SEQ-DATA. |
| 006600 CALL "CKCLOSE" USING FILETABLE, STATUSKEY. |
| 006700 IF STATUS-KEY-1 = "9" THEN |
| 006800 CALL "CKERROR" USING STATUSKEY, RESULT |
| 006900 DISPLAY "CKCLOSE ERROR NO. ". RESULT. |
| 007000 STOP RUN. |
_________________________________________________________________________
Figure 3-3. Sequential Write Using COBOL(continued)
_________________________________________________________________________________
| |
| Output from EXAMP1 Execution: |
| |
| NOLAN JACK 923-4975 967 REED AVE. SUNNYVALE CA. 94087|
| HOSODA JOE 227-8214 1180 SAINT PETER CT. LOS ALTOS CA. 94022|
| ECKSTEIN LEO 287-5137 5303 STEEVENS CREEK SANTA CLARA CA. 95050|
| CARDIN RICK 578-7018 11100 WOLFE ROAD CUPERTINO CA. 94053|
| PASBY LINDA 295-1187 TOWN & CNTRY VILLAGE SAN JOSE CA. 94012|
| SEELY HENRY 293-4220 1144 LEBERTY ST. EL CERRITO CA. 94053|
| ROBERT GERRY 258-5535 12345 TELEGRAPH AVE . BERKELEY CA. 90871|
| TURNEWR IVAN 984-8498 22905 EMERSON ST. OAKLAND CA. 98234|
| WHITE GORDON 398-0301 4350 ASHBY AVE. BERKELEY CA. 91234|
| WESTER ELDER 287-4598 1256 KINGFISHER ST. SUNNYVALE CA. 43098|
| END OF PROGRAM |
| |
_________________________________________________________________________________
Figure 3-3. Sequential Write Using COBOL(continued)
EXAMP2. SEQUENTIAL READ
The second example reads the file KSAMFILE in sequential order by primary
key (NAME) and prints each record as it is read. It then repositions the
file to the first sequential record according to the alternate key
(PHONE) and prints each of the records as it is read in this order. The
file is opened in sequential mode for input only. The following
procedures are illustrated:
CKOPEN
CKREAD
CKSTART
CKCLOSE
_______________________________________________________________________
| |
| Program EXAM2: |
| |
| 001000 IDENTIFICATION DIVISION. |
| 001100 PROGRAM-ID. EXAMP2. |
| 001200 ENVIRONMENT DIVISION. |
| 001300 INPUT-OUTPUT SECTION. |
| 001400 FILE-CONTROL. |
| 001500 SELECT SEQ-DATA ASSIGN TO "SEQDATA". |
| 001600 DATA DIVISION. |
| 001700 WORKING-STORAGE SECTION. |
| 001800 77 RECSIZE PIC S9(4) COMP VALUE 74. |
| 001900 77 RESULT PIC 9(4) VALUE ZERO. |
| 002000 77 KEY-LOC PIC S9(4) COMP VALUE 23. |
| 002100 77 RELOP PIC S9(4) COMP VALUE 2. |
| 002200 77 KEYLENGTH PIC S9(4) COMP VALUE 8. |
| 002300 77 KEY-VALUE PIC X(8) VALUE "000-0000". |
| 002400 01 DATA-REC. |
| 002500 05 FILLER PIC XX. |
| 002600 05 NAME PIC X(20). |
| 002700 05 PHONE PIC X(8). |
| 002800 05 OTHER-DATA PIC X(44). |
| 002900 01 FILETABLE. |
| 003000 02 FILENUMBER PIC S9(4) COMP VALUE o. |
| 003100 02 FILENAME PIC X(8) VALUE "GKSAMFIL". |
| 003200 02 I-O-TYPE PIC S9(4) COMP VALUE o. |
| 003300 02 A-MODE PIC S9(4) COMP VALUE o. |
| 003400 02 PREV-OP PIC S9(4) COMP VALUE o. |
| 003500 01 STATUSKEY. |
| 003600 02 STATUS-KEY-l PIC X. |
| 003700 02 STATUS-KEY-2 PIC X. |
| 003800 |
| 003900 PROCEDURE DIVISION. |
| 004000 START. |
| 004100 CALL "CKOPEN" USING FILETABLE, STATUSKEY. |
| 004200 IF STATUS-KEY-1 = "9" THEN |
| 004300 CALL "CKERROR" USING STATUSKEY, RESULT |
| 004400 DISPLAY "CKOPEN ERROR NO.", RESULT. |
| 004500 IF STATUS-KEY-1 NOT = "0" THEN |
| 004600 DISPLAY "CKOPEN FAILED" |
| 004700 STOP RUN. |
| 004800 DISPLAY "ALPHABETICAL ORDER" |
| 004900 DISPLAY " ". |
| 005000 L00P1. |
| 005100 CALL "CKREAD" USING FILETABLE, STATUSKEY, DATA-REC,|
| 005200 RESIZED. |
| 005300 IF STATUS-KEY-1= "1" THEN GO TO PART2. |
_______________________________________________________________________
Figure 3-4. Sequential Read Using COBOL
__________________________________________________________________________
| |
| 005400 IF STATUS-KEY-1 = "0" THEN |
| 005500 DISPLAY DATA-REC |
| 005600 ELSE |
| 005700 DISPLAY "CKREAD ERROR, STATUS = ", STATUSKEY|
| 005800 IF STATUS-KEY-1 = "9" THEN |
| 005900 CALL "CKERROR" USING STATUSKEY, RESULT |
| 006000 DISPLAY "ERROR NO.", RESULT. |
| 006100 GO TO LOOP. |
| 006200 PART2 |
| 006300 DISPLAY " ". |
| 006400 DISPLAY "PHONE NO. ORDER:" |
| 006500 DISPLAY " ". |
| 006600 CALL "CKSTART" USING FILETABLE, STATUSKEY, RELOP, |
| 006700 KEY-VALUE, KEY-LOC, KEYLENGTH. |
| 006800 IF STATUSKEY = "23" THEN GO TO FINISH. |
| 006900 IF STATUS-KEY-1 = "0" THEN GO TO LOOP2. |
| 007000 DISPLAY "CKSTART ERROR, STATUS = ", STATUSKEY. |
| 007100 IF STATUS-KEY-1 = "9" THEN |
| 007200 CALL "CKERROR" USING STATUSKEY, RESULT |
| 007300 DISPLAY "ERROR NO.", RESULT. |
| 007400 GO TO FINISH. |
| 007500 LOOP2 |
| 007600 CALL "CKREAD" USING FILETABLE, STATUSKEY, DATA-REC, |
| 007700 RECSIZE. |
| 007800 IF STATUS-KEY-1 = "1" THEN GO TO FINISH. |
| 007900 IF STATUS-KEY-1 = "0" THEN |
| 008000 DISPLAY DATA-REC |
| 008100 ELSE |
| 008200 DISPLAY "CKREAD ERROR, STATUS =", STATUSKEY |
| 008400 IF STATUS-KEY-1 ="9" THEN |
| 008400 CALL "CKERROR" USING STATUSKEY, RESULT |
| 008500 DISPLAY "ERROR NO. ", RESULT. |
| 008600 GO TO LOOP2. |
| 008700 FINISH. |
| 008800 CALL "CKCLOSE" USING FILETABLE, STATUSKEY. |
| 008900 IF STATUS-KEY-1 = "9" THEN |
| 009000 CALL "CKERROR" USING STATUSKEY, RESULT |
| 009100 DISPLAY "CKCLOSE ERROR NO.", RESULT. |
| 009200 STOP RUN. |
__________________________________________________________________________
Figure 3-4. Sequential Read Using COBOL (continued)
________________________________________________________________________________
| |
| Outtput from EXAMP2 Execution: |
| |
| ALPHABETICAL ORDER: |
| |
| CARDIN RICK 587-7018 11100 WOLFE ROAD CUPERTINO CA. 94053 |
| ECKSTEIN LEO 287-5137 5303 STEVENS CREEK SANTA CLARA CA. 95050 |
| HOS0DA JOE 227-8214 1180 SAINT PETER CT. LOS ALTOS CA. 94022 |
| NOLAN JACK 923-4975 967 REED AVE. SUNNYVALE CA. 94087 |
| PASBY LINDA 295-1187 TOWN & CNTRY VILLAGE SAN JOSE CA. 94102 |
| ROBERT GERRY 259-5535 12345 TELEGRAPH AVE. BERKELEY CA. 90871 |
| SEELY HENRY 293-4220 1144 LEBERTY ST. EL CERRITO CA. 94053 |
| TURNEWR IVAN 984-8498 22905 EMERSON ST. OAKLAND CA. 98234 |
| WESTER ELDER 287-4598 1256 KINGFISHER ST. SUNNYVALE CA. 43098 |
| WHITE GORDON 398-0301 4350 ASHBY AVE. BERKELEY CA. 91234 |
| |
| PHONE NO. ORDER: |
| |
| HOSODA JOE 227-8214 1180 SAINT PETER CT. LOS ALTOS CA. 94022|
| ROBERT GERRY 259-5535 12345 TELEGRAPH AVE. BERKELEY CA. 90871|
| WESTER ELDER 287-4598 1256 KINGFISHER ST. SUNNYVALE CA. 43098|
| ECKSTEIN LEO 287-5137 5303 STEVENS CREEK SANTA CLARA CA. 95050|
| SEELY HENRY 293-4220 1144 LEBERTY ST. EL CERRITO CA. 94053|
| PASBY LINDA 295-1187 TOWN & CNTRY VILLAGE SAN JOSE CA. 94102|
| WHITE GORDON 398-0301 4350 ASHBY AVE. BERKELEY CA. 91234|
| CARDIN RICK 578-7018 11100 WOLFE ROAD CUPERTINO CA. 94053|
| NOLAN JACK 923-4975 967 REED AVE. SUNNYVALE CA. 94087|
| TURNEWR IVAN 984-8498 22905 EMERSON ST. OAKLAND CA. 98234|
| |
| |
| END OF PROGRAM |
________________________________________________________________________________
Figure 3-4. Sequential Read Using COBOL (continued)
EXAMP3. RANDOM UPDATE
This example reads a set of new data containing update information into
the WORKING-STORAGE SECTION. Each record read is followed by a U for
update, a D for delete, or an A for add. Records to be added are written
to the file KSAMFILE using CKWRITE in random mode. Records to be updated
are copied to the appropriate record with CKREWRITE. Records to be
deleted are first read in the WORKING-STORAGE SECTION with CKREADBYKEY
and then deleted with CKDELETE. The file is opened in random mode for
input-output.
The procedures illustrated by this example are:
CKOPEN
CKREADBYKEY
CKDELETE
CKREWRITE
CKWRITE
CKCLOSE
______________________________________________________________
| |
| Program EXAMP3: |
| |
| 001000 IDENTIFICATION DIVISION, |
| 001100 PROGRAM-ID. EXAMP3. |
| 001200 ENVIRONMENT DIVISION. |
| 001300 INPUT-OUTPUT SECTION. |
| 001400 FILE-CONTROL. |
| 001500 SELECT NEW-DATA ASSIGN TO "NEWDATA". |
| 001600 DATA DIVISION. |
| 001700 FILE SECTION. |
| 001800 FD NEW-DATA |
| 001900 LABEL RECORDS ARE STANDARD. |
| 002000 01 INPUT-REC PIC X(73), |
| 002100 WORKING-STORAGE SECTION, |
| 002200 77 RECSIZE PIC S9(4) COMP VALUE 74. |
| 002300 77 RESULT PIC 9(4) VALUE ZERO. |
| 002400 77 KEY-LOC PIC S9(4) COMP VALUE 3. |
| 002500 01 MASTER-REC. |
| 002600 05 FILLER PIC XX. |
| 002700 05 NAME PIC X(20). |
| 002800 05 PHONE PIC X(8). |
| 002900 05 OTHER-DATA PIC X(44). |
| 003000 01 DATA-REC. |
| 003100 05 NAME PIC X(20). |
| 003200 05 PHONE PIC X (8). |
| 003300 05 OTHER-DATA PIC X(44). |
| 003400 05 TRANSACTION-CODE PIC X. |
| 003500 01 FILETABLE. |
| 003600 02 FILENUMRER PIC S9(4) COMP VALUE o. |
| 003700 O2 FILENAME PIC X(8) VALUE "GKSAMFIL".|
| 003800 02 I-O-TYPE PIC S9(4) COMP VALUE 2. |
| 003900 02 A-MoDE PIC S9(4) COMP VALUE 1. |
| 004000 02 PHEV-OP PIC S9(4) COMP VALUE 0. |
| 004100 01 STATUSKEY. |
| 004200 02 STATUS-KEY-1 PIC X. |
| 004300 02 STATUS-KEY-2 PIC X. |
| 004400 |
______________________________________________________________
Figure 3-5. Random Update with COBOL
_______________________________________________________________________________
| |
| 004500 PROCEDURE DIVISION. |
| 004600 START. |
| 004700 OPEN INPUT NEW-DATA. |
| 004800 CALL "CKOPEN" USING FILETABLE, STATUSKEY. |
| 004900 IF STATUS-KEY-1 = "9" THEN |
| 005000 CALL "CKERROR" USING STATUSKEY, RESULT |
| 005100 DISPLAY "CKOPEN ERROR NO.", RESULT. |
| 005200 IF STATUS-KEY-1 NOT ="0" THEN |
| 005300 DISPLAY "CKOPEN FAILED" |
| 005400 STOP RUN. |
| 005500 LOOP. |
| 005600 READ NEW-DATA INTO DATA-REC; |
| 005700 AT END GO TO FINISH. |
| 005800 IF TRANSACTION-CODE = "A" THEN GO TO ADD.REC, |
| 005900 IF TRANSACTION-CODE NOT = "D" AND "U" THEN |
| 006000 DISPLAY "ILLEGAL TRANSACTION CODE" |
| 006100 DISPLAY DATA-REC |
| 006200 GO TO LOOP. |
| 006300 CALL "CKREADBYKEY" USING FILETABLE, STATUSKEY, MASTER-REC,|
| 006400 NAME OF DATA-REC, KEY-LOC, RECSIZE. |
| 006500 IF STATUS-KEY-1 NOT = "0" THEN |
| 006600 DISPLAY "CKREADBYKEY ERROR, STATUS =", STATUSKEY, |
| 006700 "1 KEY =", NAME OF DATA-REC |
| 006800 IF STATUS-KEY-1 = "9" THEN |
| 006900 CALL "CKERROR" USING STATUSKEY, RESULT |
| 007000 DISPLAY "ERROR NO.", RESULT |
| 007100 GO TO LOOP |
| 007200 ELSE |
| 007300 GO TO LOOP. |
| 007400 IF TRANSACTION-CODE = "D" THEN GO TO DELETE-REC. |
| 007500 MOVE CORR DATA-REC TO MASTER-REC. |
| 007600 CALL "CKREWRITE" USING FILETABLE, STATUSKEY, MASTER-REC, |
| 007700 RECSIZE. |
| 007800 IF STATUS-KEY-1 = "0" THEN |
| 007900 DISPLAY MASTER-REC, "UPDATED" |
| 008000 GO TO LOOP. |
| 008100 DISPLAY "CKREWRITE ERROR, STATUS =", STATUSKEY, "1 KEY ="|
| 008200 NAME OF MASTER-REC. |
| 008300 IF STATUS KEY-1= "9" THEN |
| 008400 CALL "CKERROR" USING STATUSKEY, RESULT |
| 008500 DISPLAY "ERROR NO.", RESULT |
| 008600 GO TO LOOP. |
_______________________________________________________________________________
Figure 3-5. Random Update with COBOL (continued)
___________________________________________________________________________
| |
| 008700 DELETE-REC. |
| 008800 CALL "CKDELETE" USING FILETABLE, STATUSKEY. |
| 008900 IF STATUS-KEY-1 = "0" THEN |
| 009000 DISPLAY MASTER-REC, "DELETED" |
| 009100 GO TO LOOP. |
| 009200 DISPLAY "CKDELETE ERROR, STATUS =" STATUSKEY. |
| 009300 IF STATUS-KEY-1 = "9" THEN |
| 009400 CALL "CKERROR", USING STATUSKEY, RESULT |
| 009500 DISPLAY "ERROR NO.", RESULT. |
| 009600 GO TO LOOP. |
| 009700 ADD-REC. |
| 009800 MOVE CORR DATA-REC TO MASTER-REC. |
| 009900 CALL "CKWRITE" USING FILETABLE, STATUSKEY, MASTER-REC.|
| 010000 RECSIZE. |
| 010100 IF STATUSKEY = "02" THEN |
| 010200 DISPLAY "DUPLICATE KEY", |
| 010300 IF STATUS-KEY-1 = "0" THEN |
| 010400 DISPLAY MASTER-REC, "ADDED" |
| 010500 GO TO LOOP. |
| 010600 DISPLAY "CKWRITE ERROR, STATUS = ", STATUSKEY. |
| 010700 IF STATUS-KEY-1 = "9" THEN |
| 010800 CALL "CKERROR" USING STATUSKEY, RESULT |
| 010900 DISPLAY "ERROR NO. ", RESULT. |
___________________________________________________________________________
Figure 3-5. Random Update with COBOL (continued)
___________________________________________________________________________________
| |
| 011000 DISPLAY MASTER-REC, |
| 011100 GO TO LOOP. |
| 011200 FINISH. |
| 011300 CLOSE NEW-DATA. |
| 011400 CALL "CKCLOSE" USING FILETABLE, STATUSKEY, |
| 011500 IF STATUS-KEY-1 = "9" THEN |
| 011600 CALL "CKERROR" USING STATUSKEY, RESULT |
| 011700 DISPLAY "CKCLOSE ERROR NO.", RESULT |
| 011800 STOP RUN. |
| |
| |
| |
| Input to EXAMP3: |
| |
| NOLAN JACK 923-4975 1 ANY STREET. SUNNYVALE CA. 94O87U |
| SMITH JOHN 555-1212 102 FIRST ST. OUR TOWN CA. 94099A |
| ECKSTEIN LEO D |
| CARDIN RICK 257-7000 11100 WOLFE ROAD CUPERTINO CA. 94041U|
| PASBY LINDAL D |
| JANE MARY 565-9090 1776 BICENTENNIAL ST. AMAHEIM CA. 91076A |
| ROBERT GERRY 259-5535 12345 TELEGRAPH AVE. BERKELEY CA. 94704U |
| TURNEW IVAN D |
| FORD GERALD 555-1976 1600 PENNSYLVANIS WASHINGTON DC. 20001U |
| WESTER ELDER 287-4598 1256 KINGFISHER ST. SUNNYVALE CA. 94309A |
| |
| Output from Execution of EXAMP3: |
| |
| NOLAN JACK 923-4975 1 ANY STREET. SUNNYVALE CA. 94087 |
| UPDATED |
| SMITH JOHN 555-1212 102 FIRST ST. OUR TOWN CA. 94099 |
| ADDED |
| ECKSTEIN LEO 287-5137 5303 STEVENS CREEK SANTA CLARA CA. 95050 |
| DELETED |
| CARDIN RICK 257-7000 11100 WOLFE ROAD CUPERTINO CA. 94014 |
| UPDATED |
| PASBY LINDA 295-1187 TOWN & CNTRY VILLAGE SAN JOSE CA. 94102 |
| DELETED |
| JANE MARY 565-9090 1776 BICENTENNIAL ST. ANAHEIM CA. 91076 |
| ADDED |
| ROBERT GERRY 259-5535 12345 TELEGRAPH AVE. BERKELEY CA. 94704 |
| UPDATED |
| CKREADBYKEY ERROR, STATUS = 231 KEY = TURNEW IVAN |
| CKREADBYKEY ERROR, STATUS = 231 KEY = FORD GERALD |
| CKWRITE ERROR, STATUS = 22 |
| WESTER ELDER 287-44598 1256 KINGFISHER ST. SUNNYVALE CA. 9430A |
___________________________________________________________________________________
Figure 3-5. Random Update with COBOL (continued)
NOTE Note that the input contains data that results in error messages.
The name IVAN TURNEWR is spelled incorrectly and cannot be found.
The name GERALD FORD does not exist in the original file and also
cannot be found. On the other hand, the name ELDER WESTER already
exists in the file and cannot be added since it is a primary key
for which duplicates are not allowed.
MPE/iX 5.0 Documentation