Process Locking allows Promenta solutions to prevent parallel requests for the same master data to be running at the same time.
Promenta Webflow solution framework enables SAP master data to be managed and updated in a controlled and audited way. A request is submitted and routed to all required approvers via workflow. Only at the end of the approval process is the actual SAP data updated.
The approval process may take several days and in some situations – particularly in change processes – the existing data record in SAP should be “locked” so that no other process changes the data during the interim.
Promenta webflow framework provides functionality to manage the “locking” process but as each usage scenario is different the functionality must be integrated into each solution individually
Process locking should not be confused with SAP record locking. SAP Record locking lasts only as long as the user transaction. As soon as the transaction is completed or the user logs off then the SAP lock is released.
Process locking must last for the duration of the process – which may be several days or even weeks.
A process is locked as soon as it is started
A process is unlocked in the following situations:
- Request is completed
- Request is in error status
- Request is cancelled
- Request is deleted
- Lock is manually removed using tools
Process Lock report
The Report can be accessed from the Analyser /PROMENTA/WFRM_ANYSR
The selection screen allows filtering on Form ID (Webflow Id), Object Id (eg vendor number etc) or Request Id (FormIndex)
The Output is shown below
Here the holder of the lock is shown along with when they acquired the lock
You can manually remove a lock by clicking the “remove lock” button
Manually removing a lock should only be done in the event of a system issue. If you need to remove a lock due a user holding it too long then you should cancel the request itself from the analyser. Manual removal of locks can result in data update issues if requests are still running.
Note that not all Promenta solutions use process locking.
Promenta solutions which do use the locking / unlocking mechanism must use the function module provided in the following situations :
1) Lock – lock when the data can not longer be changed by any other process. This could be at the opening of a request or at the submission point
2) Unlock – unlock after successful update or if an unrecoverable error occurred.
3) Lock (with auto-unlock) – in a scenario where the unlock has not been called (eg a deletion outside the solution) the lock will automatically remove the previous lock.