Message Processing Information

Table 1. Message Processing Information
Function or Variable Description
ACTIONDL()

&ACTIONDL

Returns the reason for which the NetView® program deleted the associated message, which is one of the following values:
(null)
The message is not being deleted.
LOCAL
The message was deleted by operator overstrike of the CONSOLE DELETE stage.
NETVIEW
The message was deleted using the NetView DOM NVDELID or CURMSG options, or by the NetView program.
SMSGID
The message was deleted by MVS™ DOM using SMSGID.
TOKEN
The message was deleted by MVS DOM using TOKEN.
TCB
The message was deleted by MVS DOM for task end.
ASID
The message was deleted by MVS DOM for address end space.
INVALID
The message has a combination of control flag settings that are not valid.
ACTIONMG()

&ACTIONMG

Returns a 1 if the message is an action message. Otherwise it returns a 0.
AREAID()

&AREAID

Returns a 1-letter (A - Z) identifier for the area on the multiple console support console panel that displays the message.
ATTNID()

&ATTNID

Returns the VSE attention identifier ID. A plus sign (+) indicates that a reply is required for this message immediately. A minus sign (-) indicates that a reply is required for this message.

This function has a value if the message is from a VSE system, but null for non-VSE messages.

AUTOTOKE()

&AUTOTOKE

Returns the 1 - 8 character name of the MVS message processing facility (MPF) automation token.
Note: If you have specified AUTO(YES) or AUTO(NO) in the MPF table, the values YES and NO are not automation tokens.
DESC()

&DESC

Returns the MVS DESCriptor codes as a series of 16 on (1) and off (0) EBCDIC characters representing the bits in order. Refer to the MVS library for information about code values.
EVENT() The NetView event that satisfied the WAIT instruction is determined by the value of the REXX EVENT() function. The REXX command list can use the EVENT() function to set a variable and take appropriate action based on the set value. The following returned values from the EVENT() function are possible:
M
The message for which the command list is waiting has arrived. The message can be read using the MSGREAD instruction.
T
The time period for which the command list was waiting has expired, and processing is resumed.
G
You entered the GO command, and processing is resumed.
E
You did not code the WAIT or TRAP instructions correctly. For example, you entered the operands in the incorrect order or issued a WAIT for messages instruction without a matching TRAP instruction. The command list resumes processing.
X
A PERSIST TRAP for additional data is active and the PERSIST has completed.

If you do not issue a WAIT instruction in a command list, the value of the EVENT() function is replaced with a value of null.

HDRMTYPE()

&HDRMTYPE

Specifies the 1-character NetView buffer type of the received message or MSU. Buffer types are described in IBM Z® NetView Programming: Assembler.
IFRAUGMT()

&IFRAUGMT

Returns the UTC mean time when the automation internal function request (AIFR) was created. The variable IFRAUGMT is returned as an 8-byte hexadecimal value in store clock format.
IFRAUIND()

&IFRAUIND

Returns 2 bytes of indicator bits as a series of 16 on (1) and off (0) EBCDIC characters representing the bits in order. This data is mapped in DSIIFR. The following bit positions are valid:
 1
MVS system information attached (WQE data).
 5
Message from NetView PPT.
 6
Message received cross-domain.
11
Message was PRI routed by ASSIGN command.
12
Message was SEC routed by ASSIGN command.
13
Message was COPY routed by ASSIGN command.
14
Message was routed to authorized receiver.
15
The message was revised by the NetView message revision table.
16
Message was unsolicited.
Note:
  1. Other bits can be tested, but have no defined use. All the bits are defined in the DSIIFR mapping control blocks. For more information, refer to IBM Z NetView Programming: Assembler.
  2. Messages with the unsolicited flag on are eligible for ASSIGN PRI and SEC routing.
  3. This field indicates the AIFR indicator fields IFRAUIND and IFRAUIN2.
  4. MVS system messages routed to any task except the subsystem router CNMCSSIR are considered solicited messages.
  5. For more information about solicited and unsolicited messages, refer to the IBM Z NetView Automation Guide.
IFRAUIN3()

&IFRAUIN3

Returns 1 byte of indicator bits as a series of eight on (1) and off (0) EBCDIC characters representing the bits in order. This data is mapped in DSIIFR. The following bit positions and meanings are valid:
1-2
00 = Default priority
01 = Low priority
10 = High priority
11 = Test the receiver for priority
  3
VM PMX
IFRAUI3X()

&IFRAUI3X

Returns a 32-byte string of '1' and 0' values corresponding to control flags in the IFRAUI3X word of the DSIIFR. The first 8 bits are the same as IFRAUIN3, allowing all 32 bits to be accessed at once.
IFRAUSB2()

