Processing Error Messages

#### Search Results

Search

# Processing Error Messages

All SYSMAIN functions can be performed on user-defined and Natural system error messages. Error messages can be moved from one library to another, or the language texts of each error message can be copied, moved or replaced. In addition, it is possible to renumber a single error message or a range of error messages by using the rename function.

Only authorized users can process Natural system error messages if Natural Security is installed.

Error messages are stored in the system files according to their type: Natural system error messages are stored in the FNAT system file and user-defined error messages in the FUSER or FNAT system file.

This section describes menu functions and selection list options provided to perform a SYSMAIN function on error messages and the syntax that applies when using direct commands.

- Fields in Error Message Menus

- Selection Lists for Error Messages

- Renumbering Error Messages

- Specifying Languages

- Direct Command Syntax for Error Messages

#### Related Topic:

SYSERR Utility documentation.

## Fields in Error Message Menus

The Error Message Texts menus contain all SYSMAIN functions required for the processing of error messages. The fields that can be provided in a menu are described in the following table:

Field | Explanation
--- | ---
Code |
Specifies whether a short and/or an extended (long) error message is to be processed. Possible values are:
`A` | Any error message for which a short and/or an extended (long) message exists is processed.
`E` | Any error message for which an extended (long) error message exists is processed. Only extended error messages with corresponding short error messages are processed. An extended error message cannot be transferred to a target environment if there is no corresponding short error message in the target environment.
`S` | Any error message for which a short error message exists is processed.
Sel. List |
Specifies whether selective processing or automated processing is used:
`Y` | Yes. Selective processing is activated. A selection list is displayed when processing error messages. This is the default setting. For the columns and line commands available on a selection list, see Selection Lists for Error Messages.
`N` | No. Selective processing is deactivated.
No. From or Number | The number of the error message to be processed, or the start number of a range of numbers if an end number is entered in the No. To field. See also Renumbering Error Messages.
No. To | The end number of a range of error messages numbers to be processed if a start number is entered in the No. From field. See also Renumbering Error Messages.
New From | Applies to the rename function. The new number to be given to an existing error message, or the start number of a range of new numbers to be given to a range of existing error messages. See also Renumbering Error Messages.
New To | Applies to the rename function. The end number of a range of new error message numbers to be given to a range of existing error message. See also Renumbering Error Messages.
Library | The name of a source or a target library or a range of names. If you want to process Natural system error messages, leave the Library field empty. The source library contains the error message(s) to be processed. The target library is the library to which the error message is to be copied or moved, or where the error message is renumbered. See also Listing and Selecting Libraries.
Lang. | The language code(s) in which the error message is available. The languages can be specified using any combination of language codes. For information on which language code is assigned to which language, see Language Code Assignments in *LANGUAGE in the System Variables documentation. For Natural system extended (long) error messages, only language code `1` is available. Enter an asterisk (*) to select error messages in all existing languages. See also Specifying Languages.
Database | The database ID (DBID) of a source or a target database. The source database contains the library and system file where the error message to be processed is stored. The target database contains the library and system file to which the error message is to be copied or moved, or where the error message is renumbered. Valid database IDs are `1` to `65535`.
File | The file number (FNR) of a source or a target system file. Valid file numbers are `1` to `65535`. The source file contains the library where the error message to be processed is stored. The target file contains the library to which the error message is to be copied or moved, or where the error message is renumbered.
Replace |
Specifies whether an error message is to be replaced when using the move, copy or rename function:
`Y` | Yes. An error message with the same number which exists in the target environment is replaced.
`N` | No. An error message with the same number which exists in the target environment is not replaced. This is the default setting.
See also Using the Replace Option.

## Selection Lists for Error Messages

If selective processing has been activated, a selection list of all error messages that meet the specified selection criteria is displayed on a Selection screen.

This section describes the columns contained on a Selection screen and the line commands provided to further process an error message:

- Columns

- Line Commands

### Columns

The following columns are displayed on a Selection screen:

