Behandlung fehlerhafter Datensätze
Mit Hilfe der Einstellungen zur Fehlerbehandlung auf der Registerkarte Verbuchung im Datentransferprozess (DTP) haben Sie die Möglichkeit, beim Übertragen von Daten aus einer DTP-Quelle in ein DTP-Ziel das Verhalten des Systems beim Auftreten fehlerhafter Datensätze zu steuern.
Bisher wurden diese Einstellungen im InfoPackage vorgenommen. Bei der Verwendung von Datentransferprozessen schreibt das InfoPackage jedoch ausschließlich ins PSA. Deshalb werden die Einstellung zur Fehlerbehandlung nicht mehr im InfoPackage, sondern im Datentransferprozess vorgenommen.
Sie können für einen Datentransferprozess (DTP) festlegen, wie das System auf fehlerhafte Datensätze reagieren soll. Wenn Sie die Fehlerbehandlung aktivieren, werden die fehlerhaften Sätze in eine Request-basierte Datenbanktabelle (PSA-Tabelle), den Fehler-Stack geschrieben. Über einen speziellen Datentransferprozess, den Fehler-DTP, können Sie die Sätze in das Ziel verbuchen.
Zwischenspeicher auf Ebene der Verarbeitungsschritte des DTP-Requests ermöglichen Ihnen, festzustellen, in welchem Verarbeitungsschritt der Fehler aufgetreten ist.
Folgende Übersicht zeigt Ihnen, wo Prüfungen auf fehlerhafte Datensätze durchgeführt werden:
Wo wird Prüfung durchgeführt? |
Beispiele für fehlerhafte Datensätze |
In der Transformation |
Feld enthält unerlaubte Zeichen oder Kleinbuchstaben Fehler bei der Konvertierung Fehler bei der Währungsumrechnung Eine Routine gibt Returncode <>0 aus Beim Stammdatenlesen wird der Merkmalswert nicht gefunden Fehler beim Stammdatenlesen Kundendefinierte Formel erzeugt einen Fehler |
Beim Verbuchen der Daten in die Stammdaten- oder Texttabelle |
Unerlaubte Zeichen in Schlüssel oder im Navigationsattribut Wenn keine SID für den Wert des Navigationsattributs existiert Wenn für Texte kein Sprachfeld definiert ist Unplausible Von- und Bis-Daten Doppelte Datensätze bzgl. des Schlüssels Überlappende und ungültige Zeitintervalle |
Beim Verbuchen der Daten in den InfoCube |
Wenn keine SID für den Merkmalswert existiert |
Bei der Prüfung auf referentielle Integrität eines InfoObjects gegen Stammdatentabellen oder DataStore-Objekte |
Wenn keine SID für den Merkmalswert existiert |
Sie können einen Fehler-DTP für einen aktivierten Datentransferprozess auf der Registerkarte Verbuchung anlegen und ihn direkt im Hintergrund ausführen oder in eine Prozesskette einbinden, um ihn regelmäßig im Kontext Ihrer Prozesskette einzuplanen. Der Fehler-DTP extrahiert dann per Full-Modus die Daten aus dem Fehler-Stack (in diesem Fall die Quelle des DTPs) in das Ziel, das Sie bereits im ursprünglichen Datentransferprozess definiert haben.
...
1.
Legen Sie auf der Registerkarte Extraktion unter
Semantische
Gruppen die Schlüsselfelder für den Fehler-Stack fest.
Die Einstellung ist nur für die Übertragung in DataStore-Objekte mit Datenfeldern, die überschrieben werden, relevant. Im Fehlerfall werden neben dem fehlerhaften Datensatz auch die nachfolgenden Datensätze mit demselben hier festgelegten Schlüssel in den Fehler-Stack geschrieben und nicht im Ziel verbucht. Auf diese Weise wird die Serialisierung der Datensätze und somit eine konsistente Verarbeitung der Daten gewährleistet. Für Ziele, die nicht durch Überschreiben fortgeschrieben werden, ist die Serialisierung der Datensätze und damit die explizite Festlegung von Schlüsselfeldern für den Fehler-Stack nicht relevant.
Vorschlag und Eingabebereitschaft für die Schlüsselfelder des Fehler-Stacks für überschreibende DataStore-Objekte:
Vorschlag/Eingabebereitschaft |
Welche Felder der Quelle? |
Vorschlag für die Schlüsselfelder des Fehler-Stacks (bereits vom System markierte Felder) |
Alle Felder der Quelle, die eindeutig einem Schlüsselfeld des Ziels zugeordnet sind, d.h. alle Felder der Quelle, die in der Transformation direkt einem Schlüsselfeld des DataStore-Objekts zugewiesen sind. |
Felder, die zusätzlich als Schlüsselfeld für den Fehler-Stack markiert werden können |
Diejenigen Felder der Quelle, die zwar Schlüsselfeldern des DataStore-Objekts zugewiesen sind, aber deren Zuweisung nicht eindeutig ist. Eine Zuweisung gilt als nicht eindeutig, wenn es keine direkte Zuweisung ist. Wenn die Zuweisung direkt ist, gilt sie ebenfalls als nicht eindeutig, falls eine Start- oder Endroutine existiert. |
Felder, die nicht als Schlüsselfelder für den Fehler-Stack markiert werden können |
Diejenigen Felder der Quelle, die einem Nicht-Schlüsselfeld des Ziels, also einem Datenfeld des DataStore-Objekts zugewiesen sind. |

