Defining Symbols and Symbol Values

#### Search Results

Search

# Defining Symbols and Symbol Values

This document covers the following topics:

- Listing Symbols of a Symbol Table

- Displaying a Symbol

- Modifying a Symbol

- Adding a Symbol

- Defining Multiple Symbol Values

- Specifying a Range Check for Numeric Symbol Values

- Reserved Symbols

- Predefined Symbols

- Symbols in Node Definitions

- Validating Symbol Values with a User Exit

- Global Symbol Modification Exit

- Symbol Setting triggered by the SYSOUT of a Job

- Deleting a Symbol

## Listing Symbols of a Symbol Table

To list symbols for a selected symbol table

- For a symbol table master: In the Symbol Tables (Master) window type `L` in the line command input field of the required symbol table. Press ENTER.

  Or:
  For an active symbol table: In a Usable Symbol Tables window, type `L` next to the topmost symbol table listed for the run.

  For a symbol master: If more than one version exists for a selected symbol table master, a Symbol Table Version Selection window opens next. Mark the required version and press ENTER.

  A Symbol Table Master screen appears.

  The screen lists all symbol masters defined for the selected symbol table master.

  The columns on the screen are explained in Columns: Symbol Table.

## Displaying a Symbol

To display a symbol

1. For a symbol master: On a Symbol Table Master screen, type `L` in the line command input field next to the required symbol. Press ENTER.

   Or:
   For an active symbol: On a Symbol Table (active) screen, type `L` in the line command input field next to the required symbol. Press ENTER.

   A Symbol Master Browsing or Symbol (active) Browsing window opens.

   All fields provided in the window correspond to the fields provided in the Symbol Master Modification window. They are explained in Fields: Symbol. Special functions are explained in Special PF Keys: Symbol.

2. Choose PF3 (End) to close the window.

## Modifying a Symbol

To modify a symbol

1. On a Symbol Table Master screen, type `M` in the line command input field next to the required symbol. Press ENTER.

   Or:
   On a Symbol Table (active) screen, type `M` in the line command input field next to the required symbol. Press ENTER.

   For a symbol master, a Symbol Master Modification window like the example below opens:

       +---------------------------------------------------------------+
       |                                                               |
       |                    Symbol Master Modification                 |
       |                                                               |
       |  Symbol Table EXA-SYMBOL                   Owner EXAMPLE      |
       |       Version SV98______                 Network              |
       |                                              Run              |
       |  Symbol  Name NUM-1___________________________________        |
       |        Format N                                               |
       |         Value 30______________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       |         Be careful with insertions or deletions.              |
       |         The lines will be concatenated to one symbol value.   |
       |                                                               |
       |     Prompting N                          Update Mode _        |
       |   Prompt Text ________________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       | Enter-PF1---PF2---PF3-----PF5----PF8----PF9---PF10---PF11--   |
       |       Help  Add   End     Save   RgChk  Mult  Copy   Exit     |
       +---------------------------------------------------------------+

   For an active symbol, a Symbol Active Modification window like the example below opens:

       +---------------------------------------------------------------+
       |                                                               |
       |                    Symbol Active Modification                 |
       |                                                               |
       |  Symbol Table EXA-SYMBOL                   Owner EXAMPLE      |
       |       Version SV98______                 Network E60-FLOW     |
       |                                              Run 5744         |
       |  Symbol  Name NUM-1___________________________________        |
       |        Format N                                               |
       |         Value 30______________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       |         Be careful with insertions or deletions.              |
       |         The lines will be concatenated to one symbol value.   |
       |                                                               |
       |     Prompting A                          Update Mode _        |
       |   Prompt Text ________________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       | Enter-PF1---PF2---PF3-----PF5----PF8----PF9---PF10---PF11--   |
       |       Help  Add   End     Save   ---    Mult  ---    ---      |
       +---------------------------------------------------------------+

   The window contains the current symbol definition.

2. Change the text in the input fields as required. The fields in the upper section are not modifiable. All fields are explained in Fields: Symbol. Special functions are explained in Special PF Keys: Symbol.

3. Press PF5 (Save) to save the modified symbol definition.

4. Press PF3 (End) to close the window.

This section covers the following topics:

- Fields: Symbol

- Special PF Keys: Symbol

### Fields: Symbol

The fields in a Symbol Master or Symbol Active window and subordinate windows are described in the following table.

The fields are either write-protected or available for input depending on whether you view or modify the symbols. The table indicates when a field applies to active symbols or symbol masters only.

Caution
Be careful with insertions and deletions, since the lines of Value are concatenated to one symbol value.

