HALTMSG
Purpose
You can use the HALTMSG command to respond to a message by changing the status of an application to HALTED. HALTMSG calls the ISSUEACT command to also issue commands and replies that are defined in the automation policy for the ID of the processed message and for the HALTED status.
Typically, HALTMSG is called from the NetView automation table.
Syntax
Parameters
- JOBNAME
- The name of the job that the message is for. If not specified, the job name is taken from the message's job name field. You must supply a value for the job name if you are calling HALTMSG from a CLIST.
- MSGTYPE
- This parameter is used to search for command and reply entries
to subsystem/msgtype-pairs in the automation control file, where subsystem is
the subsystem name derived from the job name.
When a match occurs, the commands that are associated with the entries are issued. This is in addition to the command entries that are associated with the ENTRY-TYPE pair subsystem/HALTED.
If parameter MSGTYPE is not specified, the message identifier of the message that HALTMSG is called for is taken as the default.
- EHKVAR
- This parameter determines whether the tokens of the parsed message
text are to be stored in task global variables EHKVAR0 through EHKVAR9
and EHKVART.
- YES
- The tokens of the triggering message are to be assigned to the task global variables EHKVARn.
- NO
- No values are to be assigned to the task global variables EHKVARn.
- REPLY
- This parameter determines whether a defined reply is issued
for a message that HALTMSG has been called for.
- YES
- A defined reply in the automation policy for the message that is being handled by HALTMSG is issued. REPLY=YES is assumed as the default if the message is a WTOR, otherwise the default is REPLY=NO.
- NO
- A defined reply for a WTOR being handled by HALTMSG is not issued.
- PASSES
- Specifies whether passes are used to issue commands or replies
(or both) that have been defined in the automation policy.
- YES
- PASSES=YES is passed to the ISSUEACT command.
- NO
- PASSES=NO is passed to the ISSUEACT command.
- CODE1=code1
- CODE2=code2
- CODE3=code3
- These parameters are passed to the ISSUEACT command, where they are used to select defined commands and replies via code entries.
Restrictions and Limitations
- If HALTMSG is driven by a delete operator message, no action is taken in response to this message.
- HALTMSG will not affect an application that is being shut down.
- HALTMSG will not affect an application that is not in UP status.
- The application status is updated and the relevant commands are issued each time HALTMSG is run.
- Defined commands and replies are only issued in response to a message or a status change, if the recovery flag of the related minor resources of the application allows automation.
- If this command is called on a task other than the AOFWRKnn auto operator that is responsible for the subsystem, HALTMSG will schedule itself to that AOFWRKnn auto operator. The HALTMSG command will run asynchronously to the calling procedure. This means that when the calling procedure regains control, the status of the subsystem may not yet have changed.
- Only messages for applications with known address space IDs are
processed by HALTMSG.
The address space ID is not checked if HALTMSG is called from an automation procedure (CLIST), or if HALTMSG has been triggered by message BPXF024I.
- If commands or replies are defined for the triggering message, the triggering message is automatically captured by ISSUEACT (see ISSUEACT (ISSUECMD, ISSUEREP)). If not, HALTMSG captures the triggering message with a default severity of UNUSUAL. The default severity can be overridden using the code definitions under pseudo-message ID CAPMSGS. Under CODE2, specify MVSESA for messages with SYSTEMMSG=YES, or otherwise, the subsystem's jobname. The severity used is the content of Value Returned of the first row that matches in the code definitions table. CODE3 is not considered. To avoid message capturing, set Value Returned to *IGNORE*.
Usage
You should normally call the HALTMSG command from the NetView automation table.
Applications can be put into HALTED status when something occurs that leaves them running with reduced function. Use HALTMSG to put an application into HALTED status, and ACTIVMSG (or the SETSTATE command dialog) to change the status.
If HALTMSG is called for a WTOR and it is not replied to, OUTREP is called to process the WTOR.
HALTMSG should run on the working operator of the subsystem that issued the message. Otherwise, the HALTMSG command will run asynchronously to the calling procedure. This means that when the calling procedure regains control, the status of the affected subsystem may not yet have changed.
All commands and replies that are triggered through HALTMSG have access to the SAFE called AOFMSAFE, which stores the message that caused the HALTMSG call.
Task Global Variables
- EHKVAR0 through EHKVAR9 and EHKVART
- When defining the commands in the automation control file to be issued by command HALTMSG, the variables &EHKVAR0 through &EHKVAR9 and &EHKVART can be used to be substituted by the tokens of the parsed message that has driven HALTMSG. &EHKVAR0 will be substituted by the message ID, &EHKVAR1 by the first token of the message text after the message ID, &EHKVAR2 with the second token and so forth. &EHKVART will be substituted by the trailing message text after the 9th token.
Examples
The following example shows how HALTMSG is called from the NetView automation table:
* IKT008I TCAS NOT ACCEPTING LOGONS
IF MSGID = 'IKT008I' & DOMAINID = %AOFDOM% THEN
EXEC( CMD('HALTMSG')
ROUTE(ONE %AOFOPGSSOPER%));
