on 08-23-2016 1:21 PM
Hello All
Please let me know how to prepare an custom function in Payroll
We need to reduce the amount for basic pay and HRA
We are using PCL10 as 01 and need to reduce the amount even if we are using deduction based on miniutes.
Currently system is is very complex and we can't change any PCR (Existing system for many years).
Proposed solution
When we enter minutes in IT2002 as deduction time, we need to reduce the amount only on basic pay and need to show the LOP amount in separate wage type in function.
Please let me know how to carry on this (including retro scenarios)
Reason for Function: Already have 150 PCRs in system and no proper documentation available to trace the history.
Regards
SK
Custom function may not solve the problems or requirements fully.
Assume the change is effective from date dd/mm/yyyy (e.g., 01/07/2016)
1. Deduction hrs: An att type in IT 2002 will change the normal att hrs in time eval and the impact would not be desirable. Hence I'd recommend using a new w/t xxxx in IT 15.
1.1 Copy with OH11 txn an existing w/t for any adjustment or dedn. When you copy, it shows the tables/views entries copied; expand all nodes, to see entries created.
1.1.2. V_512W_D : This w/t should not be applicability for proc cl ;like 10, cum cl 1, 10, 11, eval cl 2 and any other such class values which impact gross pay/ded, taxable or not, etc. do not apply to this w/t.
1.1.2.1 If you want to show this w/t in pay slip:
1.1.2.1.1 with hrs only - then use the appropriate eval cl 02 to show hrs only.
1.1.2.1.2 with hrs & amt - then the eval cl 02 may be different.
In V_512W_B - it requires a val basis, use suitable basis like 01 depending on the rate to be used.
1.1.2.1.3 If it is to be valued by the rate per hr of basic pay only, check which is the val basis derived as such.
To find this:
Find proc cl 01 value for basic pay w/t.
Proc cl 01 value is used in payroll sub-schema XT00->pcr X010 (to add payment w/t's like basic, allowances like HRA, etc to basis w/t's /001, /002, etc.
It is also used by pcr X013 to divide the basis w/t's created above, to derive hourly rate.
In txn PC00_M99_DLGA20, find which w/t's have this proc cl 01 value.
If there is only one, then it is ok to use the val basis created by basic pay.
Else you need to create a new value for proc cl 01 (see step 2.2) so that it causes PCR X010 to add to the existing val basis w/t which is already being done, as well as a new val.basis /0yy (like /007, etc,) not created so far in payroll run.
In V_512W_D: check if there is a basis w/t like /001, /002, etc not created in PCR X010. If there is one, you can use this basis w/t for valuating the new w/t 9100.
Else again copy w/t say /001 to a new basis w/t /0yy. Here yy is the new val.basis to be used for w/t xxxx (created above). Change proc cl 01 value for basic pay w/t to the new one
In this case, you need to customize pcr X010 for the new value of proc cl 01. This pcr has groupings like *, 1, 2, etc. In each of these groupings, copy the line used by the existing proc cl 01 value for basic pay and change it for the new proc cl 01 value so that additionally it also adds to the new basis w/t /0yy.
1.1.3 T51Z1 - allow only IT 15 - once per day.
Model w/t table - no change.
1.1.4 T52C3 - You can allow cumulation by month & year
1.1.5 Other table entries copied should be required and be deleted.
2. To reduce a payment in a new way,
2.1 Check if all the proc cl 10 values are being used. This can be found by running transaction PC00_M99_DLGA20. For a SAP HR consultant this should be in your favorites in your main user menu.
Expand proc cl node, then proc cl 10 node. See if there is any proc cl 10 value not assigned to any w/t.
If all are used, create a new value for proc cl 10.
2.2 In any case for a new value or existing value:
2.2.1 In IMG->under your country's payroll ->Basic Settings -> Environment of Wage Type Maintenance -> Processing and Evaluation Classes -> Maintain Processing Classes and Their Specifications.
Double click the proc cl 10 for your purpose. It shows existing values of the proc cl.
If a value is not being used, change the text to indicate the purpose of this value - e.g., Reduce by w/t xxxx hrs (where xxxx is the w/t copied in step 1.1). Else copy/create a new proc cl 10 value. In any case let us say zz is the value for proc cl 10. Note this does not need to have 2 characters; it may be 0 to 9.
2.3. In V_512W_D: For basic pay w/t change proc cl 10 value to the new value as above. The w/t entry can be delimited from the date dd/mm/yyyy and the new proc cl 01 value will be from this date, and previous period entry/entries stay unchanged. This means the basic pay is reduced or calculated using partial pay factor w/t /8zz
2.4 Posting: Configure, if necessary, posting for the new w/t (may not be required).
2.5 Employees not applicable for this w/t:
You may have PSAG for primary w/t's eligible or not and similarly ESGG for primary w/t's.
Correspondingly configure for the w/t xxxx in V_511_B, provided you have clearly differentiated the groupings config in V_001_P_Kand & V_503_G respectively, so that eligible & ineligible employees can be differentiated in respect of this w/t.
If not you need to add code in user exit function in PBAS0001 -EXIT_SAPFP50M_002 called for all PAI events.Additional Customer Checks for Personnel Administration.
(Just for your info: For defaults in Personnel Administration use EXIT_SAPFP50M_001 called for all PBO events; or dynamic actions. Dynamic actions work only after you press enter after the relevant data used in P checks are already available for the employee or entry screen and pressing enter key.)
2.6 Payslip config: If the w/t xxxx is to be shown in payslip, change any required part of this config.
3. Schema/pcr changes
3.1 pcr INP! - needs to be customized for the new value zz of pcl 10. Copy an existing line used for basic pay's proc cl 10 old value and change it for key /8zz, as in example below
Existing line for /801 (assuming basic pay's proc cl 10 old value is 01)
INP1*/801 RTE=TKSOLLRTE-TKAU**RTE*KGENAURTE/TKDIVIADDWT *
New line for w/t /8zz:
(Note here the hrs in xxxx w/t is copied as rate also only for use within the PCR, IT entry is not changed.)
INP1*/8zz WGTYP=xxxx RTE=1 MULTI RNR WGTYP=* NEXTR
INP1*/8zz 1 RTE=TKSOLLRTE-TKAU**RTE- xxxxRTE *KGENAURTE/TKDIVIADDWT *
3.2 PCR XVAL:
3.2.1 Use the existing line used by basic pay w/t (if proc cl 10 old value for basic pay is 01, it is reduced by w/t /801) to copy to a new line zz value and change to use w/t /8zz to reduce the basic pay. Change this pcr for each grouping (as in the case of pcr X010 changes).
3.3 PCR IN11 in payroll sub-schema INAP: If the w/t xxxx needs to be shown in payslip with amt as a notional w/t, and hrs only entered, then the PCR used for function P0015 needs the capability to valuate w/t using its val basis. Else, you don't need any change
4. Testing in Dev/test client: Before this, you require a config transport copy if you have separate clients for config & test. ABAP or development objects are client-independent and their changes require release of transport request and may need generation of related modules.
4.1 Select at least 2 employees applicable for this type of change as well 1 more who is not - in each category of full time employees, part time and shift workers . It'd be better that in each category, the employees have same type of PWS or WSR and basic pay data; this helps to compare the results.
4.2 Enter xxxx w/t data in IT 15 for each empl in one pay period and none in the next. This again helps to compare.
For eligible employees, the entry must be accepted and be able to be saved but not for ineligible ones.
Enter data before and after Change effective date dd.mm.yyyy.
4.3 Time eval run is optional
4.4 Run payroll with log/payslip; check results for each employee & scenario; compare results.
4.5 Run live payroll, exit payroll area; run posting;there should be no error like Dr/Cr not balanced. Check results.
4.6 If any issues found, you need to review all the changes and modify as required starting from step 1 to 4.5
4.7 Then you can release/move the transports to QA.
5. System Test, QA / UAT
5.1 Test (System test) further to ensure results are correct. This would include all steps from data entry up-to post payroll reports and where required any periodical/annual reports.
5.2 Request your business client or payroll area for a UAT. It is recommended to review their test scenarios and supplement with any test scenarios/data, advising them the purpose of this.
5.3 Assist users in any part of UAT. This test would be similar to System test.
5.4 Again if there are any issues in any of these tests, you need to go back to step 1 for any correction.
5.5 After UAT sign-off, the transports are moved to prod systems/clients.
6. Production review
6.1 Users need to enter data for a couple of employees, run payroll sim with payslip, to ensure there are no problems.
6.2 After live payroll, posting, etc, they still need to verify well the changes in results.
6.3 Monitor retro's next pay period.
6.4 Post-implementation review: Required only for large number of changes; this helps future changes.
Hope this lengthy response helps.
DO NOT TAKE ANYTHING (REQUIREMENTS, CHANGES, IMPACTS ON EXISTING LANDSCAPE E.G., CONFIG, CODE, RESULTS, ETC) FOR GRANTED.
DISCUSS/FINALIZE WITH USERS RE: REQUIREMENTS. USERS OFTEN DICTATE IMPLEMENTATION METHODS. INVOLVE USERS IN CHANGE ACTIVITIES (E.G., SCREEN DESIGN, PAYSLIP/REPORT DESIGN). IT HELPS IN USERS' READINESS TO ACCEPT CHANGES, AND IN MINIMIZING CORRECTIONS.
(e.g. They may ask for a new ESG, while the requirements can be satisfied by a contract type or pay scale type, as I have found with a few clients.)
Where applicable or with significant changes, study/analyze the requirements, explore alternatives, study impacts, choose the best option; suggest the same with necessary rationale. Then it is left to the business client to decide which path to take; they would appreciate your analysis/efforts.
br, JG
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Jagan
Already we are deducting the LOP (Full day) for Basic pay, HRA and 2 more wage type
Now requirement is based on one time wage type need to deduct the Amount (Based on working hour of the work schedule split) on only Basic Pay alone.
Can we implement your scenario for this?
Is my requirement suits your scenario?
Regards
SK
As I suggested before, using IT 2002 to generate time w/t with reduction hrs is not advisable, since the TIP entries for the day will be modified by the hrs in IT 2002, which are not supposed for regular time or any other time spent by the employee. You can see this when you enter other types of attendances in IT 2002 and run time eval with log.
Best way is to use IT 15 and the changes suggested above.
Pl note: I do not wish to spend further time on this thread. I leave the resolution to your choice.
User | Count |
---|---|
91 | |
10 | |
10 | |
6 | |
5 | |
5 | |
5 | |
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.