Main Window:
Symbol Table | Name of the symbol table.
Version | Version of the symbol table (optional).
Symbol Name | Name of the symbol.
Owner | Owner of the symbol table.
Network | Current job network (active symbol tables only).
Format | Format of the symbol (variable). Possible values:
`A` | Alphanumeric (including special characters).
`D` | Date in the format YYYYMMDD (see also Date and Time Formats).
`H` | Alphanumeric; hidden. The symbol value is not visible in the Value field. In lists and logs, the symbol value is displayed as `*** hidden ***`.
`L` | Alphanumeric; lower case.
`N` | Numeric. See Value for the numeric field format.
`U` | Alphanumeric; upper case.
Run | Current network or job run (active symbol tables only).
Value | Value of the symbol to be substituted. To enter a fixed length or an empty string, include the value in quotes. Use two apostrophes to get a quote within a string. Example: `'Fixed Length '` Notes: If a value is longer than 40 characters, continue typing in the second Value line. The maximum value is 120 characters. Be careful with insertions and deletions. The lines are concatenated to one symbol value. See also Note for Long Symbol Values. The maximum length of a numeric value is N10.4 (10 digits before the decimal point and 4 digits after the decimal point). A decimal point can appear at any position. A date must use the format YYYYMMDD. The value of a hidden symbol (format `H`) can be entered, but it will be invisible. See also Defining Multiple Symbol Values.
Prompting | Specifies whether the user is to be prompted for this symbol during manual activation of the job network. Possible values:
`A` | Prompt for symbol during each activation.
`E` | Prompt only if no value is specified in the table.
`N` | Never prompt for symbol.
See also Symbol Prompting during Network or Job Activation.
Update Mode | `M` | Write back changes to an active symbol to the symbol master as well. This applies when modifying an active symbol and if you are permitted to modify a symbol table master. See also Performing Maintenance Functions. This option does not apply to add, copy or delete operations; symbols in the symbol table master then remain as they are. Note The symbol is also written back if the Rewrite prompted Symbols to Symbol Table Master option is activated in the Entire Operations default settings: see Default Setting (2) in the Administration documention.
else | No special action.
Prompt Text | Optional text to be displayed when symbol prompting is performed, to help the user specify the correct value. See also Symbol Prompting during Network or Job Activation.
Multiple Symbol Values Window:
Values ... to ... | Assign multiple values to a symbol. These can be used in subsequent replacements of the same symbol. See also Defining Multiple Symbol Values. You can enter up to 150 values here. The maximum value length is 120. These values are used for subsequent substitutions. Scroll with PF7 (Up) and PF8 (Down).
Numeric Range Check Window:
This option applies to symbol masters only. Used to define a number range for numeric symbol values to be checked for valid input. See also Specifying a Range Check for Numeric Symbol Values.
Value from | Start number (Value from) and end number (Value from) of the range to be checked. Valid input values are positive integer numbers in the range from `1` to `9999999999` (format N10).
Value to
Definition of Symbol Check Exit Window:
See also User Exit for Validating Symbol Values.
Library | Name of the library that contains the user exit. You can use an asterisk (`*`) as a wildcard to select a library from a list. Note You cannot select the libraries SYSLIB and SYSLIBS. They are reserved for internal use.
User Exit | Name of the user exit. If the name entered in Library is valid, you can select an existing exit by using a wildcard, or you can specify a new exit. If the specified exit does not (yet) exist, you will be warned with the message `EOR1051 - Object not in the Library`.

### Special PF Keys: Symbol

You can perform the following special functions from a Symbol Master or Symbol Active window using these PF keys:

PF Key | Name | Function
--- | --- | ---
PF8 | RgChk | Numeric value check. The value range check is only performed for values of the format N. In this case, a special window appears here. This PF key is available for master definitions only.
PF9 | Mult | Assign multiple values to a symbol. These can be used in subsequent replacements of the same symbol. A special window opens.
PF10 | Copy | Copy a symbol. This PF key is available for master definitions only.
PF11 | Exit | Define and edit a validity checking user exit for this symbol: see User Exit for Validating Symbol Values. This PF key is available for master definitions only.

## Adding a Symbol

You can add a symbol by either copying an existing symbol (see Copying a Symbol) or creating a new symbol with PF2 (Add).

This section provides instructions for using PF2 (Add).

To add a symbol master

1. If you want to create the first symbol of a new symbol table master: From the Symbol Tables (Master) window, choose PF2 (Add).

   Or:
   If you want the add another symbol to an existing symbol table master: From the Symbol Table Master screen of the required symbol table master, choose PF2 (Add).

   A Symbol Master Definition window opens.

   If a symbol table master already exists, the name of the symbol table master is already entered in the Symbol Table field. This field is not modifiable.

   If a new symbol table master is created with the new symbol, enter a name in the Symbol Table field. The symbol table itself will be created implicitly by this action.

2. Enter the new symbol definition.

   All fields provided in the Symbol Master Definition window correspond to the fields provided in the Symbol Master Modification window. They are explained in Fields: Symbol. Special functions are explained in Special PF Keys: Symbol.

3. When you are finished, choose PF5 (Save) to save the new definition.

4. Press PF3 (End) to close the window.

To add an active symbol

1. From the Symbol Table (active) screen of the required active symbol table, choose PF2 (Add).

   A Symbol Active Addition window opens.

   This window corresponds to the Symbol Master Modification window. All fields and special functions provided in the window are explained in Fields: Symbol and Special PF Keys: Symbol.

2. Enter the new symbol definition.

3. When you are finished, choose PF5 (Save) to save the new definition.

4. Press PF3 (End) to close the window.

### Copying a Symbol

