Einsatzmöglichkeiten
Das Verbuchungssystem dient unter anderem zur Entlastung der SAP-Transaktionen bei den zeitaufwendigen Datenbankänderungen. Die Änderungen werden asynchron - normalerweise mit nur kurzer Verzögerung - von speziellen Verbuchungs-Workprozessen durchgeführt.
Aus diesen Gründen wird das Verbuchungssystem in SAP-Transaktionen stark genutzt (von fast allen Transaktionen, die Geschäftsdaten ändern), obwohl Transaktionen Daten auch direkt in der Datenbank ändern können.
Voraussetzungen
Ob und wie das Verbuchungssystem genutzt wird, entscheidet der Anwendungsprogrammierer bei der Entwicklung der Transaktion. Die Möglichkeiten, die der Programmierer hat, sind detailliert im ABAP-Handbuch im Kapitel
Techniken der Verbuchung beschrieben.

Beim Programmieren mit der SAP-Verbuchung ist darauf zu achten, nur
Ablauf
Wie die Grafik in
Funktionsweise der Verbuchung zeigt, wird am Ende einer Transaktion COMMIT WORK und damit der Verbucher aufgerufen; der Dialogteil der SAP-Transaktion endet, der Verbuchungsteil der SAP-LUW beginnt. Folgendes Bild stellt die Aktionen und ihre Reihenfolge dar, die verschiedene
Workprozesse durchführen.

Nach dem Abschluß der Transaktion schließt der Dialogworkprozeß den VBHDR-Eintrag ab (der Verbuchungskopf des
Verbuchungsauftrags) und sucht einen Verbuchungsserver für die V1-Verbuchung. Dies wird unter Verbuchungs-Dispatching mit Lastausgleich genauer beschrieben.Der Verbuchungsserver verteilt die Aufgaben mit an einen Verbuchungs-Workprozeß. Dieser arbeitet die V1-Module des Verbuchungsauftrags ab, löst einen COMMIT auf der Datenbank aus und gibt die SAP-Sperren, die dieser Verbuchungsauftrag hatte, frei (vgl.
Das SAP-Sperrkonzept). Anschließend sucht der Workprozeß einen Verbuchungsserver für die V2-Verbuchung, sofern V2-Verbuchungsmodule vorhanden sind.
Diese wird dann von einem V2-Verbuchungsserver an einen V2-Workprozeß weitergeleitet, der die V2-Module abarbeitet und einen COMMIT auf der Datenbank auslöst.
Das folgende Bild zeigt dies nochmals aus Sicht der verschiedenen Workprozesse. Ferner wird dargestellt, zu welchen Zeitpunkten Änderungen in der Datenbank vorgenommen werden.

Das Abarbeiten der V1-Module besteht darin, den Inhalt der Verbuchungstabellen VBMOD und VBDATA in die Anwendungstabellen der Datenbank zu übertragen. Erst am Ende der Datenbank-LUW, in der dies geschieht, sind die Änderungen wirklich in den gewünschten Tabellen in der Datenbank angekommen. Die SAP-Sperren werden freigegeben, und, falls es V2-Verbuchungsmodule gibt, so wird die V2-Verbuchung angestartet. Diese läuft wie die V1-Verbuchung, nur gibt es keine Sperren, die freigegeben werden müssen, und es muß auch kein Prozeß zur weiteren Verarbeitung gesucht werden.
Ergebnis
Verläuft die Verbuchung ohne Fehler, so erscheint der Verbuchungssatz nicht mehr in der
Verbuchungsverwaltung und die Daten sind verarbeitet.
Weitere Informationen zum Verbuchungsprozeß finden Sie unter:
Verbuchungen bündeln Synchrones und asynchrones Verbuchen Die wichtigsten Verbuchungsstatus Fehlerbehandlung und Datenkonsistenz