UNIX System Services (USS) allows the TSO/E REXX language to be used in the UNIX environment to execute shell commands and other USS callable services. The function of such a REXX program is similar to that of a UNIX shell script. For a complete description of the capabilities of UNIX REXX, see the IBM documentation.
In UNIX REXX, a limited number of CA OPS/MVS POI commands can be used. Only those POI commands that are documented as also being callable as TSO/E REXX functions will function properly in UNIX REXX. These POI commands include OPSDELV, OPSGETV, OPSGETVL, OPSHFI, OPSQL, OPSSETV, OPSSMTBL, and OPSWAIT. The CMDRESP(TERMINAL) option available with some of these commands results in WTO message output and consequently should not be used. Since the UNIX REXX environment is not a TSO environment, security rules for protected resources such as SQL and OPSGLOBAL must be enabled to allow access to these resources, as in z/OS batch mode.
The UNIX shell provides a 'tso' command for executing TSO commands from the UNIX environment. From an OMVS TSO session, the command is executed in the address space of a TSO user. From a non-TSO UNIX environment, a temporary TSO TMP is created to execute the command.
If you want to execute a POI command that does not run as a REXX function or if you want the OI command to execute an OPS/REXX program, use the TSO shell command. The following UNIX REXX statement invokes the STATESET OPS/REXX program:
Address SH "tso 'OI STATESET STCTBL.CICSUSS CURRENT(DOWN)'"
The same OPS/REXX program could be invoked directly from the shell outside of a UNIX REXX program with the command:
tso 'OI STATESET STCTBL.CICSUSS CURRENT(DOWN)'
Note: For running the OI command as a shell command without TSO, see the chapter “Using OPS/REXX” in the User Guide.
When a TSO TMP is created to execute the OI command, the SYSEXEC ddname must be allocated to the appropriate data sets. This can be accomplished by setting the environment variable SYSEXEC to the list of data set names required before the tso shell command is issued. The following command concatenates two data sets to the SYSEXEC ddname:
export SYSEXEC=MYOWN.REXX:SYS1.OPS.CCLXEXEC
A generalized mechanism for allocating any required data sets for the created TSO TMP is described in the IBM documentation.
In all the above scenarios, the assumption was made that the CA OPS/MVS commands were in the system linklist or LPA. If this is not the case, the environment variable STEPLIB must include the CA OPS/MVS load library in the steplib concatenation. The following shell command updates or creates the STEPLIB variable:
export STEPLIB=$STEPLIB:SYS1.OPS.CCLXLOAD
|
Copyright © 2014 CA Technologies.
All rights reserved.
|
|