Work Process Architecture :
Work process architecture comprise 3 main components as shown in the figure below :
Dialog Interpreter
ABAP Processor
Database Interface
Type of work process:
DIA Work process for executing dialog steps in user transactions
UPD and UP2: Update process
ENQ enqueue (For locking or releasing SAP lock objects)
BTC Background (For processing background jobs)
SPO Spool (for spool formatting processes)
The work process using for interacting with users is the Dialog Work Process
Dialog WP:
1. The dispatcher classifies the request and places it in the appropriate request queue
2. The request is passed in order of receipt to a free dialog work process
3. The taskhandler restores the user context in a step known as Roll in. The user context contains
mainly data from currently running transactions called by this user and its authorizations
4. The taskhandler calls the Dynpro processor to convert the screen data to ABAP variables
5. The ABAP processor executes the coding of the “Process after Input” module (PAI module) from
the preceding screen, along with the “Process before Output” module (PBO module) of the
following screen
6. It also communicates, if necessary, with the database
7. The Dynpro processor then converts the ABAP variables again to screen fields. When the Dynpro
Processor has finished its task, the taskhandler becomes active again
8. The current user context is stored by the taskhandler in shared memory (roll out)
9. Resulting data is returned through the dispatcher to the front end
Monitoring :
1) Check SAP system log (SM21)
2) Check the relevant work process trace (ST11)
3) Collect User trace from ST12
Background Work process
SAP Background Processing automates repetitive tasks and optimizes system resource usage. It allows
programs to run automatically without user intervention
Use SE38 – To Create variant for background job and SM36 – To schedule the job.
Monitoring :
1) SM37
Update Work process
Update work processes execute database update requests. Update requests are part of an SAP
LUW that bundle the database operations resulting from the dialog in a database LUW (Logical Unit
of Work) for processing in the background.
When dialog process identifies the update/insert/modify then it communicates with server to
obtain a lock on the record so that no user should update (however other users can display the
record) The dialog process updates all the dialog steps in TEMPORARY tables
Enqueue Process
The enqueue process is responsible for managing locks on database records by preventing multiple
users or processes from simultaneously modifying the same data, when the Dialog Work Process
identifies that the request involves an update to the database, it communicates with the Enqueue
Work Process to request a lock on the specific record
If the update request is made through an Application Server, the Dialog Work Process communicates
with the Message Server
Monitoring :
1) ST02 Provides an overview of system resource usage, including Enqueue operations
2) ST05 Perf traces : Provides detailed insights into database and Enqueue operations.
3) SM12 to manage locks ( Displays all active locks in the system)
4) We can also activate the enque trace in st01 and reproduce the issue to identify the bottlenecks
SPOOL Process
The Spool Work Process in SAP is responsible for managing print requests and spool data. It handles the
generation, storage, and processing of spool requests, which are then sent to printers or other output
devices.