Running REXX Under IKJEFT01

IKJEFT01 is the mainframe utility program that allows TSO commands to be run under JCL. When a REXX EXEC is run under IKJEFT01, the default host command environment is set to "TSO" by the REXX run-time system. This means that any external commands that are specified in the EXEC will be passed to the TSO command processor for execution. For example:
 
/* REXX */ 
"lista"
exit 0
would cause the "lista" command to be executed by the TSO command processor and would result in the display of each of the DD names allocated to the current job step being displayed.
When running under IKJEFT01, the EXEC may use the ADDRESS instruction to specify alternative host command environments to be used for the execution of external commands. However, Enterprise Server for .NET supports only the "TSO" and "MVS" host command environments. Attempting to use any other host command environment, normally supported on the mainframe, will result in a return code of -3 being set, indicating that the command cannot be found. For example:
/* REXX */
"lista"                         /* Will be executed by the TSO host command environment as "TSO" is the default */
address mvs                     /* Switches the current host command environment to "MVS" */
"execio * diskr datain (finis"  /* Will be executed by the MVS host command environment */
address ispexec                 /* Switches the current host command environment to "ISPEXEC" */
"select service"                /* Will result in the command completing with return code -3 */
exit 0
Example JCL used to run REXX under IKJEFT01:
//REXXTSO JOB 'IKJEFT01 REXX',CLASS=A,MSGCLASS=A
//* 
//CREATE    EXEC  PGM=IEBGENER 
//SYSIN     DD  DUMMY 
//SYSPRINT  DD  SYSOUT=A,HOLD=YES 
//SYSUT2    DD  DSN=&TEMPREX(REXTSO),DISP=(,PASS), 
// SPACE=(CYL,(1,1,1)),UNIT=3390, 
// DCB=(LRECL=80,RECFM=FB,DSORG=PO) 
//SYSUT1    DD   * 
  /* REXX */ 
 trace all 

 "lista"

 exit 0
/* 
//RUN       EXEC PGM=IKJEFT01,PARM='REXTSO' 
//SYSEXEC   DD DSN=&TEMPREX,DISP=(SHR,PASS) 
//SYSTSPRT  DD SYSOUT=A,HOLD=YES 
//SYSTSIN   DD DUMMY
//