REXXexpress

Overview

REXXexpress is a package of productivity tools for new and experienced REXX programmers. It is comprised of the following components:

  • REXX function library – a library of commonly performed operations, including sorting, stem variable manipulation, file and directory I/O, math functions, and more.
  • Tools for automatically managing updating internal REXX functions
  • Tools which integrate REXX into a given environment REXXexpress is portable! Runs in z/OS, Windows, UNIX / Linux REXXexpress is the culmination of the work of dozens of consultants working in production environments. Their toolbox can now be yours!

Requirements

REXXexpress requires a supported REXX interpreter and editor on any platform where it runs

  • Windows: Open Object Rexx, KEdit editor
  • MVS: Any IBM supported release, ISPF Editor
  • CA-OPS/MVS: Any vendor supported release
  • BMC AutoOPERATOR: Any vendor supported release
  • IBM AF/Operator, NetView: Any supported release
  • Linux: any ooRexx release

Features

REXXexpress provides edit macros for popular editors to let you insert, manage, and update internal REXX functions into your REXX programs. If shared functions are updated, programs using those functions can be located and updated with a single command REXXexpress provides internal and external REXX function libraries, so you can choose the technique that solves your problems best. The following chart shows an overview of these functions

Area Area Number
CA-Automation Point productivity functions 3
Date and Time 36
New function Emulation 3
File and Directory I/O 6
Math functions 21
MVS interface functions 20
CA-OPS/MVS productivity functions 14
Stem variable manipulation 11
String manipulation 27
Web CGI support 2
Misc: Keyword parsing, error handling, stack save/restore, etc. 25


For example, the file and directory I/O functions IOREAD() and IOWRITE() are entirely portable, enabling development on Windows, and deployment on MVS, with no code changes. The emulation function xSocket() enables you to develop TCP/IP socket applications that run unchanged on Windows, UNIX, and MVS.

Benefits

REXXexpress enables programmers to get the job done much faster – turning a two-day project into a half-hour one! REXXexpress provides solid solutions to typical problems in the following areas:

  • Calculation of schedules using date functions like holiday(), isLeap(), monthEnd(), and DateCalc()
  • Performing search-andreplace operations through libraries of JCL – even if those libraries have been copied to a PC!
  • Concatenation of MVS libraries.
  • Parsing required and optional keywords and validating them
  • Manipulation of stem variables: inserting, deleting, copying, sorting, searching, and formatting.

REXXexpress is extensible, so it can manage your site-written REXX functions too!

Automated Operations

Automated operations is a REXXexpress focus area. In this arena, Portability means functions that work in productuct environments including BMC AutoOperator, CA-OPS/MVS, IBM System Automation, NetView, AF/Operator, or native TSO including:

  • MVSCMD() issues operator commands and retrieves the response
  • RXWTO() issues WTO messages using multiple products
  • xPrompt() allows development of interactive operator prompt applications that work at the console, in NetView, under ISPF, and even in Windows!
  • Multiple CA-OPS/MVS function for quickly manipulating tables, parameters, MSF links, StateMan, EPI sessions, and more

Examples

The following example demonstrates kwparse() and errmsgx(), providing parameter parsing, with default values and validation, all in 13 lines of code:

Rexx Screenshot
 

The following 22 lines of code filters PDS members by date, using IOMemLst(), yy2yyyy(), greg2Jul(), getDate(), and dateDiff():

Rexx Screenshot