You can copy symbols within a symbol table, or to and from another symbol table.

To copy a symbol

1. On the Symbol Table Master or Symbol Table (active) screen, type `C` in the line command input field next to the symbol you want to copy. Press ENTER.

   Or:
   On the Symbol Table Master or Symbol Table (active) screen, choose PF4 if you want to copy a symbol from another symbol table.

   A Symbol Copy window like the example below opens:

        13.02.20                ***** Entire Operations *****                10:11:04
        Owner   SAG        Symbol Table Master    SAG        EXAM-TABLE  V. V-PREVIOUS
        Network +----------------------------------------------------------+
        ------- |                                                          | ---------
        C Symbo |                       Symbol Copy                        |
          *---- |   From                                                   |
        C CLASS |   Symbol  ==> CLASS___________________________________   | .11 16:49
        _ JOBLI |   Owner   ==> SAG_______  Network ==> __________         | .11 16:49
        _ TST   |   SymTab  ==> EXAM-TABLE  Run     ==> _____              | .19 11:23
        _ MSGCL |   Version ==> V-PREVIOUS                                 | .11 16:49
        _ PARM- | -------------------------------------------------        | .11 16:49
        _ STEPL |   To                                                     | .11 16:49
                |   Symbol  ==> CLASS-NEW_______________________________   |
                |   Owner   ==> SAG_______  Network ==> __________         |
                |   SymTab  ==> EXAM-TABLE  Run     ==> _____              |
                |   Version ==> V-CURRENT                                  |
                |                                                          |
                |  PF1 Help   PF3 End                                      |
                +----------------------------------------------------------+
        ******************************* Bottom of Data *******************************
        C Copy   D Delete   L List   M Modify

       Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
             Help  Add   End   Copy  Save        Up    Down  Print

   Depending on the copy function used (line command or PF key), fields in the upper or lower half of the window are not modifiable.

   The From fields in the upper half of the window show the name of the origin symbol, containing symbol table and symbol table version (if relevant) and the symbol table owner.

   The To fields in the lower half of the window are used to define the target symbol. You can add another symbol to the same symbol table/version and owner, or copy a symbol to and from another symbol table/version and/or owner.

   For active symbol tables, you can copy symbols for the current network and job run only, and only if a requested symbol table is available for the given job run.

2. In the To and From fields, replace the current values or add values as required.

   Press `ENTER` when you are finished.

   (If you close the window with PF3 (End) without specifying a target symbol name, the copy operation will be aborted.)

3. Press PF3 (End) to close the window.

## Defining Multiple Symbol Values

You can give a symbol several values which can be used in subsequent substitutions of the same symbol. These values can be used for the multiple parallel activation of a job. The number of parallel jobs is the same as the number of multiple values defined here. The maximum number of multiple values is 150.

To view and define multiple symbol values

1. Open a Symbol Master or Symbol Active window.

   If multiple values have already been defined for the selected symbol, the Value field indicates how many, for example: `*** 25 multiple values ***`.

2. Press PF9 (Mult).

   A Multiple Symbol Values screen like the example below opens:

                                   Multiple Symbol Values

       Owner  EXAMPLE     Network             Symbol Table EXA-SYMBOL  Run
                          Version                  Version SV98
       Symbol MULTI-SYMBOL-1
       1   -------------------------- Values   1 to  13 -------------------------  78
       aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
       bbbbbbbbbbbbbbbbbbbb__________________________________________________________
       ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc___________
       ______________________________________________________________________________
       ______________________________________________________________________________
       ______________________________________________________________________________
       ______________________________________________________________________________
       ______________________________________________________________________________
       ______________________________________________________________________________
       ______________________________________________________________________________
       ______________________________________________________________________________
       ______________________________________________________________________________
       ______________________________________________________________________________

       Enter---PF1----PF2----PF3--------PF5--------PF7----PF8----PF9----PF10--PF11---
               Help   Insert End        Save       Up     Down   Delete Left  Right

3. You can view all current values and add, delete or modify values as required. Be careful when inserting or deleting a value. Lines are concatenated to one symbol value and stored as a single (long) field in the database.

   For valid input values, see also the descriptions of the Value field and the Numeric Range Check window in the section Columns: Symbol Table.

> Note for Long Symbol Values

>   If a symbol value exceeds 78 characters (maximum is 120 characters), the value is truncated on the Multiple Symbol Values screen. In this case, you need to scroll data to the right using PF10.

This section covers the following topics:

- Special PF Keys: Multiple Symbol Values

- Symbol Replacement

### Special PF Keys: Multiple Symbol Values

The Multiple Symbol Values screen provides the following special PF keys:

PF Key | Function | Description
--- | --- | ---
PF2 | Insert | Inserts an empty row above the line where the cursor is positioned.
PF7 | Up | Scrolls up 13 rows in the table.
PF8 | Down | Scrolls down 13 rows in the table.
PF9 | Delete | Deletes a single value in the line on which the cursor is positioned. The remaining values are concatenated to one value.
PF10 | Right | Scrolls right in the table.
PF11 | Left | Scrolls left in the table.

### Symbol Replacement

