Output messages sent while in a between-brackets state
If an IMS output message is sent while the workstation is not protected from output and in a between-brackets state, IMS sends one of two things.
- The message with both the begin- and end-bracket (that is, bids for bracket with data) if the workstation is defined with the NOBID option
- The BID command to request permission to begin a bracket if the workstation is defined with the BID option.
A workstation can accept the bracket with any requested DR1 or DR2. A DR1 to the bid causes IMS to send the output message with both begin- and end-brackets.
A workstation can reject the bracket with an appropriate exception DR1 or DR2.
When a workstation is ready for output after rejecting a bracket, it sends the ready-to-receive (RTR) command to request output from IMS.
The following steps show how IMS handles output for a workstation that is in terminal-response mode and that is defined with the BID option when the session is between-brackets:
- When IMS receives a message switch for a workstation defined with the BID option, IMS places the message in the output queue.
- After removing the workstation from terminal-response mode, IMS sends a BID command to notify the workstation that output is pending while between-brackets. IMS requests a DR1 response to the BID command.
- The workstation returns the DR1 response if it is ready to receive the output.
- IMS sends the output when it receives the DR1.
- The workstation returns a DR2 response, if requested.
- If the workstation is not ready to receive the output, it returns
an exception DR1 response indicating
bid rejected
. If the output is recoverable, IMS returns the message to the queue and waits until the workstation indicates it is ready to accept the output. If the exception response indicatesRTR will not follow
and the output is nonrecoverable, IMS discards it. If the exception response indicatesRTR will follow,
IMS returns the message to the queue (regardless of recoverability) and waits for a VTAM® ready-to-receive (RTR) command. - When the workstation is ready to receive the output, the workstation sends the VTAM RTR command and requests a DR1 response.
- If the output message that caused the bid is still available, IMS returns the DR1 response, followed by the output message.
- The workstation returns a DR2 response (12).
While IMS waits for the RTR command from the workstation, the workstation can perform any type of processing desired. IMS accepts and responds to transactions during this time, but does not transmit any unsolicited output until it receives the RTR command.
If IMS no longer has output available to send when the workstation sends RTR (perhaps because of an intervening /ASSIGN or /DEQUEUE command), or if the data was irrecoverable and IMS discarded it, IMS returns an exception DR1 response and an error message indicating no output is available.