Newer version of documentation BMC provides a newer version of the documentation for this version of the product. As a result, BMC no longer accepts comments in this space.BMC recommends upgrading to the latest version of the product. To see documentation for that version, see bao8301.

How to resolve compound SYSPROG variables


The SYSPROG utility EXECs are called by other EXECs with the WAIT(YES) parameter.

These EXECs produce LOCAL variables that are available to their callers upon return; the variables are prefixed with the name of the EXEC. The LOCAL variables can be accessed with the IMFEXEC VGET command by naming the specific variable or in a do-loop if more than one variable of the same type is required.

Warning

Compound variables in the format of RREPI(xxx) need to be resolved prior to their usage in any function; otherwise, the results are unpredictable.

An example of using a SYSPROG utility EXEC is shown in the following figure.

 PROC 1 REPLIES
 IMFEXEC SELECT EXEC(RREP) WAIT(YES)        <=== CALL REPLIES EXEC
 IMFEXEC VGET (RREPROL1) LOCAL              <=== NUMBER OF OUTPUT LINES
                                                 RETURNED IN LOCAL POOL
 SET &N = 1
 IMFEXEC MSG 'LIST OF OUTSTANDING REPLIES'
 DO WHILE (&N LE &RREPROL1)
    IMFEXEC VGET (RREPI&N RREP1&N) LOCAL    <=== LOCAL VARIABLE
    SET &REPID = &&RREPI&N                  <=== RESOLVED COMPOUND VARIABLE
    SET &MSG   = &&RREP1&N                  <=== FOR PROCESSING
                                                 WITHIN EXEC
    IMFEXEC MSG 'MESSAGE = &MSG, REPLYID = &REPID'
    SET &N = &N +1
 END

This section contains the following topics:

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*