Ansicht
Dokumentation
ABENBDL_LATE_NUMBERING - BDL LATE NUMBERING
Vendor Master (General Section) General Data in Customer MasterDiese Dokumentation steht unter dem Copyright der SAP AG.
- late numbering
...
late numbering
...
Wirkung
Definiert eine interne späte Nummernvergabe für alle Primärschlüsselfelder einer Business-Objekt-Entität. Interne späte Nummernvergabe bedeutet:
- Die RAP-Laufzeit-Engine ordnet den Primärschlüsselfeldern Werte zu.
- Im ABAP-Behavior-Pool muss die RAP-Saver-Methode adjust_numbers zum Zuordnen eines endgültigen Primärschlüsselwerts zu jeder Entitätsinstanz implementiert werden.
- Der Schlüsselwert für eine Instanz wird erst unmittelbar vor dem Sichern der Instanz in der Datenbank zugeordnet. Dadurch wird eine lückenlose Zuordnung von eindeutigen Schlüsseln sichergestellt.
Die interne späte Nummernvergabe muss separat für jede Entitätsverhaltensdefinition in den Entitätsverhaltensmerkmalen definiert werden. Wenn der übergeordnete Knoten einer Entität die späte Nummernvergabe definiert, muss der zugehörige direkte untergeordnete Knoten auch die späte Nummernvergabe verwenden.
Wenn Sie late numbering für ein entwurfsfähiges Szenario nutzen, ist es obligatorisch, dass die RAP-Entwurfstabelle über ein zusätzliches Schlüsselfeld DRAFTUUID des Datentyps raw(16) verfügt.
Verfügbarkeit
- Verwaltete und entwurfsfähige RAP-BOs
- Nicht verwaltete und entwurfsfähige RAP-BOs
In einem Projektions-BO wird die späte Nummernvergabe aus der Basis-BDEF automatisch wiederverwendet und muss nicht explizit definiert werden. Detaillierte Informationen finden Sie unter CDS BDL - Entitätsverhaltensmerkmalen, Projektions-BDEF.
Weitere Informationen zum Konzepthintergrund der frühen und späten Nummernvergabe finden
Sie im Entwicklungsleitfaden für das ABAP-RESTful-Anwendungsprogrammiermodell, Abschnitt Numbering.
Hinweise
Alternative Optionen für die Nummerierung:
Beispiel
Das folgende Beispiel zeigt eine nicht verwaltete BDEF, die eine späte Nummernvergabe für die Wurzel-View-Entität DEMO_UNMANAGED_LATE_NUMBERING definiert.
Diese BDEF lässt den strikten Modus bewusst aus Gründen der Kürze aus. SAP empfiehlt, immer den strikten Modus zu verwenden.
Der ABAP-Behavior-Pool implementiert die lokale Handler-Klasse adjust_numbers. In dieser Klasse werden Werte für das Primärschlüsselfeld key_field definiert. Der ersten neuen Entitätsinstanz wird der Wert '1' und jeder nachfolgenden neuen Entitätsinstanz die nächsthöhere ganze Zahl zugeordnet.
Quelltextausschnitt:
Den vollständigen Quelltext finden Sie in BP_DEMO_UNMANAGED_LATE_NUMBERICCIMP.
- Das ABAP-Programm DEMO_RAP_UNMANAGED_LATE_NUMB verwendet EML zum Zugriff auf das RAP Business-Objekt und führt die folgenden Schritte aus:
- Es legt drei Entitätsinstanzen durch Angabe eines Werts für das Feld data_field1_root an.
- Es führt einen Datenbank-Commit der drei neuen Entitätsinstanzen aus.
- Unter Verwendung der SELECT-Anweisung zeigt es den Inhalt der Datenbanktabelle an. Dort ist erkennbar, dass das Primärschlüsselfeld KEY_FIELD jeder Entitätsinstanz einen Wert enthält, der mithilfe der späten Nummernvergabe generiert wurde.
Ergebnis: Die Werte für das Primärschlüsselfeld KEY_FIELD werden automatisch generiert.
IMAGE @@ABDOC_LATE_NUMB.png@@219@@97@@CPI1466 during Backup General Material Data
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 7370 Date: 20240523 Time: 175548 sap01-206 ( 73 ms )