&IFRAUSB2

Returns a 2-byte user field in DSIIFR as a string of 2 characters.
Note:
  1. This function is null if the field is all blanks or binary zeros in any combination.
  2. IFRAUSB2 and IFRAUSRB refer to the same user field, but return the value in different formats.
IFRAUSC2()

&IFRAUSC2

Returns a 16-byte user field in DSIIFR as a series of 128 on (1) and off (0) EBCDIC characters representing the bits in order.
Note: IFRAUSC2 and IFRAUSRC refer to the same user field, but return the value in different formats.
IFRAUSDR()

&IFRAUSDR

Returns the 1 - 8 character name of the originating NetView task.
IFRAUSRB()

&IFRAUSRB

Returns a 2-byte user field in DSIIFR as a series of 16 on (1) and off (0) EBCDIC characters representing the bits in order.
Note: IFRAUSRB and IFRAUSB2 refer to the same user field, but return the value in different formats.
IFRAUSRC()

&IFRAUSRC

Returns a 16-byte user field in DSIIFR as a string of 16 characters.
Note:
  1. This function is null if the field is all blanks or binary zeros in any combination.
  2. IFRAUSRC and IFRAUSC2 refer to the same user field, but return the value in different formats.
IFRAUTA1()

&IFRAUTA1

Returns 6 bytes of indicator bits as a series of 48 on (1) and off (0) EBCDIC characters representing the bits in order. IFRAUTA1 enables checking of control information. The following bit positions are valid:
1, 2, 25
HOLD action.
5, 6, 26
SYSLOG action.
7, 8, 27
NETLOG action.
9, 10, 28
HCYLOG action.
11, 12, 29
DISPLAY action.
13, 14, 30
BEEP action.
16
Command echo
20
Message from MVS.
23
VSE format message.
24
Action message.
47
Automation vector extensions exist.
48
Presentation vectors exist in data buffers.
Note:
  1. Other bits can be tested but have no defined use.
  2. Refer to the description of DSIIFR fields IFRAUTA1 through IFRAUTA6 in IBM Z NetView Programming: Assembler.
IFRAUWF1()

&IFRAUWF1

Returns 4-byte MVS-specific WTO information as a series of 32 on (1) and off (0) EBCDIC characters representing the bits in order. The following specific bit positions with defined uses are valid:
 6
Message is a WTOR.
 7
Message is suppressed.
 8
Broadcast to all.
 9
Display JOBNAMES.
10
Display STATUS.
14
DISPLAY SESSION.
Note: Other bits can be tested but have no defined use. MLWTO flags in this area also have no defined use. MLWTO indicators are moved into the data buffers.
JOBNAME()

&JOBNAME

Returns the 1 - 8 character MVS job name identifier. Because JOBNAME is the name of the job that originated the message, it might not always be the same as the name of the job to which the message is referring. For example, the job names might be different when MVS issues a message about the NetView job. Also, JOBNAME can contain the name of an initiator (instead of the actual job name) when a job is started or stopped. If the message is issued during startup or stopping, extract the job name from the message text rather than using the JOBNAME function.

The same information is available using MSGCOJBN.

JOBNUM()

&JOBNUM

Returns the 8-character MVS job number identifier.
Note: The MVS job identifier might contain embedded blanks.
KEY()

&KEY

Returns the 8-character retrieval key associated with the message.
LINETYPE()

&LINETYPE

Returns the following multiline write-to-operator (MLWTO) line type or MSU data buffer type:
C
Message control line.
L
Message label line.
D
Message data line.
DE
Last message data line.
E
The line is the last message line and contains no data.
H
The line is the HIER data buffer type.
M
The line is the MSU data buffer type.
blank
The message is a single-line message.
null
No message or MSU data buffer is associated with this command list.
MCSFLAG()

&MCSFLAG

Returns the system message flags in a series of eight on (1) and off (0) EBCDIC characters representing the bits in order. The following bit positions and meanings are valid:
1
Send message conditionally to console SYSCONID.
2
Send message unconditionally to console SYSCONID.
3
RESP.
4
REPLY.
5
BRDCST.
6
HRDCPY only.
7
NOTIME.
8
NOCPY.
Note:
  1. This function does not return the same mapping of multiple console support flags as the automation table compare item.
  2. Setting MCSFLAG='00000000' is valid. It overrides MCSFLAG set by an incoming WTO.
MSGASID()

&MSGASID

Returns the MVS system address space identifier from which the message was issued. The value of MSGASID is a 1–5 digit decimal number.
Note: This value is null for messages that do not come from an MVS address space.
MSGAUTH()

