Ansicht
Dokumentation

ABENBDL_VALIDATION_ABEXA - BDL VALIDATION ABEXA

ABENBDL_VALIDATION_ABEXA - BDL VALIDATION ABEXA

Addresses (Business Address Services)   PERFORM Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- Validierung

In diesem Beispiel wird dargestellt, wie in einem verwalteten RAP-BO eine Validierung definiert, implementiert und genutzt wird.

Datenmodell

Das CDS-Datenmodell besteht aus der Wurzel-View-Entität DEMO_SALES_CDS_SO_1, die einen Kundenauftrag darstellt.



Verhaltensdefinition

Die CDS-Verhaltensdefinition DEMO_SALES_CDS_SO_1 wird in CDS BDL wie folgt definiert:

Definition einer Validierung

Mit der Validierung ValidateBuyerId wird die Gültigkeit des im Feld BuyerId eingetragenen Wertes ermittelt, indem die Existenz dieser Käufer-ID in der Datenbank DEMO_SALES_BUPA, in der alle Geschäftspartner aufgeführt sind, überprüft wird. Ausgelöst wird sie nach einer Änderung des Feldes BuyerId. Bei einer nicht gültigen Käufer-ID werden die Datenänderungen abgelehnt und eine Fehlernachricht zurückgegeben.

validation ValidateBuyerId on save { field BuyerId; }

Verhaltensimplementierung

Für die genannte CDS-Verhaltensdefinition wurde ein ABAP-Behavior-Pool (ABP) angelegt. Die globale Klasse des Behavior-Pools ist BP_DEMO_SALES_CDS_SO_1. Die eigentliche Implementierung findet in BP_DEMO_SALES_CDS_SO_1========CCIMP statt.

Quelltext

Ausführen

Beschreibung

Zugriff mit ABAP über EML

Der obige Quelltext verwendet EML, um auf das RAP Business-Objekt aus einem ABAP-Programm zuzugreifen:

  • Es wird eine BO-Entitätsinstanz mit der Käufer-ID a angelegt. Diese Käufer-ID ist gültig, also wird die Instanz auf der Datenbank festgeschrieben.
  • Es werden zwei weitere BO-Entitätsinstanzen mit ungültigen Käufer-IDs angelegt. Diese Entitätsinstanzen werden von der Validierung abgelehnt und stattdessen in eine Fehlertabelle eingetragen.
  • Die gültigen und die ungültigen Entitätsinstanzen werden in getrennten RAP-LUWs angelegt. Sollten alle drei Entitätsinstanzen in einer RAP-LUW angelegt werden, würden alle abgelehnt werden. Alle Datenänderungen in einer RAP-LUW müssen konsistent sein, sonst wird der vollständige Inhalt des transaktionalen Puffers abgelehnt.





CL_GUI_FRONTEND_SERVICES - Frontend Services   CL_GUI_FRONTEND_SERVICES - Frontend Services  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 3675 Date: 20240523 Time: 164947     sap01-206 ( 51 ms )