Compaq AAQ2G1FTK Marine Radio User Manual


 
Processing Files and Records
6.1 Dening Files and Records
Example 64 Creating Variable-Length Records with the DEPENDING ON
Phrase
FILE SECTION.
FD INFILE.
01 IN-REC.
03 IN-TYPE PIC X.
03 REST-OF-REC PIC X(499).
FD OUTFILE
RECORD VARYING FROM 200 TO 500 CHARACTERS
DEPENDING ON OUT-LENGTH.
01 OUT-REC PIC X(500).
WORKING-STORAGE SECTION.
01 OUT-LENGTH PIC 999 COMP VALUE ZEROES.
Example 65 Creating Variable-Length Records with the RECORD VARYING
Phrase
FILE SECTION.
FD OUTFILE
RECORD VARYING FROM 200 TO 500 CHARACTERS.
01 OUT-REC-1 PIC X(200).
01 OUT-REC-2 PIC X(500).
Example 66 Creating Variable-Length Records and Using the OCCURS Clause
with the DEPENDING ON Phrase
.
.
.
FILE SECTION.
FD PARTS-MASTER
RECORD VARYING 118 TO 163 CHARACTERS.
01 PARTS-REC.
03 P-PART-NUM PIC X(10).
03 P-PART-INFO PIC X(100).
03 P-BIN-INDEX PIC 999.
03 P-BIN-NUMBER PIC X(5)
OCCURS 1 TO 10 TIMES DEPENDING ON P-BIN-INDEX.
.
.
.
Example 6–6 creates variable-length records by using the OCCURS clause
with the DEPENDING ON phrase in the record description. Compaq COBOL
determines record length by adding the sum of the variable record’s fixed portion
to the size of the table described by the number of table occurrences at execution
time.
In this example, the variable record’s fixed portion size is 113 characters. (This
is the sum of P-PART-NUM, P-PART-INFO, and P-BIN-INDEX.) If P-BIN-
INDEX contains a 7 at execution time, P-BIN-NUMBER will be 35 characters
long. Therefore, PARTS-REC’s length will be 148 characters; the fixed portion’s
length is 113 characters, and the table entry’s length at execution time is 35
characters.
Processing Files and Records 611