Ansicht
Dokumentation

ABENEML_COMMIT_ENTITIES - EML COMMIT ENTITIES

ABENEML_COMMIT_ENTITIES - EML COMMIT ENTITIES

SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   ABAP Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- COMMIT ENTITIES

COMMIT ENTITIES
  $[RESPONSE OF root_name_1
    $[FAILED    it_failed   $| DATA(it_failed)$]
    $[REPORTED  it_reported $| DATA(it_reported)$]$]
  $[RESPONSE OF root_name_2
    $[FAILED    it_failed   $| DATA(it_failed)$]
    $[REPORTED  it_reported $| DATA(it_reported)$]$].


Wirkung

Wenn MODIFY-Anweisungen innerhalb eines Behavior-Pools ausgeführt werden, sondern durch eines ABAP-Reports, dann würden sie zunächst keinerlei Effekt auf der Datenbank hinterlassen, weil sie ja per Definition nur auf dem transaktionalen Puffer arbeiten, und der Pufferinhalt mit dem Ende der ABAP-Session verschwindet. Darum muss in diesem Szenario die Save-Sequenz ausgelöst werden. Dazu dient die Anweisung COMMIT ENTITIES.

Die Anweisung COMMIT ENTITIES speichert alle RAP-Business-Objekte, die innerhalb der LUW geändert werden.

In ihrer einfachsten Form ist die Anweisung COMMIT ENTITIES parameterlos.

Mit RESPONSE kann man die Response-Informationen von einem oder mehreren Business-Objekten, zuvor mit MODIFY manipuliert wurden, erhalten. Dann wird für jede beteiligte Wurzel-Entität root_name_1, root_name_2, ... eine RESPONSE-Klausel gebildet.

Die Response-Variablen sind Strukturen mit n Komponenten (eine Komponente pro Entität im Business-Objekt). Bis zu zwei Variablen können zur Aufnahme der Response-Information für jede beteiligte Wurzel-Entität angegeben werden: FAILED und REPORTED. Bei der Anweisung COMMIT gibt es keine Zuordnung der Schlüssel, weshalb die Response-Struktur MAPPED entfällt. Die Response-Variablen müssen entweder den passenden Typ haben (zum Beispiel FAILED it_failed) oder inline-deklariert werden (zum Beispiel FAILED DATA(it_failed)). Es handelt sich hierbei um die Late-Response-Typen: Instanzen werden über die in der Sicherungsphase gültigen Schlüssel identifiziert.

Der Zeilentyp der Response-Strukturen FAILED und REPORTED ist vom Typ ABP_BEHV_RESPONSE_TAB und besteht aus den folgenden Feldern:

  • ROOT_NAME     Type  ABP_ROOT_ENTITY_NAME
  • ENTITY_NAME   Type  ABP_ENTITY_NAME
  • ENTRIES       Type  REF TO DATA
    Enthält den abgeleiteten Tabellentyp für FAILED$|REPORTED

Anweisung erfolgreich, wenn sy-subrc auf 0. Es genügt nicht das Ergebnis von FAILED auszuwerten.

Hinweis

Innerhalb einer Verhaltensimplementierung gehört COMMIT ENTITIES zu den verbotenen Anweisungen. Diese Einschränkung wird auch dynamisch geprüft. Eine Verletzung führt zum Laufzeitfehler BEHAVIOR_ILLEGAL_STATEMENT.






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

Length: 5361 Date: 20240523 Time: 160553     sap01-206 ( 70 ms )