You can use the symbol function `!MV` or `?MV` (see Functions for Symbol Replacement) to get single occurrences of multiple-value symbols for replacement.

## Specifying a Range Check for Numeric Symbol Values

You can guarantee that a numeric symbol value is within a specified number range.

To specify a range check for numeric symbol values

1. Open the Symbol Master Definition/Modification window for a symbol of the format `N` (numeric) and choose PF8 (RgChk).

   A Symbol: Numeric Range Check window opens.

2. Enter the range of numbers (here: `1` to `30`) to be used for the value check as shown in the example below:

       +-----------------------------------------------+
       |                                               |
       |        Symbol: Numeric Range Check            |
       |                                               |
       |  Owner         ===> EXAMPLE                   |
       |  Symbol Table  ===> EXA-SYMBOL                |
       |  Version       ===> SV98                      |
       |  Symbol        ===> NUM-1                     |
       |                                               |
       |  Value from    ===> 1_________                |
       |  Value to      ===> 30________                |
       |                                               |
       |  ---PF1--PF3---------PF5---------PF9----      |
       |     Help End         Save        Delete       |
       +-----------------------------------------------+

   For valid input values and further information on range checking, see Numeric Range Check in the section Fields: Symbol.

   Choose PF5 to save your entries.

3. If you then try to change the value of this symbol (or a multiple value of the symbol) to a value outside the specified range, an error message appears and the new value (here: `50`) is not accepted:

       +---------------------------------------------------------------+
       | EOR0160 - Range is 1 thru 30                                  |
       |                    Symbol Master Modification                 |
       |                                                               |
       |  Symbol Table EXA-SYMBOL                   Owner EXAMPLE      |
       |       Version SV98______                 Network              |
       |                                              Run              |
       |  Symbol  Name NUM-1___________________________________        |
       |        Format N                                               |
       |         Value 50______________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       |         Be careful with insertions or deletions.              |
       |         The lines will be concatenated to one symbol value.   |
       |                                                               |
       |     Prompting N                          Update Mode _        |
       |   Prompt Text ________________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       |               ________________________________________        |
       | Enter-PF1---PF2---PF3-----PF5----PF8----PF9---PF10---PF11--   |
       |       Help  Add   End     Save   RgChk  Mult  Copy   Exit     |
       +---------------------------------------------------------------+

## Reserved Symbols

Reserved symbols perform user-specified tasks. They can be changed as required if symbol table maintenance is allowed for the user (see Performing Maintenance Functions).

Reserved symbols can be added, modified and deleted in symbol tables like all other symbols.

This section covers the following topics:

- Reserved Symbols for Command Line Parameters

- Reserved Symbols for Mainframe Platforms

- Reserved Symbols for FTP Jobs

- Reserved Symbols for Profile Scripts (UNIX)

- Reserved Symbol for Epilog Scripts (UNIX and Windows)

### Reserved Symbols for Command Line Parameters

