IBM SC33-1686-02 Server User Manual


 
CMSG—message switching
$ is provided as the second character. (For
example, PROTECT=T causes a prefix of T$.)
If this option is omitted, a default prefix of ** is used. **
is also the default for user application programs issuing
BMS message requests where no protection is specified
(REQID option omitted).
A temporary-storage table (TST) entry is needed for
each prefix specified in the PROTECT option so that
message recovery is effective for that prefix.
ROUTE
specifies the destinations to receive the message. For
routing messages to 3600, 3770 (batch), or 3790 (batch)
terminals, see “Examples of 3600 and 3770 batch
destinations” on page 240.
Termid
is the identifier or identifiers of the terminals to
which the message is to be routed. For example,
ROUTE=(LA04,OL,SF2) routes the message to the
three terminals with the identifiers LA04, OL, and
SF2. If routing is performed to several terminals of
the same device and map suffixes, CICS processes
the message identically for all of them and the most
restricting page size prevailing is used.
The length of the terminal identifier specified in a
message-switching transaction must be in the range
1–4 characters, and must not contain any of the
following characters:
/ slash
, comma
) right parenthesis
( left parenthesis
+ plus sign
minus sign
* asterisk
blank.
Note: A single message can be delivered more
than once to the same terminal. For
example, the instruction
ROUTE=(T001,T001) causes two
transmissions of a single message to
terminal T001. If the destination terminal is
in TRANSCEIVE status, the message
appears consecutively at the terminal. If the
terminal is in TRANSACTION status, the
operator must request delivery of the
message.
/opid
is a 1-to 3-character operator identifier preceded by
a slash. The message is routed to the first terminal
at which an operator with that identifier is currently
signed on. For example, ROUTE=/PJ routes the
message to the first terminal found (and only the
first) with the operator identifier PJ currently signed
on. If no such terminal is found, the sending
operator is notified. The operator identifier that you
specify must not contain any of the following
characters:
, comma
) right parenthesis
space.
Termid/opid
is a terminal identifier qualified by an operator
identifier to restrict the message delivery to the
specified operator at the terminal location. For
example, ROUTE=(LA04,OL/LBS,SF2) routes the
message to terminals LA04 and SF2. The message
is routed to terminal OL only if the operator whose
identifier is LBS is signed on at that terminal.
ROUTE=(T001,T001/OP1,/OP1) causes the same
message to be delivered three times to the same
destination if the operator OP1 is signed on at T001.
ALL
causes the message to be broadcast to all
terminals.
There is a variable limit on the number of terminals
to which a message can be sent. This limit depends
on a combination of factors. Significant factors are
the types of terminal in use, the number of each
type, and the length of message sent. The CMSG
transaction is abended with an abend code of
ABMC if the limit is exceeded.
Note: If a CMSG ROUTE=ALL is issued to a large
number of terminals, a task for each terminal
is initiated up to the MAXTASK value.
Because the tasks are single threaded, they
are suspended and can give rise to an SOS
condition. For guidance about avoiding this,
see the
CICS Performance Guide
.
.termlist
is a 1-or 2-character terminal list table (TLT) suffix
preceded by a period. For example, .H3 identifies
the terminal list table DFHTLTH3. A maximum of 10
terminal lists can be specified, and the terminal lists
that you specify are merged together. The entries in
the terminal lists contain terminal identifiers, or
operator identifiers, or both. Duplicate entries within
a single TLT are kept, though entries that are
duplicated among the lists are deleted. (Entries are
considered duplicate if each has the same terminal
identifier and operator identifier.)
Here are two examples that show the effects of
merging TLTs that contain duplicate entries. For
these examples, assume that terminal list table
DFHTLTL1 contains T001 twice, and that
DFHTLTL2 contains T001 and T001/OP1.
Chapter 19. Message switching CMSG 237