Ansicht
Dokumentation

ABENBDL_IMPLEMENTATION - BDL IMPLEMENTATION

ABENBDL_IMPLEMENTATION - BDL IMPLEMENTATION

General Data in Customer Master   SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

ABAP BDL - IMPLEMENTATION

Syntax

implementation unmanaged$|managed$|abstract $[in class class_name unique$];

Wirkung

Der Implementierungstyp des Business-Objekt-Verhaltens wird in der Verhaltensdefinition mit dem Schlüsselwort implementation eingeleitet.

Folgenden Implementierungstypen lassen sich unterscheiden:

  • unmanaged
    Für den Implementierungstyp unmanaged müssen zuerst alle wesentlichen Komponenten des REST-Vertrags implementiert werden. Alle erforderlichen Operationen (sowohl Standardoperationen create, update und delete als auch anwendungsspezifische Aktionen) müssen in der entsprechenden Verhaltensdefinition festgelegt werden, bevor sie in ABAP umgesetzt werden. Dieser Implementierungstyp eignet sich wenn existierende Legacy-Business-Logik zur Verhaltensimplementierung verwendet werden soll.
  • managed
    Die Implementierungstyp managed eignet sich, wenn eine komplett neue Business-Logik umgesetzt werden soll. In diesem Fall reicht eine Verhaltensdefinition aus, um ein fertiges ready-to-run Business-Objekt zu bekommen.
  • abstract
    Eine Verhaltensdefinition vom Implementierungstyp abstract ist nicht durch Behavior-Pools implementierbar, sondern dient als reines Metadaten-Artefakt für die Repräsentation von externen Services.

Eine Verhaltensdefinition kann eine oder mehrere Klassen festlegen, in denen Verhaltensimplementierungen eines Business-Objekts erlaubt sind. Das ist in der Verhaltensdefinition des Business-Objekts durch den Zusatz in class ... unique möglich.

Wirkung der Angabe in class ... unique:

  • Nur in einem Behavior-Pool mit dem angegebenen Namen darf ein Verhalten für die jeweilige Entität implementiert werden. Jede andere Klasse, die dies versucht, bekommt einen Fehler vom ABAP Compiler.
  • Wenn der Zusatz in class ... unique angegeben ist, darf keine Operation mehrfach in verschiedenen Handler-Klassen implementiert werden.

Im folgenden Beispiel werden die Daten aus dem ABAP-Flugdaten-Referenzszenario (Kurz: Flugdaten-Szenario) verwendet. Es stellt eine Legacy-Business-Logik dar, mit der Flugbuchungen erstellt und bearbeitet werden können. Die CDS-View /DMO/I_Travel repräsentiert den Wurzelknoten des Business-Objekts zur Verwaltung von Flugreisen. Das zugrundeliegende Datenmodell ist im Abschnitt ABAP BDL - Beispiel beschrieben.

Das folgende Beispiel zeigt die Verhaltensdefinition für die Wurzel-Entität Travel. Im Beispiel wird der Implementierungstyp auf unmanaged gesetzt, weil die existierende Legacy-Business-Logik in der neuen Applikation zur Verwaltung der Flugreisen integriert werden soll.

implementation unmanaged;
define behavior for /DMO/I_Travel alias Travel
{
  create;
  update;
  delete;
}





rdisp/max_wprun_time - Maximum work process run time   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 5317 Date: 20240523 Time: 172331     sap01-206 ( 71 ms )