Dieses Kapitel beschreibt mögliche Gründe für die Ablehnung von Objekten während der Funktionsverarbeitung, die nach der Verarbeitung angezeigten Statusmeldungen und die Fehlerbenachrichtigung während der Verarbeitung.
Wenn bei der Ausführung einer SYSMAIN-Funktion ein oder mehrere Objekte gefunden wurden, die den angegebenen Auswahlkriterien entsprechen, aber einige oder alle dieser Objekte zur weiteren Verarbeitung abgelehnt wurden, tritt einer der folgenden Natural-Systemfehler auf:
Nummer | Fehlertext |
---|---|
4867 | Nothing found for this
request. |
Zu dieser Anforderung wurde nichts gefunden. | |
4810 | All data rejected by these
selection criteria. |
Daten wurden aufgrund dieser Auswahlkriterien abgelehnt. | |
4893 | Normal completion, but some
data were rejected. |
Normale Erledigung, aber einige Daten wurden abgelehnt. |
Sie können das SYSMAIN-Kommando
TOTAL
(siehe An SYSMAIN absetzbare spezielle Kommandos) benutzen,
um den individuellen Status einer Anfrage zu überprüfen.
Mögliche Gründe für die Ablehnung von Objekten sind im folgenden Abschnitt beschrieben:
Ein Objekt wurde ausgewählt und dann abgelehnt, weil der Objekttyp für die angegebene Art der Verarbeitung nicht gültig war. Bei der Verarbeitung von Programmierobjekten werden beispielsweise alle Maps abgelehnt, wenn die Verarbeitung auf Objekte vom Typ Programm oder Subroutine beschränkt wurde.
Ein Objekt wurde ausgewählt und dann abgelehnt, weil das Datum oder die Uhrzeit, zu der das angegebene Objekt gespeichert oder katalogisiert wurde, nicht in dem angegebenen Datums- oder Zeitbereich liegt.
Ein Objekt wurde ausgewählt und dann abgelehnt, weil die Benutzerkennung oder Terminal-Kennung, unter der das angegebene Objekt gespeichert oder katalogisiert wurde, nicht mit der angegebenen Benutzerkennung oder Terminal-Kennung übereinstimmte.
Ein katalogisiertes Objekt wurde ausgewählt und dann
abgelehnt, weil der Profilparameter RECAT
auf
ON
gesetzt war und es kein gespeichertes (Quellcode-)Objekt gab,
das dem katalogisierten Objekt entsprach. Siehe auch
Profilparameter RECAT
verwenden.
Es wurde (nur) ein gespeichertes Objekt ausgewählt und dann
abgelehnt, weil der Profilparameter RECAT
auf
ON
gesetzt war und die Zielumgebung bereits ein katalogisiertes
Objekt mit demselben Namen enthielt. Siehe auch
Profilparameter RECAT
verwenden.
Ein Objekt wurde ausgewählt und dann abgelehnt, weil die
Zielumgebung bereits ein Objekt mit demselben Namen enthielt und die
Ersetzungsoption nicht aktiviert war (Feld Replace auf
N
gesetzt oder Schlüsselwort REPLACE
nicht
angegeben).
Ein katalogisiertes Programmierobjekt vom Typ S
(Subprogramm) wurde ausgewählt und dann abgelehnt, weil der Name der externen
Subroutine mit dem Namen einer anderen Subroutine in der Ziel-Library identisch
war.
Ein katalogisiertes Programmierobjekt vom Typ 4
(Class) wurde ausgewählt und dann zurückgewiesen, weil der Name der externen
Class mit dem Namen einer anderen Class in der Ziel-Library identisch war.
Die Option XREF war aktiviert (Feld
XREF
nicht auf N
gesetzt oder Schlüsselwort
XREF
angegeben) und es waren keine XRef-Daten für das angegebene
Programmierobjekt vorhanden.
Eine User-Exit-Routine war aktiv, und bei der Verarbeitung des Objekts wurde ein Rückgabe-Code ungleich Null zurückgegeben.
Eine erweiterte (lange) Fehlermeldung wurde ausgewählt und dann abgelehnt, weil keine entsprechende kurze Fehlermeldung in der Quell-Library vorhanden war.
Eine erweiterte (lange) Fehlermeldung wurde ausgewählt, konnte aber nicht verarbeitet werden, weil es in der Zielumgebung keine entsprechende kurze Fehlermeldung gab.
Eine kurze Fehlermeldung wurde zum Verschieben (Move), Löschen (Delete) oder Umnummerieren (Rename) ausgewählt, konnte aber nicht verarbeitet werden, weil der entsprechende erweiterte Fehlertext nicht in den Auswahlkriterien enthalten war. Zu einer erweiterten Fehlermeldung muss immer eine entsprechende kurze Fehlermeldung vorhanden sein.
Es wurde eine Library angegeben, die von Predict Application Control/Predict Application Audit kontrolliert wird, und das Objekt kann nicht von SYSMAIN behandelt werden.
Die folgende Tabelle beschreibt die Statusmeldungen, die in der Spalte Message eines Auswahlbildschirms oder in einem Batch-Report (siehe auch Online Report-Modus) angezeigt werden können, nachdem eine SYSMAIN-Funktion auf einem Objekt ausgeführt wurde. Die erwähnten Zeilenkommandos finden Sie unter Auswahllisten in den objekttypspezifischen Abschnitten dieser Dokumentation.
Meldung | Erläuterung | Funktion abgeschlossen? |
---|---|---|
Class Exists
|
Gilt nur für Programmierobjekte.
Das katalogisierte Objekt einer Class hatte einen externen Class-Namen, der bereits von einem anderen katalogisierten Objekt einer Class in der Zielumgebung verwendet wurde. |
Nein |
Copied
|
Eines der folgenden Zeilenkommandos wurde von einem
Copy/Rename Selection-Bildschirm ausgeführt: |
Ja |
DB Error:
nnn
|
Für das Objekt wurde bei der Verarbeitung ein Datenbankfehler zurückgegeben. | Nein |
Deleted
|
Eines der folgenden Zeilenkommandos wurde von einem
Delete Selection-Bildschirm ausgeführt: |
Ja |
Dev exists
|
Gilt nur für Profile.
Device existiert: Die Option Replace
(Ersetzen) wurde auf |
Nein |
Directory
|
Verzeichnis: Das Zeilenkommando
I (Verzeichnis anzeigen) wurde von einem
Auswahlbildschirm (Selection) aus ausgeführt.
|
Ja |
Edt exists
|
Gilt nur für Profile.
Editorprofil: Die Replace-Option
wurde auf |
Nein |
Err: NAT2999
|
Gilt nur für Programmierobjekte.
Ein katalogisiertes Objekt wurde bearbeitet, wobei die
Option XREF auf |
Nein |
Err: NAT4852
|
Eine Natural Security-Verletzung ist aufgetreten. | Nein |
Exit: nnn
|
Eine Benutzer-Exit-Routine war aktiv, und der Exit lieferte einen Rückgabecode ungleich Null (nnn = der Rückgabecode). Siehe auch User-Exit-Routinen. | Nein |
Exported
|
Gilt nur für Programmierobjekte und DDMs.
Das Zeilenkommando X (PC-Download) wurde für ein Quellcodeobjekt von einem Auswahlbildschirm (Selection) aus ausgeführt. |
Ja |
Ext Exists
|
Gilt nur für Fehlermeldungen.
Es wurde versucht, nur die kurze Fehlermeldung einer Fehlermeldung zu löschen, für die eine lange Fehlermeldung existiert. Dies hätte zu einer erweiterten (langen) Fehlermeldung ohne entsprechende kurze Meldung geführt. Dies ist in Natural nicht zulässig. |
Nein |
File Listed
|
Gilt nur für Rules.
Das Zeilenkommando |
Ja |
In Use
|
In Verwendung: Bei der Natural
UPDATE/READ -Verarbeitung eines Objekts wurde ein
Adabas-Antwortcode 145 zurückgegeben.
|
Nein |
Invalid
|
Gilt nur für Debug-Umgebungen. Für eine der auf einem Auswahlbildschirm (Selection) aufgelisteten Debug-Umgebungen wurde ein ungültiges Zeilenkommando eingegeben. | Nein |
Listed
|
Gilt nicht für DDMs und Debug-Umgebungen. Das
Zeilenkommando L (Quellcode anzeigen) wurde von
einem Auswahlbildschirm (Selection) aus ausgeführt.
|
Ja |
Map exists
|
Gilt nur für Profile.
Die Option Replace wurde auf
|
Nein |
Moved
|
Eines der folgenden Zeilenkommandos wurde von einem
Move Selection-Bildschirm ausgeführt: |
Ja |
Must be Auto
|
Gilt nur für Rules. Das Zeilenkommando
F (DDMs/Felder anzeigen) wurde bei einer freien Rule
von einem Auswahlbildschirm (Selection) aus ausgeführt.
Das Zeilenkommando F kann nur bei automatischen
Rules ausgeführt werden.
|
Nein |
Name Erro
|
Gilt nur für Debug-Umgebungen. Die Funktion Rename wurde verwendet, aber der angegebene neue Name wurde als ungültig erkannt. Entweder wurde kein neuer Name für die Auswahl angegeben, oder der angegebene Name enthielt entweder ungültige Sonderzeichen oder begann nicht mit einem alphabetischen Zeichen. | Nein |
NBP Deleted
oder |
Gilt nur für Programmierobjekte. Das Zeilenkommando
B (Objekt aus dem Bufferpool löschen) wurde von
einem Auswahlbildschirm (Selection) aus ausgeführt. Die
nach Abschluss der Verarbeitung zurückgegebene Meldung lautet entweder
NBP Deleted (NBP Gelöscht) oder Ignored (Ignoriert),
je nachdem, ob das Löschen aus dem Bufferpool für das/die angegebene(n)
Objekt(e) bestätigt wurde oder nicht.
|
Ja/Nein |
No Lang 1
|
Gilt nur für Fehlermeldungen.
Für die erweiterten (langen)
Natural-System-Fehlermeldungen ist nur der Sprachcode |
Nein |
no Short Err
|
Gilt nur für Fehlermeldungen.
Es wurde eine erweiterte (lange) Fehlermeldung zur Weiterverarbeitung ausgewählt, aber die Zielfehlermeldungsnummer hat keine entsprechende kurze Fehlermeldung. |
Nein |
No Xref
|
Gilt nur für Programmierobjekte.
Ein katalogisiertes Objekt wurde bearbeitet und die Option
XREF war auf |
Nein |
Not Found
|
Gilt nur für Fehlermeldungen und Profile.
Bei der Verarbeitung ist ein Fehler in der Update-Logik aufgetreten und die angeforderte Fehlermeldung oder das angeforderte Profil konnte nicht gefunden werden. Dies bedeutet, dass die angegebene Fehlermeldung oder das angegebene Profil in der Zeit zwischen Auswahl und Update gelöscht wurde. |
Nein |
Not Replaced
oder |
Die Replace-Option wurde auf
Das Objekt mit dem gleichen Namen in der Zielumgebung wurde nicht ersetzt. |
Nein |
Parm exists
|
Gilt nur für Profile.
Die Replace-Option wurde auf
|
Nein |
Printed
|
Gilt nur für Programmierobjekte und Rules.
Das Zeilenkommando H (Hardcopy erzeugen) wurde von einem Auswahlbildschirm (Selection) aus ausgeführt. |
Ja |
Renamed
oder |
Gilt nur für Debug-Umgebungen und Fehlermeldungen.
Eines der folgenden Zeilenkommandos wurde von einem
Rename Selection-Auswahlbildschirm ausgeführt:
Die Meldung, die nach Abschluss der Verarbeitung
zurückgegeben wird, lautet entweder |
Ja |
Renamed as
oder
|
Gilt nur für Programmierobjekte.
Das Zeilenkommando |
Ja |
Replaced
|
Die Replace-Option wurde auf
Y gesetzt und einer der folgenden Zeilenbefehle wurde von einem
Copy/Move/Rename Selection-Bildschirm aus ausgeführt:
Das Objekt mit dem gleichen Namen in der Zielumgebung wurde ersetzt. |
Ja |
Sized
|
Gilt nur für Programmierobjekte.
Das Zeilenkommando |
Ja |
Subrtn Exists
|
Gilt nur für Programmierobjekte.
Das katalogisierte Objekt einer Subroutine hatte einen externen Subroutinenamen, der bereits von einer anderen katalogisierten Subroutine in der Zielumgebung verwendet wurde. |
Nein |
Updated
|
Gilt nur für Fehlermeldungen.
Der Text in der angegebenen Sprache war für die gewählte Fehlermeldung vorher nicht vorhanden, und SYSMAIN hat die Fehlermeldung mit dem neuen Sprachtext aktualisiert. |
Ja |
Src locked
|
Gilt nur für Programmierobjekte.
Das Zeilenkommando Das Objekt wurde nicht verarbeitet, weil der Quellcode des betreffenden Objekts gesperrt war. |
Nein |
SYSMAIN versucht im Falle eines Laufzeitfehlers während der
Verarbeitung immer eine Wiederherstellung zu erreichen. Diese Funktion wird
automatisch aktiviert und verwendet die Systemvariable
*ERROR-TA
(siehe auch
*ERROR-TA in der
Systemvariablen-Dokumentation). Diese Funktion wird
deaktiviert, wenn SYSMAIN normal beendet wird.
Wenn ein Terminalkommando (siehe auch
%% und %. — Aktive Operation
unterbrechen in der
Terminalkommandos-Dokumentation) zum Beenden von SYSMAIN
verwendet, wird dies als abnormales Beenden betrachtet, und die Systemvariable
*ERROR-TA
wird nicht zurückgesetzt. Sie kann
zurückgesetzt werden, indem SYSMAIN erneut aufgerufen und normal beendet wird.
Falls Sie die Systemvariable *ERROR-TA
gesetzt
haben, setzt SYSMAIN sie beim Beenden auf den zuvor zugewiesenen Wert
zurück.
Wenn in Bezug auf die Auswahlkriterien ungültige Daten angegeben
wurden, wird eine Fehlermeldung in der Meldungszeile ausgegeben. Wenn Sie sich
über die Bedeutung der kurzen Fehlermeldung unsicher sind, können Sie mit dem
Spezialkommando DISPLAY
(siehe auch An SYSMAIN absetzbare spezielle Kommandos) eine
Anzeige des entsprechenden erweiterten (langen) Fehlermeldungstextes
aktivieren.
In diesem Abschnitt werden die folgenden Themen behandelt:
Wenn in Bezug auf die Auswahlkriterien ungültige Daten angegeben wurden, wird in der Meldungszeile eine Fehlermeldung angezeigt. In einigen Fällen wird die Online-Hilfe für bestimmte Einträge aufgerufen. Dadurch erhalten Sie genauere Informationen zu dem Fehler.
Tritt ein Fehler im Batch-Modus auf, wird eine Fehlermeldung und die entsprechende Fehlernummer ausgegeben und das SYSMAIN-Dienstprogramm beendet.
Wenn Sie eine Anforderung stellen, die einen Verarbeitungsfehler verursacht, gibt SYSMAIN einen Fehlerbericht aus, wie im folgenden Beispiel gezeigt:
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 |
Die in dem Fenster enthaltenen Informationen sind nützlich, um die Fehlerursache zu analysieren.
Die Werte im obigen Fenster haben die folgenden Bedeutungen:
Feld | Wert | Erläuterung | |||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
SYSMAIN function | xxxxxx | Die SYSMAIN-Funktion, die gerade ausgeführt wird. | |||||||||||||||||||||||||
cc | Ein interner Statuscode, der für den Technischen
Support der Software AG nützlich ist. Die folgenden Codes können angezeigt
werden:
|
||||||||||||||||||||||||||
Error Number | eeee |
Entspricht der Systemvariablen
|
|||||||||||||||||||||||||
Program | pppppppp |
Entspricht der Systemvariablen
|
|||||||||||||||||||||||||
Status Code | s | Die Art des Fehlers. Mögliche Codes:
|
|||||||||||||||||||||||||
Line | llll | Entspricht der Systemvariablen
*ERROR-LINE
(siehe Systemvariablen -Dokumentation).
|
|||||||||||||||||||||||||
Device | dddddddd | Entspricht der Systemvariablen
*DEVICE
(siehe Systemvariablen -Dokumentation).
|
|||||||||||||||||||||||||
User ID | uuuuuuuu | Entspricht der Systemvariablen
*USER
(siehe Systemvariablen -Dokumentation).
|
|||||||||||||||||||||||||
Status | tttttttt | Entspricht der Systemvariablen
*ERROR-TA
(siehe Systemvariablen
-Dokumentation).
|
|||||||||||||||||||||||||
Level | vv | Entspricht der Systemvariablen
*LEVEL
(siehe Systemvariablen -Dokumentation).
|
|||||||||||||||||||||||||
User Name | nn...nn | Entspricht der Systemvariablen
*USER-NAME
(siehe Systemvariablen -Dokumentation).
|
Wenn ein Verarbeitungsfehler auftritt, notieren Sie die Informationen im Fenster und drücken Sie ENTER. Das Dienstprogramm SYSMAIN versucht, zum letzten aktiven Menü-Bildschirm zurückzukehren, wobei die Datenwerte der Eingabefelder unverändert bleiben.
Wird in dem Fenster das spezielle Kommando
DISPLAY
eingegeben (siehe auch An SYSMAIN absetzbare spezielle
Kommandos), wird der erweiterte (lange) Meldungstext zu dem
aufgetretenen Fehler angezeigt.
Tritt während der Batch-Verarbeitung ein Verarbeitungsfehler auf, gibt das Dienstprogramm SYSMAIN die entsprechende Fehlermeldung aus und wird beendet.
Bestimmte Benutzerfehler können ebenfalls zur Anzeige des Fensters
führen. Obwohl SYSMAIN versucht, alle Fehler während der Auswertung abzufangen,
ist dies nicht immer ganz erfolgreich. Wenn ein Benutzer beispielsweise
verlangt, dass ein DDM von einer Umgebung in eine andere kopiert wird, aber
eine ungültige Datenbankkennung (DBID) angibt, versucht SYSMAIN, auf diese
Datenbank zuzugreifen. Es wird ein Adabas-Antwortcode 148 zurückgegeben, und
die Transaktion SYSMAIN ERROR
wird aufgerufen und das Fenster
angezeigt. In ähnlicher Weise kann eine ungültige Datei zu einer Reihe von
Fehlern führen, die von der Datenbank gesendet werden.
In Situationen, in denen ein Adabas-Antwortcode 9
zurückgegeben wird, schreibt SYSMAIN eine Nachricht, die Sie über den Fehler
informiert, und beginnt die Verarbeitung wieder bei der letzten Funktion oder
dem letzten Menü. Wenn eine bestimmte Anforderung nicht erledigt wurde, können
Sie davon ausgehen, dass der Antwortcode 9
zu einem BACKOUT
TRANSACTION
zur letzten nicht abgeschlossenen Transaktion führte.