on 07-09-2013 4:16 PM
Hi,
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!!
After nearly 2 years, I found out what was causing the error. Solved this by myself.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Yes I did, the loan deduction was creating an issue I removed it from the v_t51p6 and it started creating the claim instead of error and that was the main requirement and same was the issue with notice deduction; because at the time of leaving if the employee has a negative payment there is no way of receiving it from the employee so a claim has to be created for the extra deductions and the G/L of other recoverables was assigned to the claim wage type /561
Regards
Anybody?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
1. For this test deduction wagetype 9001 I'm using has the following processing class values:
2. The config in T51P6 for it is:
Priority: A
Arrears: 6
Retro :1
When I put in column 'Indicator' as 10 in T51P1, I do not get the error above (see my first post), table DDNTK is updated but not ARRRS. If there is no entry for the wageype in T51P1, I get the error but both tables DDNTK and ARRRS are updated!
Curiously, if I put in 11 in 'Indicator' in T51P1, my test wagetype 9001 appears in RT (and causes the error but tables updated correctly), but if the value is 10 then 9001 does not appear in RT (and doesn't cause any errors but tables are not updated correctly).
Am I understanding the process wrong? Is it trying to deduct amount in DDNTK from any payment wagetype in RT. Is there some extra configuration I have to do, bearing in mind that I'm using all standard subschemas in my main test schemas.
If you are relating V_t51P1 and V_T51P6 table, you need to copy the model wage types, once all together, if you copy one at a time, functional does not work.
Would you please try copying below model wage types once together. and run through your functionality
Deduction Wage type: 0014 (M720, M200),
Deduction Limit Wage type: 0015(M721, M202),
total Till date paid Wage type (M722, M203);
Please be sure to check their processing classes, they are different one to other
05 - Storing without split indicator in RT;
06 - Wage type accepted from previous payroll;
20- Pass on unchanged;
41- Summarized RT storage and cumulation;
50- Wage type is processed as balance. Limits: Wage type Class
and the indicators too 10 and 11
Warm Regards!
-Kanuku
1. T51P6 configuration is correct.
2. For your requirement both DDNTK table and ARRRS tables has to be updated. And after updating DDNTK & ARRRS tables that wagetypes should be cleared from IT & RT tables. If these wagetypes still remains in IT or RT tables they will result in error.
3. The problem with processing classes is that they are inter connected; change in one processing class will impact other processing classes.
Just Try, 1. can you make processing class 50 to empty
2. remove entry from t51p1.
Regards,
Kishan Reddy, K
I don't have these wagetypes in my system. I guess someone has deleted them. Anyway, do I have to configure these? The reason I maintained T51P1 is because of the of standard subschema is reading it. If I configure this, does it mean my test deduction wagetype will now be treated as, for example, a loan - with repayments schedule etc.? I prefer not to follow this route if I can.
I just want a simple process where any deductions not taken in a current payroll period is brought forward to the next one. The standard system is smart enough to create a claim wagetype if the net salary amount is negative but when it comes to deductions that cannot be taken, it is unnecessarily complicated.
I did as you suggested. The system now does 2 runs between LPBEG and LPEND. The 1st run was OK and tables DDNTK and ARRRS were updated. For some reason, it went to do another run and that ended with an error at the function PRPRI. The error message is still the same as in my first post.
Again, it seems to still trying to deduct something in RT even though net amount is 0.
I debugged the function PRPRI and the coding 'forces' the settings so that the loop goes again. There are some texts in the program that says a country specific perform PROCESS_PRPRI_NATIO can be used to stop or process the loop further. I tried to see the coding of the form but it doesn't exist!!
Does anyone have any ideas?
Changing the processing class 41 to 3 didn't help. It still looped twice and an error happened in the 2nd loop. This time the amount from the deduction wagetype is copied to /110 and subsequently in /560. The result of this is an error in X030.
Would you have any information on how to use PROCESS_PRPRI_NATIO as I cannot find it in any OSS notes or here in SDN?
Please check to understand process when retroactive accounting:
Understanding Retroactive Accounting
after that checking configuration in V_512W_D, and try to run Payroll in display log mode and check it carefully.
Regards,
Woody
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I could see in my system the processing class of 20 set to 1 for the similar wage type.
Warm Regards!
-Kanuku
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi would you please see specification set to 3 in table V_T51P6, and run your process.
I could not locate single wage type which has the specification set to 6, so, you may please try once.
Warm Regards!
-Kanuku
I reverted all the subschemas in my test payroll schemas and my test wagetype is still with '6' and now it seems both the tables DDNTK and ARRRS are updated with the values of the amount that cannot be deducted.
But the error as described above still occurs, specifically in the 2nd loop. From the message it seems like the system is still trying to deduct something even though the net amount is 0! I expect it to do only 1 loop (since the net amount is 0).
I then tried with specification '3' and the error still happens at the execution of function PRPRI in the 2nd loop.
User | Count |
---|---|
108 | |
12 | |
11 | |
6 | |
5 | |
4 | |
4 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.