GDS SEND

Send data on an APPC basic conversation (assembler-language and C programs only).

GDS SEND (APPC basic)

Read syntax diagramSkip visual syntax diagramGDS SENDCONVID( name)FROM( data-area)FLENGTH( data-value)INVITELASTCONFIRMWAITCONVDATA( data-area)RETCODE( data-area)STATE( cvda)

Description

GDS SEND sends data.

The return code is given in RETCODE (see Table 1). For a list of return code values, see the Return codes for APPC basic conversations. EXEC CICS® conditions are never raised on GDS commands.

Options

In general, the arguments can be replaced by absolute or relocatable assembler-language expressions.

CONFIRM
allows an application working at synchronization level 1 or 2 to synchronize its processing with that of a process in a remote system. The actions taken to synchronize processing are defined by the application programs involved. The CONFIRM option causes RQD2 to be added to the data already sent, and forces a WAIT. On receipt of the indicator, the remote process takes the agreed actions and then sends a response. When the WAIT completes, CDBERR is set to X'00' if the appropriate response has been received.
CONVDATA(data-area)
specifies the 24-byte application data area into which conversation-related information is to be moved. A description of the format of the data area is given in the discussion of CONVDATA fields in the Testing indicators.
CONVID(name)
identifies the conversation to which the command relates. The 4-character name identifies either the token returned by a previously executed GDS ALLOCATE command, or the token representing the principal session (returned by a previously executed GDS ASSIGN command).
FLENGTH(data-value)
specifies the length (as a fullword binary value in the range 1–32 767) of the data specified in the FROM option.
FROM(data-area)
specifies the data that is to be sent.
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.
LAST
allows an application program to add CEB to data already sent to a process in a connected APPC system. CEB 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 LAST command. Note that if one of these commands fails because of a conversation-related error, the conversation remains in bracket. In such a case, the application program should execute a GDS RECEIVE command. However, GDS SEND LAST WAIT (with no data) always causes the conversation to be deallocated.
RETCODE(data-area)
specifies the 6-byte application data area into which return code information (shown in Table 1) is to be moved.
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
ensures that all data and indicators so far sent on a conversation are erased from the partner transaction.

If the WAIT option is not used, data from successive SEND commands is accumulated by CICS, together with any indicators, in an internal buffer. If the buffer becomes full, most of the accumulated data is transmitted to the remote system, but the accumulated indicators are not. Transmission of the accumulated data plus the indicators is forced by the WAIT or CONFIRM options of the GDS SEND command, or by a GDS WAIT command.

Table 1. GDS SEND return codes
RETCODE (hexadecimal) Description
03 00 CONVID is for a session that is not APPC.
03 00 CONVID is for a session that is in use by CPI Communications.
03 04 CONVID is for a conversation that is not basic.
03 08 A state check has occurred.
03 14 The CONFIRM option has been used on a sync level 0 conversation.
03 10 LL error (incorrect or incomplete).
04 CONVID is for a session that is not allocated to the task, or that is a relay link.
05 00 00 00 7F FF The FLENGTH value is outside the range 0 through 32 767.