The messages that can be sent to a console can be distinguished according to various criteria (see also section "Messages").
There are four mechanisms for controlling the output of messages:
NOINF function
Message suppression through filtering
Requesting messages using the message code
message suppression using the message code
None of the four mechanisms has any effect on console logging (CONSLOG function).
With regard to message suppression functions, there is a general principle that messages requiring a response cannot be suppressed.
Command | Meaning |
ADD-CONSOLE-FILTER | Suppress output of certain message groups or set console to the NOINF status |
ASR | Set console to the NOINF status |
MODIFY-MSG-SUBSCRIPTION | Order or cancel message subscription |
REMOVE-CONSOLE-FILTER | Remove filter levels set with ADD-CONSOLE-FILTER |
RESET-MSG-SUPPRESSION | Cancel suppression of message output |
SET-MSG-SUPPRESSION | Suppress the output of specific individual messages to a console or an authorized user program |
SHOW-CONSOLE-FILTER | Display filter level setting |
SHOW-MSG-SUBSCRIPTION | Display message subscription and suppression of messages which were not ordered |
SHOW-MSG-SUPPRESSION | Request information on message suppression |
OPR statement | Meaning |
SET-FILTER | Suppress output of certain message groups |
Table 43: Interface overview for controlling message output
The recipients of a message are determined as follows:
If it is a message directed to a specific console, this console is entered in the recipient list of the message.
If it is a message assigned via a routing code (i.e. undirected), all consoles which have this routing code are entered in the recipient list.
If it is an undirected message and not a query, and there are consoles which have requested the suppression of all undirected messages not explicitly ordered (with the command MODIFY-MSG-SUBSCRIPTION ..., DELIVER-OTHER-MSG=*NO or ASR NOINF), these consoles are removed from the recipient list.
If it is an undirected message and there are consoles which have requested the suppression of messages of a relevant weight and routing code (ADD-CONSOLE-FILTER command), these consoles are removed from the recipient list.
If it is an undirected message with a message code and is neither a question nor any other message marked as “unrequestable”, and if there are message orders (with the MODIFY-MSG-SUBSCRIPTION command) for the relevant message code (or parts of it), the consoles to which these message orders apply are entered in the recipient list.
If the message has a message code and is not a question, and if there are consoles which have requested the suppression of messages with this message code (SET-MSG-SUPPRESSION command), these consoles are removed from the recipient list.
The suppression of message output using the message code has the highest priority. A console can therefore order a group of messages with the MODIFY-MSG-SUBSCRIPTION command (e.g. all messages with message class NBR) and can exclude individual message codes from this group (e.g. NBR0740
) with the command SET-MSG-SUPPRESSION.
NOINF function
The ASR command can be used to place a console in the NOINF state. In this state, all messages which do not require a response (identified by % and to be distributed via a routing code) are suppressed.
The same effect can be achieved with the ADD-CONSOLE-FILTER command if all five filter levels are requested for all the routing codes for a console, or if the command MODIFY-MSG-SUBSCRIPTION DELIVER-OTHER-MSG=*NO is entered.
Message suppression through filtering
The ADD-CONSOLE-FILTER command or the SET-FILTER parameter service statement enables the operator to suppress the output of specific message groups by setting filter levels.
These are messages which do not require a response (identified by % and to be distributed via a routing code) and which have a weight code (i.e. they originate from a message file and were produced via the MSG7 or MSG7X macro).
Five filter levels can be specified. These are assigned to the “weight codes” of the messages as follows:
Weight Code | Filter level | Meaning |
up to 19 | 1 | Available to customers |
20 - 39 | 2 | Pure informational messages |
40 - 59 | 3 | Relatively important information messages |
60 - 79 | 4 | Important information messages |
80 - 99 | 5 | Very important information messages |
For example, if filter level 2 is activated, all messages with weight codes from 20 through 39 are suppressed.
The filter level setting can be displayed with the SHOW-CONSOLE-FILTER command. Filter levels set with the ADD-CONSOLE-FILTER command can be removed again with the REMOVE-CONSOLE-FILTER command; filter levels set with the SET-FILTER parameter service instruction cannot be canceled.
Which weight codes are assigned to the individual messages is described in the message files. Message files can be viewed using the MSGMAKER utility routine. Systems support can change the weight code of a message with the aid of MSGMAKER.
Requesting messages using the message code
It is possible for consoles to explicitly request messages using their message codes. Only these ordered messages are then output to the relevant console.
Messages are ordered via the MODIFY-MSG-SUBSCRIPTION command, in which either complete or abbreviated message codes can be specified.
The ADD-MSG-ID operand adds messages to the existing set of message requests, and the REMOVE-MSG-ID operand removes message orders from this set.
Another operand determines whether all messages to the console which have not been explicitly requested are to be suppressed. With DELIVER-OTHER-MSG=*NO, only the messages ordered with ADD-MSG-ID as well as questions and messages directed explicitly to this console are delivered (equivalent to the ASR NOINF function).
Message orders do not influence the delivery of the relevant messages to other consoles.
Commands for ordering messages can be entered on all types of console, i.e. on both physical and virtual consoles ($CONSOLE applications) and in interactive tasks with the OPERATING privilege.
On physical and virtual consoles, the commands influence message output on the console from which they were entered.
In interactive tasks with the OPERATING privilege, the commands affect a system event stream (see also "User task with the OPERATING privilege").
Message suppression using the message code
To suppress the output of specific messages to a console or an authorized user program the operator can use the SET-MSG-SUPPRESSION command. Message output of up to 1000 different message numbers can be suppressed.
The message must be associated with a number, i.e. it must originate from a message file and have been produced via the MSG7 or MSG7X macro. All message types that do not require a response (identified by %, + and !) can be suppressed.
Output of messages with a specified message number can be activated again by means of the RESET-MSG-SUPPRESSION command, and the SHOW-MSG-SUPPRESSION command can be used to list the arrangements in force.
This fine filtering which can be achieved by specifying the message numbers may be performed at all consoles and by all authorized user programs; however, arrangements for other consoles or user programs can only be made from the main console.
The message flow can be reduced at system initialization by specifying corresponding values for the OPR parameter within the BS2000 startup parameter file (see section "Configuration and suppressing the output of messages at consoles (OPR)").