Previous Topic: How to Specify and Store ActionsNext Topic: Complex Actions


Action Clauses

Review the eight possible action clauses:

CLIST("cmdname prm1,prm2,…")

Uses %CMDNAME to send the specified CLIST command and optional arguments to the CLIST interpreter. The command runs on a server task level, so the CLIST script is permitted to execute commands that run for a long period. The CLIST script must exist in either the SYSPROC or SYSEXEC concatenation.

Note: The CLIST clause is included for compatibility. For new code, use TSOCMD to invoke OPS/REXX programs.

Example: CLIST("STARTDB2") runs a CLIST named STARTDB2.

EVRULE("rulename prm1,prm2,…")

Dispatches an AOF request rule and waits for the rule to complete. EVRULE is the same as RULE, except that the return code from the request rule is checked. If the return code is 500 or higher, then any clauses following the EVRULE are not executed. The return code that is checked is set on the return statement in the request rule.

WARNING! The rule that this action triggers executes to its conclusion before control returns to the action. To avoid slow response time from the SSM engine, avoid logic that could create lengthy wait times.

Example: EVRULE("SSMRECYCLE &NAME");MVSCMD("START &JOBNAME") dispatches the SSMDOWN rule and check the return code from the rule. If the return code is equal to or greater than 500, then action processing is terminated without executing the MVSCMD clause.

MVSCMD("mvs command text")

Issues a z/OS command and does not wait for output. The name of the console that is used to execute the command is specified in the OCCONSOLENAME parameter.

Example: MVSCMD("START &JOBNAME,SUB=MSTR") issues a start command and does not return results.

PROCESS("event1,event2,…")

Used only in a process event action. Usually, it should be used in the SELECT process event action, but there could be valid uses for a process clause in other global events actions. For example, it could be used to suppress an event that was enabled earlier in the processing of the resource state change event.

Process tells the SSM engine which process events to dispatch as SSM processes a resource state change. For an explanation of process events, see Process Events in this chapter.

Example: PROCESS("MATCH,MPREREQ") enables the MATCH and MPREREQ events for the current resource.

RULE("rulename prm1,prm2,…")

Dispatches an AOF request rule and waits for the rule to complete.

WARNING! The rule that this action triggers executes to its conclusion before control returns to the action. To avoid slow response time from the SSM engine, avoid logic that could create lengthy wait times.

Example: RULE("SSMDOWN &NAME") dispatches SSMDOWN request rule.

SETCOL("column name, column value")

Updates the indicated column of the current resource with the specified value. You can use SETCOL to store a column value directly in an action. The column value operand is limited to 140 characters, and must be enclosed in single quotes if it contains blanks or other special characters such as quotes, parenthesis, commas, or equal signs. To set a column value to null, specify a value of NULL for the column value operand.

Note: If other action clauses follow SETCOL in the same action text, then references to the updated column see the original value of the column, not the updated value. The new value is not visible until the resource is reselected. This capability is consistent with other SSM action clauses.

Example: SETCOL("DESIRED_STATE,&DOWN_STATE") sets the desired state of the current resource to the table-relative DOWN state.

TSLCMD("cmdname prm1,prm2,…")

The command and parameters that you specify are routed to a CA OPS/MVS TSL Server address space. This action is asynchronous, and therefore does not degrade SSM response time. This action is primarily used to invoke OPS/REXX programs in which long running logic is needed to manage an SSM Controlled resource.

Example: TSLCMD("OI PROGRAM(MOVECICS) ARG(&JOBNAME)") runs an OI TSO command, which invokes an OPS/REXX program named MOVECICS. The program MOVECICS must be stored in the SYSEXEC concatenation, or as a compiled OPS/REXX program in the OPSEXEC concatenation within the OPSOSF server Procedure.

Note: For more information on defining and controlling CA OPS/MVS TSL server address spaces, see the Administration Guide.

TSOCMD("cmdname prm1,prm2,…")

The command and parameters that you specify are routed to a CA OPS/MVS TSO Server address space. This action is asynchronous, and therefore does not degrade SSM response time. This action invokes OPS/REXX programs in which in-depth logic is needed to start or stop the SSM controlled resource.

Example: TSOCMD("OI PROGRAM(SHUTCICS) ARG(&JOBNAME)") runs an OI TSO command, which invokes an OPS/REXX program named SHUTCICS. The program SHUTCICS must be stored in the SYSEXEC concatenation, or as a compiled OPS/REXX program in the OPSEXEC concatenation within the OPSOSF server Procedure.

Note: For more information on defining and controlling CA OPS/MVS TSO server address spaces, see the Administrations Guide.

TSPCMD("cmdname prm1,prm2,…")

The command and parameters that you specify are routed to a CA OPS/MVS TSP Server address space. This action is asynchronous, and therefore does not degrade SSM response time. This action is primarily used to invoke OPS/REXX programs by SSM that must have execution priority over other OPSOSF triggered automation.

Example: TSPCMD("OI PROGRAM(PRODABND) ARG(&JOBNAME)") runs an OI TSO command, which invokes an OPS/REXX program named PRODABND. The program PRODABND must be stored in the SYSEXEC concatenation, or as a compiled OPS/REXX program in the OPSEXEC concatenation within the OPSOSF server Procedure.

Note: For complete details on defining and controlling CA OPS/MVS TSP server address spaces, see the Administrations Guide.