&MSGAUTH

Returns the 2-character value indicating whether the message was issued from an authorized program.
00
WTO message is not from MVS.
10
WTO is from an unauthorized program.
11
WTO is from an authorized program.
MSGCATTR()

&MSGCATTR

Returns the 16-bit MVS message attribute flags as a series of on (1) and off (0) EBCDIC characters representing the bits in order. The following bit positions and meanings are valid:
1
Message is suppressed.
2
Message is a command response.
3
Message issued by authorized program.
4
Message is to be retained by Automation Message Retention Facility (AMRF).
Note: Other bits can be tested but have no defined use.
MSGCMISC()

&MSGCMISC

Returns the 8-bit MVS miscellaneous routing flags as a series of on (1) and off (0) EBCDIC characters representing the bits in order. The following bit positions and meanings are valid:
1
Display UD (undeliverable) messages.
2
Display only UD messages.
3
Queue by ID only.
4
Indicates whether the message has been marked in the message processing facility (MPF) table as eligible for NetView automation.
Note:
  1. The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
  2. Other bits can be tested but have no defined use.
MSGCMLVL()

&MSGCMLVL

Returns the 16-bit MVS message level flags as a series of on (1) and off (0) EBCDIC characters representing the bits in order. The following bit positions and meanings are valid:
1
WTOR
2
Immediate action
3
Critical eventual action
4
Eventual action
5
Informational
6
Broadcast
Note: Other bits can be tested but have no defined use.
MSGCMSGT()

&MSGCMSGT

Returns the 16-bit MVS message type flags as a series of on (1) and off (0) EBCDIC characters representing the bits in order. The following bit positions and meanings are valid:
1
Display job names
2
Display status
3
Monitor active
6
Monitor SESS
Note:
  1. The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
  2. Other bits can be tested but have no defined use.
MSGCNT()

&MSGCNT

REXX

Returns the number of items in the message string of the current message (see Working with Messages for information about current message).

NetView Command List Language

Returns the number of words in a message string.

See Control and Parameter Variables Used with &WAIT for more information about using control variables with &WAIT.

MSGCOJBN()

&MSGCOJBN

Returns the 1 - 8 character originating job name. (The same information is available using JOBNAME.)
MSGCPROD()

&MSGCPROD

Returns the 16-character MVS product level. The characters are defined in the following way:
  • The first 4 characters represent an MVS control point object version level.
  • The next 4 characters represent the control program name (MVS).
  • The last 8 characters represent the function modification identifier (FMID) of the originating system.
Note: The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
MSGCSPLX()

&MSGCSPLX

Returns the 1- 8 character name of the MVS SYSPLEX where the received message originated.
Note: The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
MSGCSYID()

&MSGCSYID

Returns the 1 - 3 digit decimal number system identification for DOM.
Note: The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
MSGDOMFL()

&MSGDOMFL

Returns the 8-bit MVS DOM flags as a series of on (1) and off (0) EBCDIC characters representing the bits in order. The following bit positions and meanings are valid:
1
DOM by message ID
2
DOM by system ID
3
DOM by ASID
4
DOM by job step TCB
5
DOM by token
Note: The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
MSGGBGPA()

&MSGGBGPA

Returns the 4-byte hexadecimal background presentation attributes. The following bytes and descriptions are valid:
1
Background control field
2
Background color field
3
Background highlighting field
4
Background intensity field.

Use one of the following forms to check for hexadecimal values:

REXX
  IF MSGGBGPA() = '12345678'X THEN ...
NetView Command List Language
  &IF &MSGGBGPA = X'12345678' &THEN ...
Note: The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
MSGGDATE()

&MSGGDATE

Returns the message date in a 7-character format of yyyyddd, where yyyy is the year and ddd indicates a calendar day.
Note: This is not necessarily the current date. It might be the date with which MVS associates the message as having been issued.
MSGGFGPA()

&MSGGFGPA

Returns the 4-byte hexadecimal foreground presentation attributes. The following bytes and meanings are valid:
1
Foreground control field
2
Foreground color field
3
Foreground highlighting field
4
Foreground intensity field

You can use one of the following forms to check for hexadecimal values:

REXX
  IF MSGGFGPA() = '12345678'X THEN ...
NetView Command List Language
  &IF &MSGGFGPA = X'12345678' &THEN ...
Note: The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
MSGGMFLG()

&MSGGMFLG

Returns the 16-bit MVS general message flags. The following bit positions and meanings are valid:
1
DOM (delete operator message)
Note: The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
MSGGMID()

&MSGGMID

Returns the 4-character hexadecimal value MVS message identifier field.
MSGGSEQ()

