Ansicht
Dokumentation

ABENBDL_DETERMINE_ACTION_EXT - BDL DETERMINE ACTION EXT

ABENBDL_DETERMINE_ACTION_EXT - BDL DETERMINE ACTION EXT

General Data in Customer Master   General Data in Customer Master  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- extend determine action

extend determine action DetermineActionName
          {
           determination $[(always)$] MyDetermination1;
           determination $[(always)$] MyDetermination2;
           validation $[(always)$] MyValidation1;
           validation $[(always)$] MyValidation2;
           determination $[(always)$] Child~ChildDetermination;
           validation $[(always)$] Child~ChildValidation;
           ...
          }


  • Die erweiterte BDEF muss entwurfsfähigsein. Determinierungsaktionen können derzeit nur in entwurfsfähigen RAP-BOs erweitert werden.

Wirkung

Erweitert eine vorhandene Determinierungsaktion DetermineActionName mit Erweiterungsdeterminierungen und Erweiterungsvalidierungen. Mindestens eine Erweiterungsdeterminierung oder Erweiterungsvalidierung muss in geschweiften Klammern angegeben werden.

Falls der optionale Zusatz always verwendet wird, werden alle zur Determinierungsaktion zugehörigen Determinierungen und Validierungen unabhängig von deren Auslösebedingungen ausgeführt. Nach Ausführung einer Determinierung mit dem Kennzeichen always, darf sie durch andere der gleichen Determine-Aktion zugehörigen Determinierungen ausgelöst werden.

Determinierungen und Validierungen von untergeordneten Entitäten können über die Syntax child~childDetermination oder child~childValidation eingeschlossen werden, solange diese Determinierungen und Validierungen die Auslöseoperationen delete nicht umfassen.

Reihenfolge der Ausführung: Es werden zuerst Determinierungen dann Validierungen ausgeführt. Die Reihenfolge der Ausführung unter Determinierungen oder Validierungen wird durch das RAP-Framework definiert und ist unabhängig von der innerhalb der Determinierungsaktion angegebenen Reihenfolge.

Die RAP-Berechtigungssteuerung aus der ursprünglichen BDEF wird bei Angabe wiederverwendet.

Hinweis

  • Interne Determinierungsaktionen können nicht erweitert werden.

Weitere Informationen

Beispiel

Mit folgendem Quelltext wird die BDEF-Erweiterung DEMO_RAP_DET_ACT_EXTgezeigt. Sie erweitert die BDEF DEMO_RAP_EXTENSIBILITY_DET_ACTum eine weitere Determinierung setStatustoNew zur Determinierungsaktion trigger_all.

Die ursprüngliche BDEF erlaubt explizit Erweiterungen für die Determinierungsaktion trigger_all:

Die Erweiterung fügt der Determinierungsaktion trigger_all eine weitere Determinierung setStatustoNew hinzu:

Das ABAP-Programm DEMO_CDS_EXT_DET_ACT verwendet EML, um auf das RAP-Business-Objekt zuzugreifen: Es wird die Determinierungsaktion trigger_all ausgeführt.

Das RAP-Framework führt die Implementierungen im ursprünglichen ABAP-Behavior-Pool und im Erweiterungs-ABAP-Behavior-Pool in der folgenden Reihenfolge aus:

  • get_instance_authorization: Prüfung, ob die Operation auf dem Wurzelknoten berechtigt ist.
  • setID, eine Determinierung aus dem Wurzelknoten der ursprünglichen BDEF.
  • setStatustoNew, eine Ermittlung aus der Wurzelknotenerweiterung.
  • get_instance_authorization: Prüfung, ob die Operation auf dem untergeordneten Knoten berechtigt ist.
  • TotalPrice, eine Determinierung aus dem untergeordneten Knoten der ursprünglichen BDEF.

Eine ausführliche Erläuterung des obigen Beispiels finden Sie im ausführbaren Beispiel CDS BDL - extend determine action.






BAL_S_LOG - Application Log: Log header data   RFUMSV00 - Advance Return for Tax on Sales/Purchases  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 7789 Date: 20240523 Time: 180646     sap01-206 ( 73 ms )