Predefined Constants
PRX includes a variety of predefined constants designed for debugging and modifying the program's behaviour. All predefined constants are prefixed by a hashtag (#
).
CACHE_NEVER
Definition
This constant defines a list of VSAM tables that should not be cached. It should always be used in conjunction with the CACHE_TABLE-constant.
"ALL"
Exclude all tables from the cache
LIST
List of tables that should be excluded from the cache
Example
CACHE_TABLE
Definition
This constant defines a list of VSAM tables that should be cached. It should always be used in conjunction with the CACHE_NEVER-constant.
"ALL"
Include all tables in the cache
"AUTO"
Include all tables in the cache that are used in the table function
"INCREMENTAL"
Include tables in the cache in the order that they've been read
LIST
List of tables that should be included in the cache
Example
When the AUTO
-option is used, only tables referenced with an absolute string are loaded into the cache. If a table is referenced by concatenating a string (e.g. with a variable), the interpreter cannot access it.
DEF_INS_POS
Definition
This constant defines the default insert positions for new JCL statements that are being inserted with the INSSTMT
-function. This only applies, if the first parameter of the INSSTMT
-function is DEFAULT
.
LIST
List of JCL statements with their positional insert value
The DEFAULT
-option of the INSSTMT
-function has multiple single character values that are evaluated from first to last. These define where the statement will be inserted. The first value that applies will be used.
0
OLD
At the last deleted statement
1
BEFOREJOB
Before the JOB
-statement of the member
2
AFTERJOB
After the JOB
-statement of the member
3
BEFOREFIRSTEXEC
Before the first EXEC
-statement of the member
4
BEFOREEXEC
Before the EXEC
-statement of the current step
5
AFTEREXEC
After the EXEC
-statement of the current step
6
BEFOREFIRSTJOBLIB
Before the first JOBLIB
-statement of the member
7
AFTERLASTJOBLIB
After the last JOBLIB
-statement of the member
8
BEFOREJCLLIB
Before the JCLLIB
-statement of the member
9
AFTERJCLLIB
After the JCLLIB
-statement of the member
A
BEFOREJES
Before the first JES2
- or JES3
-statement of the member
B
AFTERJES
After the last JES2
- or JES3
-statement of the member
C
BEFORESTEP
Before the current step
D
AFTERSTEP
After the current step
E
FIRSTSTEP
Before the first step of the member
F
FIRSTDD
Before the first DD
-statement of the step
G
LASTDD
After the last DD
-statement of the step
H
FIRSTOUTPUT
Before the first OUTPUT
-statement of the step
I
LASTOUTPUT
After the last OUTPUT
-statement of the step
J
FIRST
At the beginning of the member
K
LAST
At the end of the member
L
BEFORE
Before the current statement
M
AFTER
After the current statement
Example
As an example for the JOBLIB
-statement, the following default values will be used:
0
: If any statement has been deleted, it will be inserted there.2
: If there wasn't any deleted statement, it will be inserted after theJOB
-statement.3
: If there is noJOB
-statement, it will be inserted before the firstEXEC
-statement.
FORM_MATCH_RULES
IN
LOG
Definition
This constant activates or deactivates logging to HOSRLOG
for debugging purposes. The log has to be .
BOOL
Boolean value, whether log is enabled or disabled
Example
LOG_CONST
Definition
This constant defines a list of constants that should be displayed for every statement in the log.
"ALL"
Display all available constants for every statement
"AUTO"
Display all used constants for every statement
LIST
Display all listed constants for every statement
Example
LOG_CHANGES
Definition
This constant indicates how variables have been modified by statements. PRX automatically detects any changes and logs them if this constant is set to TRUE
.
BOOL
Boolean value, whether changes should be logged or not
Example
LOG_MEM
Definition
This constant enables logging only for specified members. If no members are specified, everything will be logged.
LIST
List of all members that should be included in the log
Example
LOG_RULE_ID
Definition
This constant enables logging only for specified rules. If no rules are specified, everything will be logged.
LIST
List of all rule numbers that should be included in the log
Example
LOG_STMT_ID
Definition
This constant enables logging only for specified statements. If no statements are specified, everything will be logged.
LIST
List of all statement numbers that should be included in the log
Example
LOG_STMT_NAME
Definition
This constant enables logging only for specified statement names. If no names are specified, everything will be logged.
LIST
List of all statement names that should be included in the log
Example
LOG_STMT_TYPE
Definition
This constant enables logging only for specified statement types. If no types are specified, everything will be logged.
LIST
List of all statement types that should be included in the log
Examples
LOG_VAR
Definition
This constant defines a list of variables that should be displayed for every statement in the log.
"ALL"
Display all available variables for every statement
"AUTO"
Display all used variables for every statement
LIST
Display all listed variables for every statement
Example
OUT
SCAN_INCLUDE
Definition
It is common practice in JCL to use the INCLUDE
-statement to incorporate external members into the current member. When another member is included, its contents become part of the JCL syntax tree. Any statement included in this manner will have an include level higher than zero. By default, all statements with an include level greater than zero are not accessible in PRX. However, by enabling the SCAN_INCLUDE
-constant, these statements can be utilized in PRX code.
BOOL
Boolean value, whether included statements are accessible
If PRX runs with the PR=N
SmartJCL flag, this constant is ignored!
Example
SCAN_PROC
Definition
This constant defines whether the content of procedures is available in PRX. Depending on the PR
SmartJCL flag, this constant operates differently.
"N"
The list of statements contains PROC
, PEND
and all statements between them
"Y"
BOOL
Boolean value, whether procedures are accessible
Example
SCAN_PROC_CALL
Definition
When procedures are resolved with the SmartJCL flag PR=Y
, the syntax JCL tree includes a PROCCALL
-statement to mark the beginning of the procedure and a PROCCALLE
-statement to mark the end. Between these two statements, there will be multiple JCL statements that make up the procedure. Only when the SCAN_PROC_CALL
-constant is enabled, all JCL statements between PROCCALL
and PROCCALLE
are available in the syntax tree.
BOOL
Boolean value, whether procedure statements are accessible
If PRX runs with the PR=N
SmartJCL flag, this constant is ignored!
Example
SET_FIELD_REMOVE_APOS
Definition
BOOL
Boolean value, whether the SETFIELD
-function should remove apostrophes
Example
USE_JCK_STMT_NAMES
Definition
When procedures are resolved with the SmartJCL flag PR=Y
, the EXEC
-statement is replaced by PROCCALL
to mark the beginning and PROCCALLE
to mark the end. The PROCCALL
-statement's name includes both the step name and the procedure name. By default, only the step name is used in PRX functions. To display the full name, set this constant to TRUE
.
BOOL
Boolean value, whether the procedure name should be displayed
Example
Last updated