&MSGGSEQ

Returns the 1 - 8 character numeric decimal sequence number. This function represents the last three bytes of MSGGMID.
MSGGSYID()

&MSGGSYID

Returns the 1 - 3 character numeric decimal system identification. This is the first byte of MSGGMID.
MSGGTIME()

&MSGGTIME

Returns an 11-character (including periods) time in the form hh.mm.ss.th, where hh is the hours, mm is the minutes, ss is the seconds, and th is tenths and hundredths of seconds.
MSGID()

&MSGID

REXX

Returns the message identifier of the current message (see Working with Messages for a definition of current message.) This is the first token, where tokens are determined by blanks. A reply ID, if present, is ignored. If a reply ID is sent with the message, it is not used as the first token. For a multiline write-to-operator (MLWTO) message, MSGID uses the first token of the first line of the message. When an MSU buffer is being processed, MSGID is equal to null ('').

Note: For messages received over the VM PROP/PMX interface, MSGID cannot be set to the actual message identifier because of information added to the front of the message.
NetView Command List Language

The difference from REXX is that &MSGID is used in NetView automation with &WAIT.

MSGITEM(n)

&MSGITEM

REXX
Returns an item from the current message (Working with Messages contains additional information about current message.) The first blank-delimited string after a reply ID (if one exists) is considered the message ID, and also item 0. After the message ID, the following parsing for items 1 through MSGCNT() is performed:
  • Strings can be delimited by either blanks or commas.
  • A string beginning with a single quotation mark preceded by a blank or comma, and ending with a single quotation mark followed by a blank or comma, is considered a quoted string, and is treated as a single item, which does not include the surrounding quotation marks.
  • Every other delimited string that is not in a quoted string is treated as a single item.
  • Delimiters that are not within quoted strings are not part of any item.
MSGITEM can return strings longer than 255.
MSGORIGN()

&MSGORIGIN

REXX

Returns the domain where the last message read by MSGREAD originated. MSGORIGN() is used for NetView automation with MSGREAD.

Refer to the NetView online help for more information about using functions with MSGREAD.

NetView Command List Language

Specifies the domain where the message originated. &MSGORIGIN is used in NetView automation with &WAIT.

See Automation Resource Management for more information about NetView automation.

See Control and Parameter Variables Used with &WAIT for more information about using control variables with &WAIT.

Note: The NetView command list language and REXX versions of this command are spelled slightly differently; be sure to use the correct spelling when writing your command list.
MSGSRCNM()

&MSGSRCNM

Returns the 1 - 17 character source object name. This source name is an identifier from the source object that was provided by either the DSIMMDBS or CNMPMDB application programming interface (API) call.

For more information about DSIMMDBS, refer to IBM Z NetView Programming: Assembler. For more information about CNMPMDB, refer to IBM Z NetView Programming: PL/I and C.

The source name is selected from the source object by the following rules:
  • The first nickname, if any
  • The first network identifier concatenated to a network addressable unit (NAU) name, with a period (.) between, if both exist in sequence
  • The first NAU name, if it exists
  • The string N/A if none of the other names in this list are specified in the source object
  • Null, if no source object exists

For more information about how the source object is defined, refer to the DSIAIFRO mapping in IBM Z NetView Programming: Assembler.

Note: The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
MSGSTR()

&MSGSTR

REXX

Returns the message text of the current message (see Working with Messages for information about current message). MSGSTR() does not include the message identifier—the token used by the MSGID() function. For a multiline write-to-operator (MLWTO) message, MSGSTR() becomes the message text of the first line of the message.

NetView Command List Language

Is the message text of the message most recently received by NetView. &MSGSTR does not include the message identifier (the token used by the &MSGID control variable). &MSGSTR is used with &WAIT.

See Control and Parameter Variables Used with &WAIT for more information about using control variables with &WAIT.

MSGTOKEN()

&MSGTOKEN

Returns a 1 - 10 digit decimal number that indicates the token associated with the message.
Note: You can use a TOKEN value to group WTOs by setting MSGTOKEN before issuing the WTO command. Later, these messages can be deleted using a single DOM command by specifying the token value in MSGTOKEN.
MSGTSTMP()

&MSGTSTMP

Returns the message time stamp. The value of this field is the time when the NetView message buffer was created. The field is a 6-character string in the form of hhmmss, where:
hh
Hours
mm
Minutes
ss
Seconds
MSGVAR(n)
Note: The use of MSGVAR is supported for compatibility purposes. Use MSGITEM because the MSGVAR(n) functions do not return data relevant to the current message as described in Working with Messages. Use the MSGITEM(n) functions to return current message information.
Returns the text of a message. The NetView program changes the values of the MSGVAR(1) through MSGVAR(31) functions to reflect the text of the message.
Note: MSGVAR(1) through MSGVAR(31) are equivalent to the NetView command list language variables &1–&31.

