SELECT
This command schedules an EXEC or a program.
Command | Parameters |
---|---|
SELECT | EXEC(execName [p1 ... pn])|PGM(programName) [PARM('p1 ... pn')] [PRI(NORMAL|HIGH| HOT | FIRST |SINGLE | XSINGLE)] [WAIT(NO|YES)] [TARGET(targetSystem)] |
The following table describes the parameters:
Table 1. SELECT command parameters
Parameter | Function | Notes |
---|---|---|
EXEC | name of EXEC to schedule, including all parameters | The maximum length is 255 characters. Upu must specify either EXEC or PGM. |
PGM | name of a user-written program Refer to Using-other-programming-languages for more information. | Store user-written programs in a separate user load library that is concatenated with the BBLINK library in the BBILOAD DDname. If the BBILOAD DDname is not specified in the BBI-SS PAS JCL, specify the user load library in the STEPLIB statement of the BBI-SS PAS JCL. In addition, ensure that the user library is APF authorized. The name of the routine must begin with the prefix IMFUxxxx. You must specify either PGM or EXEC. |
PARM | list of parameters to be passed to the program | Specify only when the PGM parameter is specified. |
PRI | execution priority of the EXEC to be scheduled | (optional) Specify only when the EXEC keyword is also specified. Specifying a priority value on the EXEC overrides the EXEC parameter in BBPARM member AAOEXP00. The PRI keyword is valid when specified with WAIT(NO) but not with WAIT(YES). Valid values are: NORM | N schedules the EXEC with a normal priority setting by using first in, first out (FIFO) queuing strategy. The EXEC is placed in the Normal priority queue and uses an EXEC thread from the MAXNORM thread pool. Note: BMC recommends that you use the normal priority setting for most of your EXEC processing. NORM is the default setting when you do not explicitly specify a priority. This setting can be overidden by the value that you specify in BBPARM member AAOEXPxx with the MAXHOTQ parameter. HIGH | H schedules the EXEC with a high priority setting by using a FIFO queuing strategy. The EXEC is placed in the High priority queue and uses an EXEC thread from the MAXHIGH thread pool. HOT | T schedules the EXEC as a hot EXEC by using a FIFO queuing strategy on the Hot priority queue. The next available EXEC thread from either the Normal or the High priority EXEC thread pool is used to run the EXEC waiting on the Hot priority queue. FIRST | F schedules the EXEC as hot EXEC by using a last in, first out (LIFO) queuing strategy on the Hot priority queue. The next available EXEC thread from either the NORM or the HIGH EXEC thread pool is used to run the EXEC waiting on the Hot priority queue. Note: BMC recommends that you reserve using the HOT or FIRST settings for only the most critical situations so that it can be as effective as possible. |
PRI (continued) | execution priority of the EXEC to be scheduled | SINGLE | S schedules the EXEC with a normal priority setting but allows only one instance of the EXEC to execute at a time, regardless of the number of available EXEC threads. For EXECs to be single-threaded using this option, the EXECs must have the same name and must specify SINGLE when scheduled. EXECs that have the same name but are scheduled without the SINGLE specification are not single-threaded with those that are specified with the SINGLE option. XSINGLE | X attempts to schedule the EXEC with a normal priority setting; if another instance of the EXEC that also specified XSINGLE is already running (or waiting to run), the scheduling request is rejected, and message EM6111W is written to the BBI-SS journal. |
WAIT | suspension criterion for invoking EXEC | Either YES or NO is specified. NO (the default) causes the EXEC to be queued for execution by using a different EXEC thread. YES causes the EXEC to execute under the same thread as the calling EXEC. If YES is specified, the invoking EXEC waits for the scheduled EXEC to terminate. WAIT(YES) is required to retrieve a return code from the scheduled EXEC. Note: When WAIT (YES) is used, the return code that was passed in IMFEXEC EXIT is returned in IMFRC. WAIT(YES) is not supported for EXECs scheduled to a remote system with TARGET. If both WAIT and TARGET are specified, the EXEC is queued to the TARGET system, but WAIT is ignored. |
TARGET | identifies the target SS on which the command will be executed | The name must be defined in the BBPARM member BBIJNT00 as either the target name or BBI-SS PAS subsystem ID. |
Condition codes are listed in the following table:
Value | Description |
---|---|
0 | Command was executed successfully. |
8 | One of the following situations is true:
|
12 | One of the following stateliness is true:
|
16 | Invalid syntax was used. |
Example
This example command schedules the EXEC CHKENQ on the remote SS SYSB, passing it the parameter SYS2.PROD.XLIB.
'IMFEXEC SELECT EXEC(CHKENQ SYS2.PROD.XLIB) TARGET(SYSB)'
CLIST example:
This section also contains a discussion about how you can use other programming languages when you use the IMFEXEC SELECT command and how to determine condition codes when you select other program to run from an EXEC. Refer to Using-other-programming-languages and Understanding-completion-codes-for-EXEC-Initiated-EXECs-with-WAIT-YES-and-User-Written-programs.