Using the CALL command to run your application

The TSO/E CALL command loads and executes a specified executable program. To run an application successfully, the SCEERUN and SCEERUN2 dynamic libraries must be either in the link-list concatenation, or in a STEPLIB in the TSO/E logon procedure. As an alternative, the TSO/E Dynamic STEPLIB Facility (Program Offering 5798-DZW) can be used to dynamically allocate SCEERUN and SCEERUN2 to the execution environment. For more information about the TSO/E logon procedure, see Program Directory.

When you use the CALL command, you must also specify the ALLOCATE command to dynamically allocate the data sets required by the application you intend to run. For more information, see z/OS TSO/E Command Reference.

The general form of the CALL command is:

Read syntax diagramSkip visual syntax diagram
Syntax

>>-CALL--+---------------------------+--+---------------+------->
         +-data_set_name-------------+  '-program_parms-'   
         +-data_set_name(membername)-+                      
         '-(membername)--------------'                      

>--+------+----------------------------------------------------><
   '-ASIS-'   

data-set-name
Specifies the data set that holds the executable program. If you specify the simple name of the data set, the system assumes the descriptive qualifier LOAD. If you do not specify a member name, the system assumes the name TEMPNAME.

You can also specify the member name of the data set that holds the executable program you plan to run, as indicated in the syntax diagram.

program_parms
A list of runtime options and program parameters passed to the main routine. Use a slash (/) to separate the runtime options and program parameters.
ASIS
Specifies that the program parameters are to be left in their original case. For C or C++, however, you must specify at least one lowercase character in the program parameter string for the case to be preserved, otherwise C or C++ lowercases the string.
For example, if you want to load and run member PROGRAM1 located in the data set USER.LOADLIB, and pass runtime options that generate storage and runtime options reports, specify the following:
CALL 'USER.LOADLIB(PROGRAM1)' 'RPTSTG(ON),RPTOPTS(ON)/'

For a summary of formatting considerations for specifying runtime options, see Specifying runtime options and program arguments.

The EXECOPS option for C and C++ is used to specify that runtime options passed as parameters at execution time are to be processed by Language Environment. The option NOEXECOPS specifies that runtime options are not to be processed from execution parameters and are to be treated as program parameters. For z/OS XL C/C++, a user can specify either EXECOPS or NOEXECOPS in a #pragma runopts directive or as a compiler option. EXECOPS is the default for both z/OS XL C/C++ and z/OS XL C++. If EXECOPS is specified, any runtime options specified in the CALL command are treated as program parameters.

Note: When using CALL to execute a program in the background under TSO/E with PGM=IKJEFT01, the ABTERMENC(ABEND) runtime option will not be processed correctly. To provide ABEND support under TSO/E, use PGM=IKJEFT1A or PGM=IKJEFT1B. For more information regarding these entry points, see z/OS TSO/E Customization.