Each MSGVAR(n) function is set to a token of the last message read by MSGREAD. MSGVAR(1) is set to the token following the message identifier—the token used by the MSGID() function. MSGVAR(2) is set to the next token to the right of MSGVAR(1), and so on, up to a maximum of 31 variables. MSGVAR(n) is used for NetView automation with MSGREAD.

Refer to the NetView online help for more information about using functions with MSGREAD.

The MSGVAR(n) functions can be given values when a command list is called in the same way as are the &1–&31 NetView command list language parameter variables.

MSGTYP()

&MSGTYP

Returns the system message type as a series of three on (1) and off (0) EBCDIC characters representing the bits in order. An on character (1) in one of the positions corresponds to the following values:
1
SESS — Corresponds to IFRAUWF1(14)
2
JOBNAMES — Corresponds to IFRAUWF1(9)
3
STATUS — Corresponds to IFRAUWF1(10)
MVSRTAIN()

&MVSRTAIN

In the automation table, a 3-bit field describing MVS retain characteristics of the message.
Note: The 3 flags correspond to 3 flags defined in the MVS WQE control block when NetView is using the SSI interface, and corresponds to 3 similar flags in the MDB when running in Extended Console Mode. The exact meaning and use of the flags is a property of the operating system.

&MVSRTAIN in NetView command list language is a 3-bit field describing MVS retain characteristics of the message.

NVDELID()

&NVDELID

Returns the 24-character NetView deletion identifier for a message. You can remove the message from the held queue for all tasks in the NetView program using the NetView DOM NVDELID command. This is the NetView equivalent of the MVS DOM function, but is used for messages that are not MVS WTOs or WTORs.
PRTY()

&PRTY

Returns the priority of the message as set by the originator. This field is a 1–5 digit decimal number. The NetView program does not use this field when processing the message.
Note: The value is useful only for solicited messages. Examine bit 16 of the ifrauind() function to verify that the current message is solicited before using this function.
REPLYID()

&REPLYID

Returns the reply identifier for WTORs. This field has a maximum length of 8 characters.

For messages from VSE systems, the REPLYID is the last three characters of the 6-character message prefix. The three returned characters are the message reply ID only if the sending system uses those characters to designate a reply ID for a message.

ROUTCDE()

&ROUTCDE

Returns the MVS routing code or codes assigned to the message. The value of the field is a series of on (1) and off (0) EBCDIC characters representing the bits in order. The maximum number of ROUTCDEs assigned to a message is 128.
Note:
  1. After the first 16 bits, the number of characters returned in ROUTCDE is the lowest multiple of 8 that contains one or more on (1) characters. Therefore, compare against a specific substring of ROUTCDE rather than against the entire string.

    For example, if only bit 17 is turned on, a string of 16 zeros, a 1, and 7 more zeros are returned (000000000000000010000000). One method to test for bit 17 being on is shown in the REXX example in Figure 1.

    The functionally equivalent code written in NetView command list language is shown in Figure 2.

  2. Another method to check for a specific bit is to use the REXX environment POS (position) function, as shown in Figure 3.
  3. For details on using the REXX POS function, refer to the REXX library.
SESSID()

&SESSID

Returns the 1 - 8 character ID of the TAF (terminal access facility) session that sent the message.

See Automation Resource Management for more information about NetView automation.

Note: If TAF session is started with a SESSID equal to the domain ID, SESSID is set unpredictably and might give unpredictable results. If the current message originated from a PPI receiver pipe stage, SESSID shows the SAF ID.
SMSGID()

&SMSGID

Returns a 1 - 10 character decimal number that identifies a particular instance of a message. This function can be used by the DOM command to identify action messages to be removed from the display. Refer to the NetView online help for more information about DOM.

This field contains the same information as MSGGMID, except that SMSGID is returned as a decimal number and MSGGMID is returned as a hexadecimal value.

SYSCONID()

&SYSCONID

Returns the MVS system console name associated with the message. System console names are 2 - 8 characters in length.
Note: In the command revision environment, returns the console name under which the command was issued.
SYSID()

&SYSID

Returns the 1-8 character identifier of the MVS system from which a message arrived.
Note: In the command revision environment, returns the system identifier under which the command was issued.
WTO.REPLY

&WTOREPLY

Returns an operator reply to a WTOR.
REXX

The REXX version is not a function. It is a local variable and therefore does not have parentheses on the end.