Optimierte Schlüssel-Logik für Tabellen ohne eindeutigen Primärschlüssel

aktualisiert 19/1/26 von Stephanie Krenz

Veröffentlicht: Oktober 2025
Betrifft: dab Nexus 1.18+, SAP Add-On 1.71 oder neuer

In der Version 1.18 von dab Nexus wurde gemeinsam mit dem SAP RFC Baustein 1.71 die Behandlung von Tabellen ohne eindeutigen Primärschlüssel überarbeitet. Ziel dieser Anpassung ist eine vollständige und konsistente Datenextraktion, auch bei SAP-Tabellen, deren Schlüsselfelder unvollständig oder leer sind. Damit wird sichergestellt, dass alle Datensätze eindeutig erkannt und korrekt verarbeitet werden.


Welche Auswirkungen hat die Umstellung?

Durch die technische Erweiterung ergeben sich einige wichtige Punkte, die beim Update auf dab Nexus 1.18 und RFC Baustein 1.71 zu beachten sind:

Ende der bisherigen Schlüsseldefinition

Bisher ging dab Nexus davon aus, dass alle Tabellen, die extrahiert werden, über eindeutige Primärschlüssel verfügen. Bei Tabellen wie FAGLFLEXT, FMGLFLEXT oder PSGLFLEXT ist das jedoch nicht der Fall, da es sich um Views handelt. Sie enthalten Felder mit dem ABAP Datenelement G_OBJNR im Primärschlüssel. Diese Felder werden in vielen SAP-Systemen aber standardmäßig mit Nullen aufgefüllt. Dadurch konnten in früheren Versionen Datensätze mit identischem Schlüsselwerten auftreten, was zu fehlenden oder überschriebenen Einträgen im Ergebnis oder Endlosschleifen beim Extraktionsvorgang in dab Nexus führte.

Erweiterte Schlüssellogik im SAP RFC Baustein 1.71

Mit Version 1.71 wurde der RFC-Baustein so erweitert, dass er bei betroffenen Tabellen zusätzliche Felder (das sind i.d.R. alle weiteren Felder der Tabelle, die den ABAP Datentyp CHAR haben) in die Schlüsseldefinition einbezieht. Damit werden Datensätze auch dann eindeutig identifiziert, wenn die Tabelle über keinen Primarschlüssel mit eindeutigen Werten verfügt.

Beispiele:

Tabelle

Ursprünglicher Schlüssel

Erweiterter Schlüssel (neu)

FAGLFLEXT

RCLNT, RYEAR, OBJNR00 - OBJNR08, DRCRK, RPMAX

RCLNT, RYEAR, OBJNR00 - OBJNR08, DRCRK, RPMAX, RCNTR, RACCT, ACTIV, RMVCT, etc.

FMGLFLEXT

RCLNT, RYEAR, OBJNR00 - OBJNR08, DRCRK, RPMAX

RCLNT, RYEAR, OBJNR00 - OBJNR08, DRCRK, RPMAX, RCNTR, RACCT, ACTIV, RMVCT, etc.

PSGLFLEXT

RCLNT, RYEAR, OBJNR00 - OBJNR08, DRCRK, RPMAX

RCLNT, RYEAR, OBJNR00 - OBJNR08, DRCRK, RPMAX, RCNTR, RACCT, ACTIV, RMVCT, etc.

Anpassung in dab Nexus 1.18

dab Nexus 1.18 erkennt die erweiterten Schlüssel automatisch und verwendet sie intern für die Datensatz-Identifikation. Dadurch werden alle Einträge eindeutig verarbeitet – ohne dass Daten verloren gehen oder Konflikte entstehen. Diese Änderung erfolgt vollständig automatisiert und erfordert keine manuelle Anpassung der bestehenden Extraktionspakete.

Bei Tabellen ohne eindeutigen Primärschlüssel (z. B. FAGLFLEXT), die in bestehenden Tasks mit einem Schedule verwendet werden, muss nach der Umstellung einmalig eine neue Initialextraktion in eine neue Tabelle durchgeführt werden. Ein Merge auf bestehende Tabellen schlägt aufgrund der neuen Schlüsselstruktur fehl. Danach kann der Schedule wie gewohnt auf die neue Tabelle fortgesetzt werden.

Was muss ich als Administrator konkret tun?

  • Sicherstellen, dass dab Nexus Version 1.18 oder neuer installiert ist
  • Sicherstellen, dass der SAP RFC Baustein Version 1.71 oder neuer auf dem SAP-System eingespielt ist
  • Nach dem Update eine Testextraktion betroffener Tabellen (z. B. FAGLFLEXT) durchführen und prüfen, ob alle Datensätze vollständig extrahiert werden
  • Keine Änderungen an Paketen oder Schlüsselfeldern notwendig – die neue Logik wird automatisch angewendet
  • Bei betroffenen Tabellen, die in bestehenden Tasks mit einem Schedule verwendet werden, muss eine neue Initialextraktion durchgeführt werden.


Wie haben wir das gemacht?


Powered by HelpDocs (opens in a new tab)

Powered by HelpDocs (opens in a new tab)