Rational Developer for System z
PL/I for Windows, Version 8.0, Programming Guide

Workstation VSAM keyed data sets

The statements and options allowed for workstation VSAM keyed data sets are shown in Table 18.

Table 18. Statements and options allowed for loading and accessing workstation VSAM keyed data sets
File declaration1
Valid statements, with
options you must include
Other options you
can also include
SEQUENTIAL OUTPUT
BUFFERED
WRITE FILE(file-reference)
FROM(reference)
KEYFROM(expression);

LOCATE based-variable
FILE(file-reference)
KEYFROM(expression);

SET(pointer-reference)
SEQUENTIAL OUTPUT
UNBUFFERED
WRITE FILE(file-reference)
FROM(reference)
KEYFROM(expression);
SEQUENTIAL INPUT
BUFFERED
READ FILE(file-reference)
INTO(reference);

READ FILE(file-reference)
SET(pointer-reference);

READ FILE(file-reference); 2
KEY(expression) or
KEYTO(reference)

KEY(expression) or
KEYTO(reference)

IGNORE(expression)
SEQUENTIAL INPUT
UNBUFFERED
READ FILE(file-reference)
INTO(reference);

READ FILE(file-reference); 2
KEY(expression) or
KEYTO(reference)

IGNORE(expression)
SEQUENTIAL UPDATE
BUFFERED
READ FILE(file-reference)
INTO(reference);

READ FILE(file-reference)
SET(pointer-reference);

READ FILE(file-reference); 2

WRITE FILE(file-reference)
FROM(reference)
KEYFROM(expression);

REWRITE
FILE(file-reference);

DELETE FILE(file-reference)
KEY(expression) or
KEYTO(reference)

KEY(expression) or
KEYTO(reference)

IGNORE(expression)





FROM(reference) and/or
KEY(expression)

KEY(expression)
SEQUENTIAL UPDATE
UNBUFFERED
READ FILE(file-reference)
INTO(reference);

READ FILE(file-reference); 2

WRITE FILE(file-reference)
FROM(reference)
KEYFROM(expression);

REWRITE
FILE(file-reference)
FROM(reference);

DELETE
FILE(file-reference);
KEY(expression) or
KEYTO(reference)







KEY(expression)



KEY(expression)
DIRECT3 INPUT
BUFFERED
READ FILE(file-reference)
INTO(reference)
KEY(expression);

READ FILE(file-reference)
SET(pointer-reference)
KEY(expression);
 
DIRECT3 INPUT
UNBUFFERED
READ FILE(file-reference)
INTO(reference)
KEY(expression);
DIRECT OUTPUT
BUFFERED
WRITE FILE(file-reference)
FROM(reference)
KEYFROM(expression);
 
DIRECT OUTPUT
UNBUFFERED
WRITE FILE(file-reference)
FROM(reference)
KEYFROM(expression);
DIRECT3 UPDATE
BUFFERED
READ FILE(file-reference)
INTO(reference)
KEY(expression);

READ FILE(file-reference)
SET(pointer-reference)
KEY(expression);

REWRITE
FILE(file-reference)
FROM(reference)
KEY(expression);

DELETE FILE(file-reference)
KEY(expression);

WRITE FILE(file-reference)
FROM(reference)
KEYFROM(expression);
 
DIRECT3 UPDATE
UNBUFFERED
READ FILE(file-reference)
INTO(reference)
KEY(expression);

REWRITE
FILE(file-reference)
FROM(reference)
KEY(expression);

DELETE FILE(file-reference)
KEY(expression);

WRITE FILE(file-reference)
FROM(reference)
KEYFROM(expression);
Notes:

1 The complete file declaration could include the attributes FILE and RECORD. If you use any of the options KEY, KEYFROM, or KEYTO, you must also include the attribute KEYED in the declaration.

2 The statement READ FILE(file-reference); is equivalent to the statement READ FILE(file-reference) IGNORE(1);

3 Do not associate a DIRECT file with a workstation VSAM data set that has duplicate key capability.

Rational Developer for System z
PL/I for Windows, Version 8.0, Programming Guide