Output messages

Output messages from IMS can be one of several different types.

The different types of output messages from IMS include:
  • Data replies to recoverable or irrecoverable input transactions
  • Data replies to IMS commands
  • Message switches
  • VTAM® indicators
  • IMS system messages
  • Broadcast messages
  • A null (length=0) message containing end-bracket to return the workstation to between-brackets and to a contention state
All messages from IMS to a workstation are sent in a single transmission unless:
  • The MPP, a message switch, a command, or MFS provides a multi-segment output message.
  • The workstation's read buffer is too small to hold the single-segment output message provided by the MPP or MFS.
  • A broadcast message is multi-segment.

Each segment of a message is sent in a single transmission whenever possible, that is, when only-in-chain is indicated. However, if a message segment exceeds the size of the receiving workstation read buffer, the segment is divided into as many transmissions as required until the complete segment is sent. Multi-segment output messages are handled like chained input messages: Each segment is identified appropriately as first-in-chain, middle-in-chain, or last-in-chain.

Exercise care when defining the sizes for IMS message queue data sets and workstation output buffers. Incorrect specification can result in multi-segment output chains from IMS. Output buffer sizes that are too small can result in multiple transmissions for large IMS segments. Message queue data set sizes that are too small can result in multiple IMS segments being created for large message processing program (MPP) inserts.

Related reading: For information on the MSGQUEUE and TERMINAL macros, see IMS Version 15.3 System Definition.

Definition: MFS-paged output is each physical page of a message destined for a display device and sent as if it were a complete message.

The following figure shows the relationship between transmissions sent to IMS, segments produced by the MPP, and segments transmitted by IMS.

Figure 1. Chained message interaction between a Finance Communication system and an IMS MPP
A controller sends four segments to IMS. IMS passes these to an MPP with GU and GN. The MPP returns three segments with ISRT. IMS passes these to the controller, breaking a large segment in two.

After successfully receiving a message, the SLU P system must interrogate the read-type field (SMSCRT), the read-flags field (SMSCRF), and, optionally, the read-flags field extension (SMSCRE) to determine the type and characteristics of the message received.

Related reading: For more information on these fields, see IBM® 4700 Finance Communication System: Controller Programming Library, Volume 3: Communication Program.

If a non-MFS-formatted output segment is sent in multiple transmissions and the SCAN option is defined for that workstation, IMS does not allow a 4701/4702 device's select control, position-control, or write-control sequence to be split across transmissions. When transparent write-control sequences are split into two transmissions, the data length on the first transmission is modified, and the proper write control characters are inserted at the beginning of the second transmission.

Editing for device control sequences does not occur for non-MFS-formatted output if the NOSCAN option is specified during IMS system definition or on an ETO logon descriptor. If MFS formats the output segment, the device-control sequence (select and position) editing always occurs. Each transmission of the segment, except the last, ends in a three-character, null-horizontal-position sequence to suppress the automatic new-line function of the physical SLU P system output device.