This section describes possible reasons for object rejection during function processing, the status messages displayed after processing, and error notification during processing.
If, during the execution of a SYSMAIN function, one or more objects were found to satisfy the specified selection criteria, but some or all of these objects were then rejected for further processing, any of the following Natural system errors occurs:
4867:Nothing found for this request.
4810:All data rejected by these selection criteria.
4893:Normal completion, but some data were rejected.
You can use the SYSMAIN command TOTAL
(see Special Commands issued to
SYSMAIN) to review the specific status of a request.
Possible reasons for object rejection are described in the following section:
An object was selected and then rejected because the object type was not valid for the type of processing specified. For example, when processing programming objects, all maps are rejected if processing has been restricted to objects of the type program or subroutine.
An object was selected and then rejected because the date or time on which the specified object was saved or cataloged did not fall within the date or time range specified.
An object was selected and then rejected because the user ID or terminal ID by which the specified object was saved or cataloged did not match with the user ID or terminal ID specified.
A cataloged object was selected and then rejected because the profile parameter
RECAT
was set to ON
and there was no saved
(source) object corresponding to the cataloged object. See also: Using Profile Parameter
RECAT.
A saved (only) object was selected and then rejected because the profile parameter
RECAT
was set to ON
and the target environment
already contained a cataloged object with the same name. See also: Using Profile Parameter
RECAT.
An object was selected and then rejected because the target environment already
contained an object identified by the same name, and the replace option was not
activated (Replace field set to N
or keyword
REPLACE
not specified).
A cataloged programming object of type S
(subroutine) was selected and
then rejected because the name of the external subroutine was identical to the name
of another subroutine in the target library.
A cataloged programming object of type 4
(class) was selected and then
rejected because the name of the external class was identical to the name of another
class in the target library.
The XREF option was activated (XREF field not set to
N
or keyword XREF
specified) and there were no XRef data
for the programming object specified.
A user exit routine was active and a non-zero return code was returned during processing of the object.
An extended (long) error message was selected and then rejected because there was no corresponding short error message in the source library.
An extended (long) error message was selected but could not be processed because there was no corresponding short error message in the target environment.
A short error message was selected to be moved, deleted or renumbered, but could not be processed because the corresponding extended error text was not included in the selection criteria. An extended error message must always have a corresponding short error message.
A library was specified which is controlled by Predict Application Control/Predict Application Audit, and the object cannot be handled by SYSMAIN.
The table below describes the status messages that can be displayed in the Message column of a Selection screen or in a batch report (see also Online Report Mode) after a SYSMAIN function was performed on an object. For the line commands mentioned, refer to Selection Lists in the object-type specific sections of the SYSMAIN documentation.
Message | Explanation | Function completed? |
---|---|---|
Class Exists
|
Only applies to programming objects.
The cataloged object of a class had an external class name already used by another cataloged object of a class in the target environment. |
No |
Copied
|
One of the following line commands was executed from a
Copy/Rename Selection screen: |
Yes |
DB Error: nnn
|
A database error was returned for the object during processing. | No |
Deleted
|
One of the following line commands was executed from a Delete
Selection screen: |
Yes |
Dev exists
|
Only applies to profiles.
The replace option was set to |
No |
Directory
|
Line command I (display directory) was executed
from a Selection screen.
|
Yes |
Edt exists
|
Only applies to profiles.
The replace option was set to |
No |
Err: NAT2999
|
Only applies to programming objects.
A cataloged object was being
processed with the XREF option set to |
No |
Err: NAT4852
|
A Natural Security violation occurred. | No |
Exit: nnn
|
A user exit routine was active and a non-zero return code was returned by the exit (nnn = the return code). See also User Exit Routines. | No |
Exported
|
Only applies to programming objects and DDMs.
Line command
|
Yes |
Ext Exists
|
Only applies to error messages.
An attempt has been made to delete only the short error message of an error message for which an extended (long) error exists. This would have resulted in an extended (long) error message with no corresponding short message. This is not permitted in Natural. |
No |
File Listed
|
Only applies to rules.
Line command |
Yes |
In Use
|
An Adabas response code 145 was returned during
Natural UPDATE/READ processing of an object.
|
No |
Invalid
|
Only applies to debug environments.
An invalid line command was entered for one of the debug environments listed on a Selection screen. |
No |
Listed
|
Not applicable to DDMs and debug environments.
Line command
|
Yes |
Map exists
|
Only applies to profiles.
The replace option was set to |
No |
Moved
|
One of the following line commands was executed from a Move
Selection screen: |
Yes |
Must be Auto
|
Only applies to rules.
Line command |
No |
Name Erro
|
Only applies to debug environments.
The rename function was used, but the new name specified was found to be invalid. Either no new name was specified for the selection, or the specified name either contained invalid special characters or did not start with an alphabetic character. |
No |
NBP Deleted
or
|
Only applies to programming objects.
Line command
|
Yes/No |
No Lang 1
|
Only applies to error messages.
Only language code |
No |
no Short Err
|
Only applies to error messages.
An extended (long) error message was selected for further processing, but the target error message number has no corresponding short error message. |
No |
No Xref
|
Only applies to programming objects.
A cataloged object was being
processed and the XREF option was set to |
No |
Not Found
|
Only applies to error messages and profiles.
An error in the update logic occurred during processing and the requested error message or profile could not be found. This implies that the specified error message or profile was deleted in the time between selection and update. |
No |
Not Replaced
or
|
The replace option was set to N and one of the following line
commands was executed from a Copy/Move/Rename Selection
screen:
The object with the same name in the target environment was not replaced. |
No |
Parm exists
|
Only applies to profiles.
The replace option was set to |
No |
Printed
|
Only applies to programming objects and rules.
Line command
|
Yes |
Renamed
or
|
Only applies to debug environments and error messages.
One of the
following line commands was executed from a Rename
Selection screen: The message returned upon completion of processing is either
|
Yes |
Renamed as
or
|
Only applies to programming objects.
Line command
|
Yes |
Replaced
|
The replace option was set to Y and one of the following line
commands was executed from a Copy/Move/Rename Selection
screen:
The object with the same name in the target environment was replaced. |
Yes |
Sized
|
Only applies to programming objects.
Line command
|
Yes |
Subrtn Exists
|
Only applies to programming objects.
The cataloged object of a subroutine had an external subroutine name already used by another cataloged subroutine in the target environment. |
No |
Updated
|
Only applies to error messages.
The text in the specified language did not previously exist for the error message selected, and SYSMAIN has updated the error message with the new language text. |
Yes |
Src locked
|
Only applies to programming objects.
Line command
The object was not processed because the source of the respective object was being locked. |
No |
SYSMAIN always attempts to recover in the event of a runtime error during processing.
This feature is automatically activated and uses the system variable
*ERROR-TA
(see also *ERROR-TA in the
System Variables documentation). This feature is deactivated when
SYSMAIN is terminated normally.
If a terminal command (see also %% and %. -
Interrupt Current Operation in the Terminal
Commands documentation) is used to terminate SYSMAIN, this is considered an
abnormal termination, and the *ERROR-TA
system variable is
not reset. It can be reset by re-invoking SYSMAIN and terminating it normally. In the
event that you have set the *ERROR-TA
system variable,
SYSMAIN resets it to its previously assigned value upon termination.
If invalid data has been specified with respect to the selection criteria, an error
message is displayed in the message line. If you are uncertain as to the meaning of the
short error message, the special command DISPLAY
(see also Special Commands
Issued to SYSMAIN) can be entered to activate a display of the corresponding
extended (long) error message text.
This section covers the following topics:
If invalid data has been specified with respect to the selection criteria, an error message is displayed in the message line. In some situations the online help facility for particular entries is invoked. This feature provides you with more detailed information on the error.
If an error occurs in batch mode, an error message and corresponding error number are printed and the SYSMAIN utility is terminated.
If you make a request which causes a processing error, SYSMAIN issues an error report as shown in the example below:
16:51:08 *** SYSMAIN Error Report *** 2005-08-10 The following internal error occurred while processing the SYSMAIN function xxxxxx (cc): Error in field specification for IF SELECTION statement. Error Number .. eeee Program ....... pppppppp Status Code ... s Status ...... tttttttt Line .......... llll Level ....... vv Device ........ dddddddd User ID ....... uuuuuuuu User Name ... nn...nn |
The information contained in the window is useful for analyzing the cause of the error.
The values in the window above have the following meanings:
Field | Value | Explanation | |||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
SYSMAIN function | xxxxxx | The SYSMAIN function that is being performed. | |||||||||||||||||||||||||
cc | An internal status code useful for Software AG technical support. The
following codes can be displayed:
|
||||||||||||||||||||||||||
Error Number | eeee | Corresponds to the system variable *ERROR-NR (see the System
Variables documentation).
|
|||||||||||||||||||||||||
Program | pppppppp | Corresponds to the system variable *PROGRAM (see the System
Variables documentation).
|
|||||||||||||||||||||||||
Status Code | s | The kind of error. Possible codes are:
|
|||||||||||||||||||||||||
Line | llll | Corresponds to the system variable *ERROR-LINE (see the System
Variables documentation).
|
|||||||||||||||||||||||||
Device | dddddddd | Corresponds to the system variable *DEVICE (see the System
Variables documentation).
|
|||||||||||||||||||||||||
User ID | uuuuuuuu | Corresponds to the system variable *USER (see the System
Variables documentation).
|
|||||||||||||||||||||||||
Status | tttttttt | Corresponds to the system variable *ERROR-TA
(see the System Variables
documentation).
|
|||||||||||||||||||||||||
Level | vv | Corresponds to the system variable *LEVEL (see the System
Variables documentation).
|
|||||||||||||||||||||||||
User Name | nn...nn | Corresponds to the system variable *USER-NAME (see the System
Variables documentation).
|
If a processing error occurs, note the information in the window and press ENTER. The SYSMAIN utility attempts to recover to the last active menu screen, leaving the data values of the input fields unchanged.
If the special command DISPLAY
is entered in the window (see also
Special Commands Issued to SYSMAIN), the extended (long) message
text for the error incurred is displayed.
If a processing error occurs during batch processing, the SYSMAIN utility prints the relevant error message and terminates.
Certain user errors can also cause the window to be displayed. Although SYSMAIN attempts to trap all errors during evaluation, this may not always be entirely successful. For example, if a user requests that a DDM be copied from one environment to another, but specifies an invalid database ID (DBID), SYSMAIN attempts to access this database. An Adabas response code of 148 is returned, and the SYSMAIN ERROR transaction is invoked and the window displayed. Similarly, an invalid file can result in a number of errors being sent from the database.
In situations in which an Adabas response code 9 is returned,
SYSMAIN writes a message informing you of the error and restarts processing from the
last function or menu. If a particular request had not been completed, you can assume
that the response code 9 resulted in a BACKOUT
TRANSACTION
to the last non-completed transaction.