Using internal (FASTREXX) processing

Z Data Tools attempts to use FASTREXX or REXX processing, depending upon the first *REXXPROC or *FASTREXX statement found in the procedure.

If no *REXXPROC or *FASTREXX statement is found, the REXX statements are processed as if they were preceded by a *REXXPROC statement.

Note:
  1. FASTREXX processing is supported for the DSEB function as long as it adheres to the following rules.
  2. Default length for packed fields: If you omit the length for a function that refers to a packed field processing, the length is re-calculated for each record processed.
*REXXPROC
The *REXXPROC statement indicates that the subsequent procedure statements are REXX statements (separating them from any preceding DFSORT statements). The statements are processed internally (using FASTREXX) if possible. If FASTREXX processing is not possible, the REXX statements are processed by invoking REXX.
*FASTREXX (ON)
The *FASTREXX (or *FASTREXX ON) statement indicates that the subsequent procedure statements are REXX statements (separating them from any preceding DFSORT statements), and should be processed internally if possible. If FASTREXX processing is not possible, the Z Data Tools function terminates, indicating FASTREXX processing was not possible.
*FASTREXX OFF
The *FASTREXX OFF statement indicates that the subsequent procedure statements are REXX statements (separating them from any preceding DFSORT statements), and should be processed by invoking REXX.
*FASTREXX CHECK
The *FASTREXX CHECK statement indicates that the subsequent procedure statements are REXX statements (separating them from any preceding DFSORT statements), and should be processed by invoking REXX. However, Z Data Tools indicates whether FASTREXX processing was possible for the procedure.
*FASTREXX NORUN
The *FASTREXX NORUN statement indicates that the subsequent procedure statements are REXX statements (separating them from any preceding DFSORT statements), and should be checked to determine whether FASTREXX processing is possible for the procedure. The Fil Manager function does not run, but Z Data Tools indicates whether FASTREXX processing is possible for the procedure.

For a procedure to be eligible for FASTREXX processing, it must consist only of:

The following examples illustrate some simple FASTREXX-eligible statements:

FASTREXX example 1
To change the first byte in every record to a blank:
    OVLY_OUT(' ',1,1)
FASTREXX example 2
To pad every record to a length of 100 with blanks (records longer than 100 bytes would remain unchanged):
    OVLY_OUT(' ',1,100,'C',' ')
    FLD_OUT(1,,1)
FASTREXX example 3
This example invokes the CHG_OUT function provided by Z Data Tools to change the first occurrence of a pair of slash characters (/) to a pair of question marks (?), but only if the first two characters of the record contain '01'. Otherwise, it changes the first pair of slashes to exclamation marks (!):
    If FLD(1,2) == '01' Then
      CHG_OUT('//','??')
    Else
      CHG_OUT('//','!!')