Write data to a 3270-display logical unit (LUTYPE2) or a 3270-printer
logical unit (LUTYPE3).

SEND (LUTYPE2/LUTYPE3)
>>-SEND--FROM(data-area)--+-LENGTH(data-value)--+--+------+----->
'-FLENGTH(data-value)-' '-WAIT-'
>--+--------+--------------------------------------------------->
+-INVITE-+
'-LAST---'
>--+-+----------------------+--+---------------------+-+-------->
| '-ERASE--+-----------+-' '-CTLCHAR(data-value)-' |
| +-DEFAULT---+ |
| '-ALTERNATE-' |
'-+----------+--------------------------------------'
'-STRFIELD-'
>--+---------+-------------------------------------------------><
'-DEFRESP-'
Conditions: INVREQ, LENGERR, TERMERR
Description
SEND writes data to a terminal.
Options
- ALTERNATE
- sets
the terminal to use the ALTERNATE screen size.
- CTLCHAR(data-value)
- specifies
a 1-byte write control character (WCC) that controls a SEND command for a
3270. These are documented in the IBM 3270 Data Stream Programmer's
Reference. A COBOL user must specify a data area containing this character.
If the option is omitted, all modified data tags are reset to zero and the
keyboard is restored.
- DEFAULT
- sets
the terminal to use the DEFAULT screen size.
- DEFRESP
- indicates
that a definite response is required when the output operation has been completed.
- ERASE
- specifies
that the screen printer buffer or partition is to be erased and the cursor
returned to the upper left corner of the screen. (This option applies only
to the 3270, or 8775, and to the 3604 Keyboard Display.)
The first output
operation in any transaction, or in a series of pseudoconversational transactions,
should always specify ERASE. For transactions attached to 3270 screens or
printers, unless explicitly overridden by the DEFAULT or ALTERNATE option,
this also ensures that the correct screen size is selected, as defined for
the transaction by the SCRNSIZE option in the RDO PROFILE resource definition.
- FLENGTH(data-value)
An alternative to LENGTH. For architectural reasons, this option
is limited to a maximum of 32K for all terminal-related SEND commands.
- FROM(data-area)
- specifies
the data to be written to the logical unit, or a partner transaction.
- INVITE
- For
the SEND (APPC) command, INVITE allows an application program to add a change-direction
indicator to data already sent to a process in a connected APPC system. Control
data is not transmitted by CICS until the subsequent execution of a WAIT or
a SYNCPOINT command, unless CONFIRM or WAIT is also coded on the GDS SEND
INVITE command.
For the other SEND commands, INVITE specifies that the
next terminal control command executed for this facility is a RECEIVE. This
allows optimal flows to occur.
- LAST
- specifies
that this is the last SEND command for a transaction.
- LENGTH(data-value)
- specifies
the length, as a halfword binary value, of the data to be written. For a description
of a safe upper limit, see LENGTH options in CICS commands.
- STRFIELD
- specifies
that the data area specified in the FROM option contains structured fields.
If this option is specified, the contents of all structured fields must be
handled by the application program. The CONVERSE command, rather than a SEND
command, must be used if the data area contains a read partition structured
field. (Structured fields are described in the CICS 3270 Data Stream
Device Guide.)
CTLCHAR and ERASE are mutually exclusive with STRFIELD,
and their use with STRFIELD generates an error message.
- WAIT
- specifies
that processing of the command must be completed before any subsequent processing
is attempted.
If the WAIT option is not specified, control is returned
to the application program when processing of the command has started. A subsequent
input or output request (terminal control, BMS, or batch data interchange)
to the terminal associated with the task causes the application program to
wait until the previous request has been completed.
Conditions
Some
of the following conditions may occur in combination. If more than one occurs,
only the first is passed to the application program. EIBRCODE, however, is
set to indicate all the conditions that occurred.
- INVREQ
- RESP2 values:
- 200
- A distributed program link server application attempted to send on its
function-shipping session (its principal facility).
For SEND (APPC), a
distributed program link server application specified the function-shipping
session (its principal facility) on the CONVID option.
also occurs (RESP2 not set) in any of the following situations:
- The CONFIRM option has been specified, but the APPC conversation is not
sync level 1 or 2.
- The SEND command has been used on an APPC conversation that is not a mapped
conversation or that is not using the EXEC CICS interface.
Default action: terminate the task abnormally.
- LENGERR
- occurs
if an out-of-range value is supplied in the LENGTH or FLENGTH option.
Default
action: terminate the task abnormally.
- TERMERR
- occurs
for a session-related error. Any action on that conversation other than a
FREE causes an ATCV abend.
A CANCEL TASK request by a user node error
program (NEP) may cause this condition if the task has an outstanding terminal
control request active when the node abnormal condition program handles the
session error.
Default action: terminate the task abnormally with
abend code ATNI.