Opening a file (ESDS, KSDS, or RRDS)
Before you can use WRITE
, START
, READ
, REWRITE
,
or DELETE
statements to process records in a file,
you must first open the file with an OPEN
statement.
Whether a file is
available or optional affects OPEN
processing, file
creation, and the resulting file status key. For example, if you open
in EXTEND
, I-O
, or INPUT
mode
a nonexistent non-OPTIONAL
file, the result is an OPEN
error,
and file status 35 is returned. If the file is OPTIONAL
,
however, the same OPEN
statement returns file status
05, and, for open modes EXTEND
and I-O
,
creates the file.
An OPEN
operation works
successfully only if you set fixed file attributes in the DD
statement
or data-set label for a file, and specify consistent attributes for
the file in the SELECT
clause and FD
entries
of your COBOL program. Mismatches
in the following items result in a file status key 39 and the failure
of the OPEN
statement:
- Attributes for file organization (sequential, relative, or indexed)
- Prime record key
- Alternate record keys
- Maximum record size
- Record type (fixed or variable)
How you code the OPEN
statement for
a VSAM file depends on whether the file is empty (a file that has
never contained records) or loaded. For either type of file, your
program should check the file status key after each OPEN
statement.