Der Schlüssel sollte so detailliert wie möglich sein. Es sind max. 16 Schlüsselfelder möglich. Je weniger Schlüsselfelder definiert sind, desto mehr Sätze werden in den Fehler-Stack verbucht.
Für Ziele, die nicht durch Überschreiben fortgeschrieben werden, legt das System automatisch die Schlüsselfelder des Ziels als Schlüsselfelder des Fehler-Stacks fest (z.B. für InfoCubes oder DataStore-Objekte, die nur Felder besitzen, die kumulativ fortgeschrieben werden). Sie können die Schlüsselfelder des Fehler-Stacks in diesem Fall nicht ändern.
Weitere Informationen: Fehler-Stack und Beispiele zur Verwendung des Fehler-Stacks
2. Legen Sie auf der Registerkarte Verbuchung fest, wie das System auf fehlerhafte Datensätze reagieren soll:
a. Keine Verbuchung, kein Reporting (Default)
Treten Fehler auf, wird die Verbuchung des gesamten Datenpaketes abgebrochen. Der Request ist nicht zum Reporting freigegeben. Die Prüfung der Sätze wird jedoch fortgesetzt.
b. Verbuchung gültiger Sätze, kein Reporting (Request rot)
Diese Option ermöglicht das Verbuchen gültiger Daten, die jedoch erst zum Reporting freigegeben werden, wenn der Administrator die fehlerhaften, nicht verbuchten Sätze überprüft und den Request durch Setzen des Gesamt-Status auf der Registerkarte Status im Monitor (QM-Aktion) manuell freigegeben hat.
c. Verbuchung gültiger Sätze, Reporting möglich
Über die gültigen Sätze können Sie sofort reporten, es werden auch automatische Folgeaktionen wie Anpassen der Aggregate vorgenommen.
3. Geben Sie an, nach wie vielen fehlerhaften Sätzen der Übertragungsvorgang abgebrochen werden soll.

Wenn Sie hier nichts eingeben, ist die Behandlung fehlerhafter Datensätze nicht aktiv und die Verbuchung bricht beim ersten Fehler ab.
4. Nehmen Sie über Springen → Einstellungen zum Zwischenspeicher die Einstellungen zum Zwischenspeicher vor. Sie legen hier fest, nach welchen Verarbeitungsschritten des DTP-Requests zwischengespeichert werden soll (z.B. Extraktion, Filtern, Ausfiltern schlüsselgleicher Neusätze, Transformation). Des Weiteren geben Sie an, wann die Zwischenspeicher wieder gelöscht werden sollen. Dies kann entweder passieren, nachdem der Request erfolgreich ins Ziel verbucht wurde, wenn der Request gelöscht wird oder nach einem einstellbaren Zeitintervall nach der Verarbeitung des Requests. Unter Detaillierungsgrad geben Sie an, wie die Transformation nachverfolgt werden soll.
5. Legen Sie nach der Aktivierung Ihres Datentransferprozesses auf der Registerkarte Verbuchung einen Fehler-DTP an, den Sie in eine Prozesskette einbinden, oder im Fehlerfall manuell starten, um die korrigierten Daten in das Ziel einzubuchen.