This section contains information on the types of message and message languages that can be managed with the SYSERR utility and how messages are issued and retrieved in your Natural system environment.
The following graphic illustrates the features of the SYSERR utility and how messages are processed within Natural:
This section covers the following topics:
There are two types of message: Natural (system) messages and user-defined messages:
Natural system messages are issued by the Natural nucleus and Natural
utilities. Natural system messages are delivered by Software AG and stored as
message files in the Natural system file FNAT. Natural system messages begin with
NAT
, followed by a four-digit number, for example,
NAT0230.
User-defined messages are issued by applications written by a user. User-defined messages are stored as message files in libraries (including SYS-libraries) in the system file FUSER or FNAT.
A message can be translated into different languages. Each language is stored in a separate message file. A maximum of 9999 messages can be stored per library and message file.
There are four types of message text:
Natural system short message
Natural system long message
User-defined short message
User-defined long message
A short message is the one-line message which is displayed in the message line when the corresponding error situation occurs.
A long message is a detailed explanation of the corresponding short message and includes instructions for solving problems.
Caution:
Keep in mind that any modifications of Natural system messages can
result in wrong messages or a loss of modifications when a new Natural version
is released.
Messages can be created in up to 60 languages as described for the
system variable *LANGUAGE
in the System Variables documentation.
The following rules and restrictions apply:
Natural system short messages must be entered in English first, and can then be translated into any other language.
Natural system long messages can be entered in English, but cannot be translated into other languages.
User-defined short messages can be entered in any language, and then be translated into any other language.
User-defined long messages can be entered in any language, but only if the corresponding short message in the same language already exists.
For every short and long message a code page may be saved.
With session parameter SRETAIN=OFF
the current
session code page (*CODEPAGE)
is assigned to an error message when it is saved.
When reading an error message with SYSERR with session parameter
SRETAIN=OFF,
an error message will be converted into the
current session code page. For further information see
Code Page Support for
Editors, System Commands and Utilities in section
Development Environment of the Unicode and Code
Page Support documentation.
This section contains information on the Natural statements
INPUT
and REINPUT
that are used to issue a Natural
system short message or a user-defined short message in a Natural program.
To issue a Natural system short message in a program
Specify one of the following Natural statements:
INPUT WITH TEXT *-nnnn ' '
or
REINPUT WITH TEXT *-nnnn
where nnnn is the number of the requested message (you can omit leading zeros).
To issue a user-defined short message in a program
Specify one of the following Natural statements:
INPUT WITH TEXT *nnnn ' '
or
REINPUT WITH TEXT *nnnn
where nnnn is the number of the requested message (you can omit leading zeros).
A message text can contain variable parts that are identified by the
notation :n:
, where
n represents occurrences 1 to 7. These variable
parts are replaced by a value at runtime.
For details, see operand3 in the section INPUT Syntax 1 - Dynamic Screen Layout Specification and operand3 in the section REINPUT in the Statements documentation.
When a program references a Natural system short message, Natural looks for the requested message number in the Natural system file FNAT in the following order:
Under the current language code as determined by the system variable
*LANGUAGE
,
Under language code 1 (English).
If neither of the above is found, a program references a message that
does not exist and you only receive the message number prefixed with
NAT
, for example, NAT0230.
When a program references a user-defined short message, Natural first
looks for the requested message number nnnn under
the current language code as determined by the system variable
*LANGUAGE
(see the System Variables documentation). If that message
does not exist, Natural looks for the requested message number
nnnn under language code 1 (English). If that
message does not exist either, Natural looks for message number
n000
(where
n is the first digit of the requested message
number) under language code 1.
These three search steps are first performed in the current library. If nothing is found there, further libraries are searched in the same way until a corresponding message is found.
The sequence of libraries for the search is as follows:
The current library as determined by the system variable
*LIBRARY-ID
,
The steplibs; if Natural Security is installed, the sequence in which the steplibs are specified in the Natural Security profile of the current library,
The default steplib as determined by the system variable
*STEPLIB
,
The library SYSTEM in the system file FUSER (*),
The library SYSTEM in the system file FNAT (*).
(*) If the name of the current library begins with SYS, SYSTEM FNAT is searched before SYSTEM FUSER.
When you receive a short message, you may be looking for additional information on the problem situation.
With the system command HELP
, you can
display Natural system long messages or user-defined long messages.
With the system command LASTMSG
, you
can list the short test of the message(s) that occurred last and additional
information on the error situation. The information displayed includes
associated error messages that possibly preceded the last message.
Both commands are described in the System Commands documentation.