I need help with arrears processing in payroll. I've been struggling with this for many weeks. My requirement is simple: If there is a deduction, try to deduct it from the net amount but if cannot put it in arrears and process it in the next payroll.
I configured my payroll schema using all standard schemas and rules but this doesn't seem to work. All I managed to get is table DDNTK updated. Table ARRRS is never updated. I've configured T51P6 with '6' in the 'Arrears' column. I've read the documentation and it says that function PRPRI is the one that will process according to T51P6. I expect to see any deductions not taken in the current payroll to be updated in table ARRRS automatically, but that doesn't happen! I'm getting frustrated with this and thinking of writing my own functions.
I checked again the codes and the sequence of running. I'm using a test deduction wagetype 9001 which was entered in infotype 0015 and the test employee has 0 salary (because of a whole pay period of unpaid absence). In XPD0, the systems puts wagetype 9001 and its value into DDNTK.
Then in XNA9, PRPRI is executed. PRPRI reads the RT table to find the wagetype 9001 and then reads T51P6. It finds it and does the next processing.
I tried this and noticed in the payroll log that LPBEG and LPEND was called twice. There were no errors in the first loop but the second loop ends with an error:
"Wage type incorrectly reduced. A deduction wage type was not completely reduced by the amount in the table DDNTK. Wage type 9001. Please check whether the wage type is still in the table IT at the time of the PRDNT function (processing class 20)."
Any ideas or help is welcomed!!