Using KSAM/XL and KSAM 64 (32650-90886)

Appendix A 221
COBOL Intrinsics
Examples of KSAM File Access
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 STEVENS 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 LIBERTY 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
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
Figure A-5. Sequential Read Using COBOL
Program EXAMP2:
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.