Ansicht
Dokumentation

ABENSAP_LUW - SAP LUW

ABENSAP_LUW - SAP LUW

BAL Application Log Documentation   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

SAP-LUW

Ein Anwendungsprogramm kann in mehrere Programmabschnitte unterteilt sein, die durch unterschiedliche Workprozesse hintereinander prozessiert werden. Da jeder Wechsel des Workprozesses mit einem impliziten Datenbank-Commit verknüpft ist, ist ein Anwendungsprogramm nicht automatisch mit einer einzigen Datenbank-LUW verknüpft. Dies gilt insbesondere für dialogorientierte Anwendungen mit klassischen Dynpros im SAP GUI, bei denen einem Dialogschritt jeweils eine Datenbank-LUW zugeordnet ist.

IMAGE @@ABDOC_SAP_LUW.gif@@625@@380@@

Um die Datenkonsistenz von Anwendungsprogrammen, die über mehrere Workprozesse verteilt ausgeführt werden, zu gewährleisten, werden in einer SAP-LUW die Änderungsanweisungen nicht direkt ausgeführt, sondern erst registriert und anschließend von einem einzigen Workprozess, d.h. in einer einzigen Datenbank-LUW, ausgeführt.

Bündelungstechniken

Für die Bündelung der Änderungsanweisungen in einer Datenbank-LUW stehen die folgenden Techniken zur Verfügung:

  • Verbuchung (Bündelung über Funktionsbausteine)
Durch die Anweisung CALL FUNCTION ... IN UPDATE TASK wird ein Verbuchungsfunktionsbaustein zur späteren Ausführung in einem Verbuchungs-Workprozess (synchrone und asynchrone Verbuchung) oder dem aktuellen Workprozess (lokale Verbuchung) registriert. Während der Verbuchung dürfen keine dort verbotenen Anweisungen ausgeführt werden und es werden keine Berechtigungsprüfungen durchgeführt. Synchrone und asynchrone Verbuchung werden in einer eigenen Verbuchungssitzung ausgeführt. Die lokale Verbuchung öffnet dagegen nur eine neue interne Sitzung.
  • Transaktionaler RFC (Bündelung über Funktionsbausteine)
Durch die Anweisung CALL FUNCTION ... IN BACKGROUND UNIT wird ein remote-fähiger Funktionsbaustein zur späteren asynchronen Ausführung im Hintergrund und über die RFC-Schnittstelle registriert (Background RFC).
  • Bündelung über Unterprogramme
Durch die Anweisung PERFORM ... ON COMMIT wird ein Unterprogramm zur späteren Ausführung in einem anderen Workprozess registriert.

Hinweis

Ein Funktionsbaustein kann entweder als Verbuchungsfunktionsbaustein oder als remote-fähig klassifiziert werden, aber nicht für beides gleichzeitig. Die Verbuchung dient der Realisierung von SAP-LUWs innerhalb eines AS ABAP, während der transaktionale RFC LUWs in verteilten Systemen erzeugt.

Anweisungen für SAP-LUWs

Jedes Öffnen einer neuen internen Sitzung mit Ausnahme der Anweisung CALL DIALOG beginnt eine neue SAP-LUW, die durch die-Anweisungen

Hinweise

  • Die Anweisungen COMMIT WORK und ROLLBACK WORK bestimmen die Grenzen einer SAP-LUW. Ein ABAP-Programm kann in beliebig viele SAP-LUWs unterteilt sein, wobei das Ende eines ABAP-Programms immer auch die letzte SAP-LUW beendet. Durch den Aufruf von ABAP-Programmen mit CALL TRANSACTION oder SUBMIT ... AND RETURN sind SAP-LUWs schachtelbar.

SAP-LUWs und interne Sitzungen

Jedes Schließen einer internen Sitzung beendet die aktuelle SAP-LUW. Wenn bei Beendigung eines Programms oder beim Schließen einer internen Sitzung über

in der aktuellen SAP-LUW noch Prozeduren registriert sind, wird die SAP-LUW beendet, ohne dass die Prozeduren aufgerufen oder zurückgerollt werden. Registrierte Verbuchungsfunktionsbausteine bleiben auf der Datenbank vorhanden, können aber nicht mehr ausgeführt werden.

Hinweis

Ein Programmaufruf mit

öffnet zwar eine neue SAP-LUW, aber keine neue Datenbank-LUW. Dies bedeutet, dass ein Datenbank-Rollback in dieser SAP-LUW insbesondere auch alle Registrierungseinträge, die von den Anweisungen CALL FUNCTION IN UPDATE TASK oder CALL FUNCTION IN BACKGROUND TASK in den Tabellen VB... bzw. ARFCSSTATE und ARFCSDATA vorgenommen wurden, zurückrollen kann. Eine Anweisung ROLLBACK WORK im aufgerufenen Programm wirkt damit unter Umständen auch auf die unterbrochene SAP-LUW. Um dies zu verhindern muss vor dem Programmaufruf ein expliziter Datenbank-Commit ausgeführt werden. Bei der lokalen Verbuchung tritt das Problem nicht auf.






Vendor Master (General Section)   Addresses (Business Address Services)  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 8831 Date: 20240523 Time: 100141     sap01-206 ( 106 ms )