Home About Courses Schedule Services Webinars Contact Search

REXX Programming & Advanced REXX Programming


Duration: 5 Days

Method: Instructor led, Hands-on workshops

Price: $2750.00

Course Code: RX1015


Programmer, technical support personnel, and other individuals that need to write REXX execs.


This course will introduce students to the skills necessary to code REXX execs in z/OS environments. A series of written and lab exercises will be used to reinforce the classroom education.


Upon successful completion of this course, the student will be able to:

  • Create and allocate REXX libraries
  • Invoke REXX execs and pass parameters to them
  • Use REXX instructions to perform terminal I/O
  • Perform arithmetic calculations and character operations
  • Use such REXX programming constructs as: IF statements, SELECT WHEN constructs, DO WHILE and iterative DO loop sequences
  • Debug REXX execs via the TRACE facility
  • Write user developed REXX subroutines and functions
  • Issue TSO commands from REXX execs
  • Trap TSO command output and process the output in the REXX exec
  • Use ISPF services in REXX execs
  • Parse data using the PARSE statement
  • Read and write sequential datasets
  • Manipulate and access the REXX data stack
  • Create REXX based ISPF edit macros
  • Execute REXX execs in batch jobs
  • Write REXX execs that interact with Db2
  • Write REXX execs that issue MVS operator commands
  • Compile and linkedit REXX execs


• Introduction to z/OS, or equivalent experience. • TSO/ISPF, or equivalent experience. • Previous experience in designing and coding application programs will enhance the results of this course.


  • I. Introduction to REXX
    • Definition
    • Dataset Organization
    • Methods of Execution
  • II. REXX Language Syntax
    • General Statement Syntax
    • Variables
    • Assignment Statement
    • Accessing the Terminal
      • SAY Statement
      • PULL Statement
      • ARG Statement
    • IF THEN ELSE Statement
    • SELECT WHEN Sequence
    • Iterative DO Sequence
    • DO WHILE END Sequence
    • DO UNTIL Sequence
    • DO FOREVER Sequence
    • LEAVE Statement
    • ITERATE Statement
    • SIGNAL Statement
    • EXIT Statement
  • III. REXX Built-in Functions
    • Information Functions
    • Character Functions
    • Word Functions
    • Data Functions
  • IV. Debugging REXX Execs
    • TRACE Statement
    • Interactive Tracing
    • Condition Traps
  • V. User Defined Subroutines and Functions
    • Defining and Using Subroutines
    • Defining and Using Functions
    • Internal versus External Functions
  • VI. TSO/E Processing in REXX
    • Using TSO Commands
    • TSO/E External Functions
      • SYSVAR( )
      • MVSVAR( )
      • SG( )
      • PROMPT( )
      • SYSDSN( )
      • LISTDSI( )
      • OUTTRAP( )
  • VII. Using ISPF Services in REXX
    • BROWSE / VIEW Services
    • EDIT Service
    • LIBDEF Service
    • DISPLAY Service
    • SETMSG Service
    • ADDRESS Statement
    • SUBCOM Command
  • VIII. Parsing Data
    • PARSE Statement
    • List Parsing
    • String Pattern Parsing
    • Positional Pattern Parsing
  • IX. File I/O
    • Executing Programs in Execs
      • ALLOC Command
      • CALL Command
      • FREE Command
    • EXECIO Statement
  • X. Data Stack Processing
    • Definition
    • REXX Statements to Manipulate the Stack
    • Uses of the Stack in REXX Execs
    • TSO Commands That Use the Stack
  • XI. ISPF Edit Macros
    • Overview
    • Edit Macro Commands
    • Using Edit Primary Commands
    • Using Edit Line Commands
    • Using Edit Macro Keyphrases
    • Using Edit Labels
  • XII. Batch REXX Execution
    • Executing REXX Execs in TSO Background Jobs
    • Executing REXX Execs in Batch Jobs
  • XIII. Supplemental Topics (as time permits)
    • REXX Language Support in Db2
    • REXX Support for MVS Operator Commands
    • Compiling REXX Execs