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 Support 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.