Ansicht
Dokumentation
ABENBDL_VALIDATION_ABEXA - BDL VALIDATION ABEXA
Addresses (Business Address Services) PERFORM Short ReferenceDiese Dokumentation steht unter dem Copyright der SAP AG.
- 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
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 )