Column | Explanation
--- | ---
C | Input field for line commands (see below).
Error | The name of the error message that meets the specified selection criteria.
Error Message Text | The text of the short error message.
Type | The type of error message: `S` (short) and/or `E` (extended/long).
Lang | The first language code in sequence or alphabetical order that exists for the error message. If you want to display all languages that exist for an error message, on a Selection screen, enter the line command `L` or use the list function.
Message | The message that indicates the processing status of an error message. This column only appears after a line command was executed on an error message. For possible messages, see Status Messages.

### Line Commands

One of the following line commands can be entered in the C (Command) column of a Selection screen:

Line Command | Function
--- | ---
`A` | Process any type of message listed in the Type column. The type can be: short (`S`), extended/long (`E`) or short and extended (`S/E`).
`E` | Process the extended (long) message if the corresponding short message exists in the target environment. If `E` is specified for a message which exists only as a short message, an error is returned.
`S` | Process all short messages.
`L` | Review an error message before processing it. The short and/or extended (long) error message is displayed for all existing languages, depending on the function specified previously in the Error Message Texts menu. This line command can also be used on a Library Selection screen (see also Listing and Selecting Libraries).

## Renumbering Error Messages

You can renumber a single error message or a range of error messages.

To renumber a single error message

1. In the No. From field, enter the number of the error message you want to renumber and, in the New From field, enter the new error message number.

2. In the Source Library field, enter the name of the library that contains the error message to be renumbered.

   If you want the renumbered error message to be placed in a different library, enter a name in the Target Library field.

To renumber a range of error messages

1. In the No. From field, enter the start number of the range of error messages to be renumbered and, in the No. To field, enter the end number.

   In the New From field, enter the start number of a new range of error messages, and in the New To field, enter the end number.

   The number of error messages specified by the range in the No. From and No. To fields of the source library must be equal in number to the range in the New From and New To fields of the target library. For example, it is not possible to renumber error message numbers 1 - 6 as new error message numbers 7 - 10.

   If you want to renumber a range of error messages within a single library, range values must not overlap. For example, it is not possible to renumber error message numbers 1 - 6 as new message numbers 5 - 10.

2. In the Source Library field, enter the name of the library that contains the error messages to be renumbered.

   If you want the renumbered error messages to be placed in a different library, enter a name in the Target Library field.

See also the examples of range specifications in RENAME in Direct Command Syntax for Error Messages.

## Specifying Languages

When specifying languages consider the following:

- If the list function is performed and the specified language code does not exist for the error message, SYSMAIN uses the default language specified with the system variable `*LANGUAGE` (see *LANGUAGE in the System Variables documentation).

- If an asterisk (*) is specified for a source error message, all language codes defined for this error message will overwrite any language codes defined for the target error message.

  For example: If the source error message exists only in languages `1`, `2` and `3`, and for the target error message only languages `1`, `4` and `6` are defined, after performing a copy function, the resulting target error message exists only in languages `1`, `2` and `3`.

- If the languages are specified as individual codes, each occurrence of language code is processed individually.

  For example: If the source error message contains languages `1`, `2` and `3`, and the language codes are set to `123`, and if the target error message contains languages `1`, `4` and `6`, and the language codes are also set to `123`, after performing a copy function, the resulting target error message contains languages `1`, `2`, `3`, `4` and `6`, but only the English target error message (language `1`) is overwritten by the English text of the source error message.

- If a single language code is specified for the source error message and multiple language codes are specified for the target error message, after performing the copy function, the resulting target error message is in the first language specified for the target.

## Direct Command Syntax for Error Messages

This section shows the syntax that applies when performing a SYSMAIN function on error messages by using direct commands in either online or batch mode. For general instructions on using direct commands, refer to Executing Commands.

For explanations of the keywords and variable values used in the syntax diagrams below, refer to Keywords and Variables in Direct Commands. The symbols in the syntax diagrams correspond to the syntax symbols used for system commands. These symbols are explained in System Command Syntax in the System Commands documentation.

The syntax of the where-clause and the with-clause are identical for each command.

Important
For system error messages, specify `NATURAL-SYSTEM` or `NATURAL-SYS` as lib-name.

This section covers the following topics:

- COPY and MOVE

- DELETE

- FIND

- LIST

- RENAME

