Send data on an APPC mapped conversation.
SEND (APPC)
>>-SEND--+--------------+--------------------------------------->
'-CONVID(name)-'
>--+------------------------------------------+--+--------+----->
'-FROM(data-area)--+-LENGTH(data-value)--+-' +-INVITE-+
'-FLENGTH(data-value)-' '-LAST---'
>--+---------+--+-------------+--------------------------------><
+-CONFIRM-+ '-STATE(cvda)-'
'-WAIT----'
Conditions: INVREQ, LENGERR, NOTALLOC, SIGNAL, TERMERR
Description
SEND sends data to a conversation
partner on an APPC mapped conversation.
Options
- CONFIRM
- Indicates that an application
using a synchronization level 1 or 2 conversation requires a response
from the remote application. A remote CICS® application
can respond positively by running an ISSUE CONFIRMATION command,
or negatively, by running an ISSUE ERROR command,
in which case the sending application has EIBERR and EIBERRCD set. CICS does not return control to
the sending application until the response is received.
- CONVID(name)
- Identifies the conversation to which
the command relates. The 4-character name identifies either the token
returned by a previous ALLOCATE command in EIBRSRCE
in the EIB, or the token representing the principal session (returned
by a previous ASSIGN command).
For compatibility
with earlier releases, SESSION is accepted as a synonym for CONVID.
New programs must use CONVID.
If this option is omitted, the
principal facility is assumed.
- FLENGTH(data-value)
- An alternative to the LENGTH option.
For architectural reasons, this option is limited to a maximum of
32 KB 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, an application can use the INVITE
option 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 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 to be run 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.
- STATE(cvda)
- Gets
the state of the current conversation. The CVDA values returned by CICS are:
- ALLOCATED
- CONFFREE
- CONFRECEIVE
- CONFSEND
- FREE
- PENDFREE
- PENDRECEIVE
- RECEIVE
- ROLLBACK
- SEND
- SYNCFREE
- SYNCRECEIVE
- SYNCSEND
- 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 starts. 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 completes.
Conditions
Some
of the following conditions might 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.
- 16 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.
- 22 LENGERR
- Occurs if an out-of-range value
is supplied in the LENGTH or FLENGTH option.
Default action: terminate the task abnormally.
- 61 NOTALLOC
- Occurs if the CONVID value
in the command does not relate to a conversation that is owned by
the application, or if the facility specified in the command is not
owned by the application.
Default action: terminate the task abnormally.
- 24 SIGNAL
- Occurs when an inbound SIGNAL
data flow control command is received from a logical unit or session.
EIBSIG is always set when an inbound signal is received.
Default
action: ignore the condition.
- 81 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) might 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.