For the past 5 years or more I have advised SAP Payroll customers to use the HR Process Workbench - also known as Process Models, or transaction PUST - to automate their payroll process. Many customers already use Process Models for their off-cycle payrolls, but the same tool can also be used for automating the regular payrolls; but more on that later.
One of the problems some customers have with the Process Models is when two or more steps try to process the same employee - which often ends up with an employee locking error (technically - a failure to ENQUEUE the employee). You get a red light error in the process model and then have to simply reprocess the employee. It's a hassle, and it is easy to update your process model so that it doesn't happen!
Below is a typical off-cycle payroll process model for US payroll. There are three major parts of the process that can be executed in parallel: posting to accounting, payment processing, and third-party remittances.If the Pre-DME step tries to update the employee the same time it's being processed by the Execute Posting Run step, then you will have a locking error.
The fix is simple: implement Wait Points. Make the Pre-DME step wait for Execute Posting Run to finish, and make 3PR Evaluation wait for Pre-DME to finish. In the process model below I've highlighted the wait points and pointed to the steps they wait on.
Implementing a Wait Point is similar to a Check Point, with the addition that you tell it which process node to wait for. Below is the dialog box for the Wait Point - pretty simple, isn't it?
Now when you run this Process Model, once Execute Posting Run is finished, Pre-DME will automatically execute, and once Pre-DME is done, 3PR Evaluation will run.