- where-clause

- with-clause

### COPY and MOVE

| `COPY` `MOVE` |  | `ERROR` |  |
number | [`THRU` number]
| `FM` [`LIBRARY`] lib-name [where-clause]
|  |  |  |  | `TO` [`LIBRARY`] lib-name [where-clause] [with-clause]

#### Examples:

    COPY ERROR 1 FM ACCOUNTS TO ACCOUNTS1 REP WITH TYPE A

    C ERROR 1 THRU 50 FM ACCT WHERE DBID 1 FNR 10 LANG 123456 TO ACCT WHERE DBID 5 FNR 26 LANG 234567 WITH REP HELP

    MOVE E 200 THRU 210 FM ACCT FNR 10 LANG 123 TO ACCT LANG 123 TYPE S

    M E 376 TYPE E FM ACCT LANG E TO ACCT LANG G

### DELETE

`DELETE` | `ERROR` | number | [`THRU` number] |  |
|  |  |  | `IN` [`LIBRARY`] lib-name |  | [where-clause] | [with-clause]

#### Examples:

    DELETE ERROR 1 THRU 10 IN LIBRARY ACCT WHERE DBID 1 FNR 2 PSW GUESS CIPH 137561 WITH TYPE E MON HELP

    D E 100 IN ACCT

### FIND

`FIND` | `ERROR` | number |  | `IN` [`LIBRARY`] lib-name |  | [where-clause] | [with-clause]

#### Examples:

    FIND E 4280 IN A* MON

    F ERROR 10 IN LIB ACCT WHERE DBID 1 FNR 3 WITH TYPE E

### LIST

`LIST` | `ERROR` | number | [`THRU` number] |  | `IN` [`LIBRARY`] lib-name |  | [where-clause] | [with-clause]

#### Examples:

    LIST E 1 THRU 10 IN ACCT

    L ERROR 100 THRU 150 IN LIB ACCT WHERE DBID 12 FNR 5

### RENAME

When renumbering a range of error messages within a single (source) library, the range values must not overlap as demonstrated in Examples of Invalid Number Ranges.

`RENAME` | `ERROR` | number | [`THRU` number] `AS` new-number
|  |  | [`THRU` new-number] [with-clause]
|  |  | `IN` [`LIBRARY`] lib-name [where-clause]
|  |  | `TO` [`LIBRARY`] lib-name [where-clause]

#### Examples:

    RENAME ERR 1 AS 101 IN ACCT

    R ERROR 1 THRU 100 AS 101 THRU 200 IN CLAIMS

    R ERROR 101 THRU 200 AS 1 THRU 100 IN CLAIMS

    RENAME ERROR 1 THRU 50 AS 11 THRU 60 WITH TYPE A REP HELP MON RCOP IN LIBRARY ACCT WHERE DBID 1 FNR 2 TO LIB ACCOUNT WHERE FNR 3

#### Examples of Invalid Number Ranges:

The following examples are invalid, because the number ranges overlap:

    R ERROR 1 THRU 100 AS 51 THRU 150 IN CLAIMS

    R ERROR 101 THRU 200 AS 51 THRU 150 IN CLAIMS

### where-clause

[`WHERE`] [`DBID` dbid] [`FNR` fnr] [`NAME` vsam-name] [`CIPHER` cipher]
|  | `PASSWORD` `PSW` |  | password |  | [`LANGUAGE` language] | [`SEC` (dbid,fnr,password,cipher)]

#### Separators

Commas must be used as separators between the values following the `SEC` keyword, or if a value is missing. For example: `SEC (10,,secret,2a)`. If the session parameter `ID` (see ID - Input Delimiter Character in the Parameter Reference documentation) has been set to a comma, use a slash (/) as the separator between values.

### with-clause

[`WITH`] [`TYPE` type] [`REPLACE`] [ `RCOP`] |  | `PROMPT` `NOPROMPT` |  |  | `MON` `NOMON` |  | [`HELP`]

### On this page

- Fields in Error Message Menus
- Selection Lists for Error Messages
- Renumbering Error Messages
- Specifying Languages
- Direct Command Syntax for Error Messages