


[FILE-CONTROL.] { file-control-entry } ...
or
{ file-control-entry } ...
Format 1 - Sequential Files
SELECT [OPTIONAL] file-name
ASSIGN TO [device] [file-spec]
[ [ ORGANIZATION IS ] [BINARY] SEQUENTIAL ]
[LINE ]
[ ACCESS MODE IS SEQUENTIAL ]
[ RESERVE {number} [ALTERNATE] [AREA ]]
{NO } [AREAS]
[ LOCK MODE IS {EXCLUSIVE}]
{AUTOMATIC}
{MANUAL }
[ RECORD DELIMITER IS STANDARD-1 ]
[ FILE STATUS IS status-variable ]
[ PADDING CHARACTER IS pad-char ] .
Format 2 - Relative Files
SELECT [OPTIONAL] file-name
ASSIGN TO [device] [file-spec]
[ ORGANIZATION IS ] RELATIVE
[ ACCESS MODE IS
{ SEQUENTIAL [ RELATIVE KEY IS rel-key ] } ]
{ RANDOM RELATIVE KEY IS rel-key }
{ DYNAMIC RELATIVE KEY IS rel-key }
[ LOCK MODE IS { EXCLUSIVE }
{ AUTOMATIC [ multiple-option ] }
{ MANUAL [ multiple-option ] }
[ RESERVE {number} [ALTERNATE] [AREA ]]
{NO } [AREAS]
[ FILE STATUS IS status-variable ] .
Format 3 - Indexed Files
SELECT [OPTIONAL] file-name
ASSIGN TO [device] [file-spec]
[ WITH {COMPRESSION} ... ]
{ENCRYPTION }
[ COMPRESSION CONTROL VALUE IS factor ]
[ ORGANIZATION IS ] INDEXED
[ ACCESS MODE IS {SEQUENTIAL} ]
{RANDOM }
{DYNAMIC }
[ RECORD KEY IS alt-name [= seg-name ...] ]
[ ALTERNATE RECORD KEY IS alt-name [= seg-name ...]
[ WITH [NO] DUPLICATES ] ] ...
[ LOCK MODE IS { EXCLUSIVE [ WITH MASS-UPDATE ] }
{ AUTOMATIC [ multiple-option ] }
{ MANUAL [ multiple-option ] }
[ RESERVE {number} [ALTERNATE] [AREA ]]
{NO } [AREAS]
[ FILE STATUS IS status-variable ]
[ COLLATING SEQUENCE IS alphabet-name ] .
Format 4 - Sort Files
SELECT file-name ASSIGN TO [device] [file-spec] [ FILE STATUS IS status-variable ] .
WITH { LOCK ON [ MULTIPLE ] { RECORD } } [WITH ROLLBACK]
{ RECORDS }
{ ROLLBACK }