Symbol | Format | Description
--- | --- | ---
`CMDLINE-job` | A80 | Command line parameter(s) for the following job types and/or JCL locations: Started tasks (job type `STC`) on z/OS, UNIX shell scripts (job type `JOB`, Windows BAT files (job type `JOB`) and PowerShell scripts (job type `WPS`), Windows services (job type `SRV`), and Programs which are to be executed directly under UNIX or Windows (JCL location `EXE`).

> Passing Command Line Parameters

>   If you want to pass command line parameters for a job, use the reserved symbol `CMDLINE-job` in the job's symbol table, where `job` is the job name.

>   Several parameters, separated by blanks, can be contained in this symbol.

>   #### Example:

>   Job name: | `JOB1`
>   Member name in JCL definition: | `STC001`
>   Content of symbol `CMDLINE-JOB1`: | `PARM1=Y,PARM2=N`

>   The start command generated and issued by the Entire Operations Monitor is:

>       S STC001,PARM1=Y,PARM2=N

> Command Line Passing to Shell Scripts in Entire Operations

>   - If a job is to be activated, Entire Operations checks whether a `CMDLINE-job` symbol exists.

>     If such a symbol exists, its content is appended to the invocation of the `job.bat` script.

>   - Nested symbol replacement:

>     The `CMDLINE-job` symbol can contain nested symbols.

>     These can be prefixed by the activation escape character for activation time replacement, or by the submission escape character for submission time replacement.

>   - The `job.sh` resp. `job.bat` script (the user's script, with some Entire Operations header files), is not invoked directly, but out of the wrapping script `job.nnnnnnnn.frame.sh` resp. `job.nnnnnnnn.frame.bat`.

>     `nnnnnnnn` denotes an 8-digit repeat count. For the first job submission, this is `00000000`.

>   - The `job.nnnnnnnn.frame.sh` resp. `job.nnnnnnnn.frame.bat` script is generated by Entire Operations at submission time. On UNIX, this is always a Bourne shell script (starting with the shebang `#!/bin/sh`), regardless of the shell of the user's script.

>   - UNIX: Command line parameters must be passed in Bourne shell syntax. This means quoting and masking of special characters according to Bourne shell rules. Note that the Bourne shell script quotes from the parameters quoted in the invoked shell script.

>   - Use c:\\work\\test.txt to pass a windows file name, for example, c:\work\test.txt.

>   - The maximum total length of all parameters is 2000 bytes (including separating blanks) after symbol replacement.

>   - The maximum length of a single parameter is 240 bytes.

### Reserved Symbols for Mainframe Platforms

Symbol | Format | Description
--- | --- | ---
`SYSOUT-NODE-GLOBAL` | N5 | (Only in the table `SYSDBA`/`A`.) If this SYSOUT exists and contains a valid Entire System Server node number and if there is no other applicable SYSOUT node definition available, SYSOUT file copies for Entire Output Management are created on this node.
`JCL-NODE` | N5 | If this symbol is found during job activation, this node is used as a JCL node for the active job.
`SUBMIT-NODE` | N5 | If this symbol is found during job activation, this node is used as a job start node for the active job.
`SYSOUT-NODE` | N5 | If this symbol is found during job activation, this node is used as a SYSOUT node for the active job. This symbol supersedes `SYSOUT-NODE-GLOBAL`.

The symbols `JCL-NODE`, `SUBMIT-NODE` and `SYSOUT-NODE` are searched for in the symbols tables as described in Symbol Table Types and Symbol Search Order.

### Reserved Symbols for FTP Jobs

There are some symbols which have a special meaning for jobs of the type FTP.

Wildcards mean than all symbols starting with the mentioned prefix are reserved.

Symbol | Description
--- | ---
`FTP-JOBC*` | FTP JCL.
`FTP-SITE*` | FTP site commands.
`FTP-PARM*` | FTP command line parameters.

### Reserved Symbols for Profile Scripts (UNIX)

This section describes the reserved symbols used when generating UNIX frame scripts (job.current.frame.sh) that source profile scripts as described in UNIX: Usage of Profile Scripts in the section Job Maintenance.

The reserved symbols are defined with Format A.

Symbol | Description
--- | ---
`ETC-PROFILE` | Determines the profile scripts to be sourced. Possible symbol values are:
`Y` | Source the profile scripts contained in /etc/profile and /etc/profile.local, if available.
`N` | Do not source any of the profile scripts contained in /etc/profile and /etc/profile.local. This setting has the same effect as if the `ETC-PROFILE` was not defined at all. The symbol is then not found in the symbol table hierarchy. If you do not want to source profile scripts, make sure that `ETC-PROFILE` set to `Y` is not defined at a higher level in the symbol table hierarchy (for example, `SYSDBA/A`). In this case, you must explicitly set `ETC-PROFILE` to `N` at a lower hierarchy level. See also Symbol Table Types and Symbol Search Order. `N` is the default when no value is specified for `ETC-PROFILE`.
`ENV` | `script-name` | Source the user-defined profile script defined for this symbol. Example: $HOME/.profile

### Reserved Symbol for Epilog Scripts (UNIX and Windows)

This section describes the reserved symbol used for executing epilog scripts for UNIX or Windows jobs.

Symbol | Format | Description
--- | --- | ---
`NOP-EPILOG-execution_node` | A120 | Fully-qualified name of an epilog script file. Example: `NOP-EPILOG-517` Path to the shell file: /home/sag/jcl/epilog.node517.sh

> Symbol Table Search for Epilog Scripts

>   Entire Operations searches for `NOP-EPILOG-execution_node` in the symbol table hierarchy each time a job is submitted on a UNIX or Windows execution node.

>   The epilog script is not executed if `NOP-EPILOG-execution_node` cannot be found in any symbol table or if the value supplied with the reserved symbol is empty, contains a dash (`-`) or is set to `NO`.

>   If the reserved symbol is contained in the topmost symbol table (`SYSDBA/A`), the respective epilog script is executed for all UNIX and Windows jobs, except for those that reference a reserved symbol contained in a lower-ranking symbol table.

> Using Epilog Scripts

>   The shell script defined with `NOP-EPILOG-execution_node` must have executable rights.

>   The epilog script is invoked by the defined JCL frame script and starts to execute when the main script terminates.

>   If an epilog script is defined but cannot be found, the exit code of the job is set to 102 so that the whole job ends in error.

>   The epilog script does not accept any parameters. The epilog script can obtain information from environment variables set in the JCL frame script by using reserved symbols (see Reserved Symbols for UNIX and Windows Environment Variables).

>   Symbol replacement is not performed for the epilog script. The epilog script is directly executed by the frame script, without intermediate storage in Entire Operations.

>   A Windows epilog script must not end with an `exit` statement. Set an exit code as follows:

>       set errorlevel=exit_code

>   If the exit code defined in the epilog script is higher than the exit code of the frame script, the exit code of the main script is set to the exit code of the epilog script.

## Predefined Symbols

Predefined symbols perform special-purpose tasks for example, within JCL files or scripts. They are defined by Entire Operations and cannot be modified.

All symbol names starting with an asterisk (`*`) or `P-` are reserved for predefined read-only symbols. These prefixes must not be used for user-defined symbols.

Predefined symbols must not be defined in symbol tables.

This section covers the following topics:

- Table of Predefined Symbols

- Predefined Symbols for Multiple and Parallel Activations

- Predefined Symbols for Subnetworks and Recovery Jobs

### Table of Predefined Symbols

The following symbols are read-only. They can be used without defining them in a symbol table.

For further explanations of date and time formats, see also Date and Time Formats.

Symbol | Format | Description
--- | --- | ---
`*DATD` | A8 | Date in the format DD.MM.YY.
`*DATE` | A8 | Date in the format DD/MM/YY.
`*DATG` | A15 | Date in the format DDmonthnameYYYY (Gregorian date).
`*DATI` | A8 | Date in the format YY/MM/DD.
`*DATJ` | A5 | Date in the format YYDDD (Julian).
`*DATN` | N8 | Date in the format YYYYMMDD.
`*DATU` | A8 | Date in the format MM/DD/YY.
`*DAT4J` | A7 | Date in the format YYYYDDD (Julian).
`*TIME` | A10 | Time of day in the format HH:II:SS.T.
`*TIME8` | A8 | Time of day in the format HH:II:SS.
`*TIMN` | N7 | Time of day in the format HHMMSST. See also the symbol function `!TIMN`. This function allows the usage of constant time values. For single-digit hours (if before 10:00), the leading zero (`0`) will be contained.
`*TIMN6` | N6 | Time of day in the format HHMMSS. For single-digit hours (if before 10:00), the leading zero (`0`) will be contained.
`*TIMA6` | A6 | Time of day in the format HHMMSS. For single-digit hours (if before 10:00), the leading zero (`0`) will be contained.
`*TIMA7` | A7 | Time of day in the format HHMMSST. For single-digit hours (if before 10:00), the leading zero (`0`) will be contained.
`P-ACT-USER` | A8 | For manual activations: user ID of the user who activated the network or job. For subnetwork activations: activation user ID of the calling (parent) job. For scheduled activations: default user ID of the Entire Operations Monitor.
`P-ACT-ORIGIN` | A1 | Contains a letter that indicates the activation origin:
`A` | Activated by API.
`E` | Activated by EOJ action.
`M` | Activated manually.
`R` | Recovery.
`S` | Activated by schedule extraction.
`U` | Activated by API, as a subnetwork.
`P-DATE` | A8 | Execution date in the format YYYYMMDD. The date of the previous day is transmitted if the end time of the previous production day has not yet been reached.
`P-ESC-ACT` | A1 | Activation escape character (see Symbol Escape Characters), as defined for the current object (for example, a job). Notes: The value of `P-ESC-ACT` is not changed by the `#EOR-ESC-ACT` meta statement if defined in the JCL (see Definitions in JCL and Macro Sources). `P-ESC-ACT` can also be used as a predefined variable in meta statements defined in the macro JCL.
`P-ESC-SUB` | A1 | Submission escape character (see Symbol Escape Characters), as defined for the current object (for example, a job). Notes: The value of `P-ESC-SUB` is not changed by the `#EOR-ESC-SUB` meta statement if defined in the JCL (see Definitions in JCL and Macro Sources). `P-ESC-SUB` can also be used as a predefined variable in meta statements defined in the macro JCL.
`P-EXECUTION-NODE` | N5 | Execution node.
`P-JCL-FILE` | A250 | JCL file. If not applicable, an empty string is returned. `P-JCL-FILE` is always resolved to a fully-qualified file name. Nested replacement of symbols is performed. If the JCL node is a Windows node, backslashes (`\`) in the file name can be returned by slashes. For further usage in Windows BAT and Powershell JCL, the string `+F+&P-JCL-FILE` is to be used (with `&` as the escape character). Windows example, assuming the ampersand (`&`) is the escape character:
    P-JCL-FILE = e:/sag/nop/jcl/job1.bat

    type +F+&P-JCL-FILE
is resolved to
    e:\sag\nop\jcl\job1.bat
`P-JCL-MEMBER` |  | JCL member. If not applicable, an empty string is returned.
`P-JCL-NODE` | N5 | JCL node.
`P-JOB` | A10 | Job.
`P-JOB-ID` | A10 | Job ID (job number, BS2000 TSN, process ID).
`P-JI` | A10 | Job ID (job number, BS2000 TSN, process ID).
`P-MUL` | A8 | User who made last change (in lower case).
`P-MUU` | A8 | User who made last change (in upper case).
`P-NADIR` | A250 | Directory for temporary files for this network (UNIX and Windows only). Notes: On Windows nodes, the directory name contains backslashes (\). For the usage on mainframe (EBCDIC) environments, these backslashes will be returned encoded in trigraphs (see the relevant section in Submission of Jobs by Entire Operations). The content of `P-NADIR` can be subject to change in different Entire Operations versions.
`P-NETWORK` | A10 | Network.
`P-NETWORK-VERSION` | A10 | Network version.
`P-NODE` | N5 | Execution node.
`P-OWNER` | A10 | Owner of the network.
`P-REPEAT` or `P-REPEAT-COUNT` | N10 | Repeat count. Contains the number of the current repetition of the job (for example, if the job was resubmitted). Note These symbols will be replaced with a correct value only if they are preceded by the submission escape character.
`P-RUN` | N5 | Run number of the network.
`P-RUN5` | N5 | Run number of the network, always with 5 digits (with leading zeros). For example: The run number 7 will be returned as `00007`. This symbol is also available in the macro JCL.
`P-SGL` | A50 | UNIX group or Windows domain (in lower case) of the job.
`P-SGU` | A50 | UNIX group or Windows domain (as defined) of the job.
`P-SUL` | A50 | Job start user ID (in lower case).
`P-SUU` | A50 | Job start user ID (in upper case).
`P-SUBMIT-ID` | A50 | Job start user ID (as defined).
`P-SUBMIT-GRP` | A50 | UNIX group or Windows domain (as defined) of the job.
`P-SYSF1` | A10 | Concatenated DBID (database ID) and FNR (file number) of Entire Operations System File 1. Example: Entire Operations System File 1 has the LFILE setting `LFILE=(216,9,17)`. `P-SYSF1` will be set to `0000900017`.
`P-SYSOUT` | A250 | Name of the SYSOUT file. This variable and its effective (usable) size depend on the operating system in which the job is executed:
BS2000 | Available any time after activation. The effective size is 54.
z/OS | Not available. The value is set to three consecutive periods (`...`).
UNIX | Available any time after activation.
Windows | Available any time after activation. The file name is returned in UNIX syntax.
`P-SYMTAB` | A10 | Symbol table.
`P-SYMBOL-TABLE` | A10 | Symbol table.
`P-SYMTAB-VERSION` | A10 | Symbol table version.

### Predefined Symbols for Multiple and Parallel Activations

Symbol | Format | Description
--- | --- | ---
`PMPA` | A5 | Content of the suffix symbol of a multiple-value symbol. This symbol can be used in a master JCL node, an execution node and a SYSOUT node definition, prefixed with the activation escape character. For an execution node, you can also use the submission escape character as a prefix. This allows the execution of multiple parallel jobs on different nodes. The multiple-value symbol must be an array of valid node numbers or mnemonic node short names. See also `P-MPA`.
`P-MPA` | A50 | Full current value of the symbol containing the job name suffix if multiple jobs are activated in parallel. To redefine this field, code:
    § 1 P-MPA (A50)
    § 1 REDEFINE P-MPA ...
    #GET-SYMBOL P-MPA
See also `PMPA`.
`P-MPI` | N3 | Numeric index of the multiple-value symbol used for multiple jobs activated in parallel.
`P-SUFFIX` or `P-X` | A10 | Job name suffix if multiple and parallel job activation is in use. You can find detailed information about multiple and parallel job activation in the section Job Maintenance. `P-X` is an abbreviation for `P-SUFFIX`.

### Predefined Symbols for Subnetworks and Recovery Jobs

The table below lists and describes the symbols a subnetwork or recovery job requires to communicate with its invoking network or the calling job, respectively.

These symbols have the value of a blank, unless they are used in a subnetwork or a recovery job.

Symbol | Format | Description | Rec. Job | Subnet
--- | --- | --- | --- | ---
`P-C-EXEC-NODE` | N5 | Execution node of the calling job. | X | n/a
`P-C-JCL-NODE` | N5 | JCL node of the calling job. | X | n/a
`P-C-JOB` | A10 | Name of the calling job. | X | X
`P-C-MPA` | A50 | The full current value of the symbol, containing the suffix of the job which invoked the subnetwork if multiple and parallel job activation is in use in the calling network. To redefine this field, code:
    § 1 P-C-MPA (A50)
    § 1 REDEFINE P-C-MPA ...
    #GET-SYMBOL P-C-MPA
| X | n/a
`P-C-NETWORK` | A10 | Network of the calling job or invoked subnetwork. | X | X
`P-C-NETWORK-VERSION` | A10 | Network version of the calling job or invoked subnetwork. | X | X
`P-C-OWNER` | A10 | Owner of the calling job or invoking network. | X | X
`P-C-RUN` | N5 | Run number of the calling job or invoking network. | X | X
`P-C-RUN5` | N5 | 5-digit run number (with leading zeros) of the calling job or invoking network. For example: Run number 7 will be returned as `00007`. This symbol is also available in the macro JCL. | X | X
`P-C-SUFFIX` | A10 | Suffix value of the job which invoked the subnetwork where the symbol is used. | X | X
`P-C-SUG` | A20 | Submit group of the calling job. It is possible to define this symbol as the submit group in the jobs of the subnetwork, preceded by the activation escape character. (The subnetwork jobs must have a symbol table definition.) | X | n/a
`P-C-SUU` | A20 | Submit user ID of the calling job. It is possible to define this symbol as the submit user ID in the jobs of the subnetwork, preceded by the activation escape character. (The subnetwork jobs must have a symbol table definition.) | X | n/a
`P-C-SYMTAB` | A10 | Symbol table of the calling job or invoking network. | X | X
`P-C-SYMTAB-VERSION` | A10 | Symbol table version of the calling job or invoking network. | X | X

## Symbols in Node Definitions

In general, you can define all nodes used in network and job definitions as symbols. Extra rules and restrictions for nodes are described in the following section.

You can define a node as a symbol of up to 4 characters that is preceded by the activation escape character, for example, `§NODE`.

You can also use the predefined symbol `PMPA` preceded by the activation escape character, for example, `§PMPA`. See also Predefined Symbols in the section Symbol Table and Symbol Maintenance.

This section describes restrictions and special considerations that apply when using a symbol for a node:

- Using Symbols in Message Sending Nodes

### Using Symbols in Message Sending Nodes

Symbol use for message sending nodes is currently only possible on the Entire Operations CUI client.

| Warning: Using symbols for message nodes on Entire Operations GUI client can produce severe errors.

When using the activation escape character as a symbol prefix, the symbol is evaluated immediately, and the message can be sent at job activation time.

## Validating Symbol Values with a User Exit

You can define a user exit to check the validity (plausibility) of symbol values during symbol modification or prompting.

For detailed information on writing a user exit, see User Exits for Validation Checks of Symbol Values in the section User Exits.

To check symbol values with a user exit

1. Press PF11 (Exit) in a Symbol Master Definition/Modification window.

   A Definition of Symbol Check Exit window like the example below opens:

       +-------------------------------------------------------------------+
       |                                                                   |
       |                Definition of Symbol Check Exit                    |
       |                                                                   |
       |  Owner         ===> SAG                                           |
       |  Symbol Table  ===> ADMIN                                         |
       |  Version       ===>                                               |
       |  Symbol        ===> CLASS                                         |
       |                                                                   |
       |  Library       ===> ________                                      |
       |  Exit          ===> ________                                      |
       |                                                                   |
       |  ---PF1-----PF3---PF4---PF5---------PF9---------------------      |
       |     Help    End   Edit  Save        Delete                        |
       +-------------------------------------------------------------------+

2. Enter or change the entries in the Library and Exit fields. The input fields are described in Definition of Symbol Check Exit in the section Fields: Symbol.

3. Press PF5 (Save) when you are finished.

> Special PF Keys: Symbol Check Exit

>   The following special PF keys are available in the Definition of Symbol Check Exit window:

>   PF Key | Name | Function
>   --- | --- | ---
>   PF4 | Edit | Edit or create a user exit. Do not forget to `STOW` the routine so it can be used.
>   PF9 | Delete | Removes the user exit from the selected symbol definition but keeps all related user exit objects in the library.

## Global Symbol Modification Exit

For active symbol modification, a global symbol modification exit (described in the Administration documentation) can be defined. This global exit is only used if there is no specific exit defined on the network level. The global exit is called with the same parameter list as the exit on the network level.

## Symbol Setting triggered by the SYSOUT of a Job

This option applies to UNIX and Windows only.

It is possible to set symbols during a job’s End-of-Job checking, triggered by a meta command in the job’s SYSOUT. The meta command is `EOR-SYMBOL`.

With this meta command, it is possible to set an Entire Operations symbol during the End-of-Job checking of a job.

The meta command is available for jobs running on UNIX or Windows.

The symbol will be set into the active job's active symbol table or symbol table master. If the active job has no active symbol table, the job result is set to `not ok`.

#### Syntax:

EOR-SYMBOL SA symbol=value

Sets an active symbol.

EOR-SYMBOL SM symbol=value

Sets a symbol master.

The meta command can be generated, for example, with an echo command:

    echo "EOR-SYMBOL SA SYMBOL1=$HOSTNAME"

With `HOSTNAME=pcsn` this produces the SYSOUT line:

    EOR-SYMBOL SA SYMBOL1=pcsn

During End-of-Job checking, the symbol `SYMBOL1` in the job's active symbol table will be set to `pcsn`.

The echo command can be generated dynamically by using symbol replacement. Therefore, this kind of symbol setting is very flexible.

Example:

    echo "EOR-SYMBOL SA PID.&*TIMN=$$"

creates the SYSOUT line:

    EOR-SYMBOL SA PID.1131185=4837

## Deleting a Symbol

The options provided to delete a symbol master or an active symbol from a symbol table are described in the following section.

To delete a symbol from the symbol table master

1. On the Symbol Table Master screen, type `D` in the line command input field next to the symbol you want to delete. Press ENTER.

   A confirmation window opens.

2. Type in the symbol name to confirm deletion and press ENTER.

   The symbol is deleted and the confirmation window closes.

Note
You can delete individual symbols from a symbol table even if the table is specified for one or more MAC-type jobs. If the symbol table is specified for any job, the deleted symbol cannot be substituted when the JCL is dynamically generated. The Monitor records this event by writing a message to the log.

### On this page

- Listing Symbols of a Symbol Table
- Displaying a Symbol
- Modifying a Symbol
- Adding a Symbol
- Defining Multiple Symbol Values
- Specifying a Range Check for Numeric Symbol Values
- Reserved Symbols
- Predefined Symbols
- Symbols in Node Definitions
- Validating Symbol Values with a User Exit
- Global Symbol Modification Exit
- Symbol Setting triggered by the SYSOUT of a Job
- Deleting a Symbol