Ansicht
Dokumentation

ABENBDL_ACTIONS_FC - BDL ACTIONS FC

ABENBDL_ACTIONS_FC - BDL ACTIONS FC

Fill RESBD Structure from EBP Component Structure   RFUMSV00 - Advance Return for Tax on Sales/Purchases  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- feature control

... (features:instance)
  $| (features:global) ...


Varianten:

1. ... (features:instance)

2. ... (features:global)

Wirkung

Hiermit wird ein Feature-Control für eine RAP-BO-Operation definiert. Mit einem Feature-Control können Operationen ein- oder ausgeschaltet werden.

Zwei Varianten stehen zur Verfügung:

Operationen eines Business-Objekts können nach instanzspezifischen Kriterien, beispielsweise dem Wert eines spezifischen Feldes oder dem Wert von referenzierten Daten, ein- oder ausgeschaltet werden. Wenn der Status einer BO-Instanz zum Beispiel auf archiviert gesetzt werden soll, können alle modifizierenden Operationen über ein instanzbasiertes Feature-Control ausgeschaltet werden.
Eine Implementierung in der RAP-Behandlermethode FOR INSTANCE FEATURES ist obligatorisch.
Operationen eines Business-Objekts können global ein- oder ausgeschaltet werden. D.h. die Entscheidung ist vom Zustand der individuellen Entitätsinstanz unabhängig. Eine Operation kann global ein- oder ausgeschaltet werden, indem zum Beispiel den Umschaltzustand eines Features interpretiert wird.
Eine Implementierung in der RAP-Behandlermethode FOR GLOBAL FEATURES ist obligatorisch.

Wenn eine Operation über ein Feature-Control ausgeschaltet ist, ist sie auf der Benutzeroberfläche einer OData-Anwendung ausgegraut. Beim Versuch eines externen RAP-BO-Consumers, eine ausgeschaltete Operation mit EML auszuführen, schlägt die Operation fehl und es wird ein Eintrag in der failed-Struktur zurückgegeben.

  • Entwicklungsleitfaden für das ABAP-RESTful-Anwendungsprogrammiermodell, Abschnitt Feature Control

Hinweise

  • Es werden keine Laufzeitprüfungen des Feature-Controls für EML-Aufrufe mit dem Zusatz IN LOCAL MODE ausgewertet.
  • Mit der EML-Anweisung GET PERMISSIONS können Informationen über ausgeschaltete Operationen ermittelt werden.

Variante 1

... features:instance


Wirkung

Mit dem instanzbasierten Feature-Control werden Operationen je nach Zustand der BO-Entitätsinstanz ein- oder ausgeschaltet. Ein instanzbasiertes Feature-Control kann für folgende Operationen definiert werden:

Beispiel

Das folgende Beispiel zeigt eine verwaltete BDEF, die das dynamische Feature-Control für die Standardoperation update definiert.

Im ABAP-Verhaltens-Pool wird folgendes angegeben: wenn int_field1 > 50, dann wird die aktualisierende Operation ausgeschaltet.

Die vollständige Implementierung befindet sich unter BP_DEMO_RAP_OPERATION_FC======CCIMP

Das ABAP-Programm DEMO_RAP_FC_OPERATION verwendet EML, um auf das RAP-Business-Objekt zuzugreifen:

  • Zunächst fügt es mit INSERT zwei Entitätsinstanzen direkt auf der Datenbank ein.
  • eine dieser Entitätsinstanzen hat den Wert '1' für das Feld int_field1.

  • die zweite Instanz hat den Wert '55' für das Feld int_field1. Hiermit wird die Bedingung erfüllt, die das Feature-Control auslöst und für diese Instanz wird die aktualisierende Operation ausgeschaltet.

  • Auf beiden Instanzen wird eine EML-UPDATE-Operation ausgeführt, die das Feld int_field2 aktualisiert.
  • Mit der -SELECT-Anweisung wird der Inhalt der zugrunde liegenden Datenbanktabelle angezeigt.

Ergebnis: die erste Entitätsinstanz wird aktualisiert. Bei der zweiten Entitätsinstanz schlägt die aktualisierende Operation fehl und es wird ein Eintrag in der failed-Struktur zurückgegeben. Die Aktualisierung wurde von der dynamischen Laufzeitprüfung des Feature-Controls abgelehnt.

IMAGE @@ABDOC_FC_OP.png@@606@@81@@

Variante 2

... features:global


Wirkung

Mit einem globalen Feature-Control werden Operationen instanzunabhängig ein- oder ausgeschaltet. Ein globales Feature-Control kann für folgende Operationen definiert werden:

Beispiel

Das folgende Beispiel zeigt eine nicht verwaltete BDEF, die das globale Feature-Control für die Standardoperation delete definiert.

Im ABAP-Verhaltens-Pool wird angegeben, dass Löschoperationen nur in der Zeit zwischen 22:00 und 06:00 erlaubt sind.

Die vollständige Implementierung befindet sich unter BP_DEMO_RAP_UNMANAGED_FC======CCIMP.

Das ABAP-Programm DEMO_RAP_UNMANAGED_FC verwendet EML, um auf das RAP-Business-Objekt zuzugreifen:

  • Es werden drei Entitätsinstanzen angelegt.
  • Es wird versucht, eine der Entitätsinstanzen zu löschen.
  • In der Zeit zwischen 22:00 und 06:00 (der Nachtschicht) ist die Löschoperation erfolgreich.

  • In der Zeit zwischen 06:00 und 22:00 (der Tagesschicht) ist die Löschoperation ausgeschaltet und es kommt zu einer Fehlermeldung gezeigt.

Ergebnis: In diesem Beispiel ist die Löschoperation nicht erlaubt und es kommt zu einer Fehlermeldung.

IMAGE @@ABDOC_global_fc.jpg@@446@@262@@




CPI1466 during Backup   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 10612 Date: 20240523 Time: 175857     sap01-206 ( 110 ms )