Modifying output fields
The technique described in “Modifying input fields” on page 75 is not suitable for
modifying output fields. (The results would be returned to the new area instead of
the application’s area, and would be invisible to the application.)
An output field is modified by altering the data that is pointed to by the
command-level parameter list. In the case of an output field, you can modify the
application’s data in place, because the application is expecting the field to be
modified anyway.
Modifying fields used for both input and output
An example of a field that is used for both input and output is LENGTH on a READ
request that specifies INTO. You can treat such fields in the same way as output
fields, and they are considered to be the same.
Modifying the EID
It is not possible to modify the EID to make major changes to requests. It is not
possible, for example, to change a WRITE request to a READ request.
However, you can make minor changes to requests, such as to turn on the
existence bit for SYSID so that the request can be changed into one that is shipped
to a remote system.
The list that follows shows the bits in the EID that can be modified. Any attempt to
modify any other part of the EID is ignored.
FC_BITS1
X'20' The existence bit for LENGTH, NUMREC, or (if the request is
STARTBR, RESETBR, or ENDBR) REQID.
X'08' The existence bit for KEYLENGTH.
X'04' The existence bit for REQID if the request is READNEXT or
READPREV.
X'02' The existence bit for SYSID.
FC_BITS2
X'20' Token specified.
FC_EIDOPT5
X'04' MASSINSERT specified.
FC_EIDOPT6
X'40' GENERIC specified.
X'20' GTEQ specified.
X'10' UNCOMMITTED specified.
X'08' CONSISTENT specified.
X'04' REPEATABLE specified.
X'02' UPDATE specified on READNEXT or READPREV.
file control EXEC interface API exits
76
CICS TS for OS/390: CICS Customization Guide