cancel
Showing results for 
Search instead for 
Did you mean: 

Function in Payroll to check the hire date

Former Member
0 Kudos

Dear gurus,

which function should I choose in order to make the following in a payroll scheme - a wage type should not be paid to a person, who came to the company during the accounting period, for example, employee was hired in september, thus the wage type shound not be paid in september? Is there any function to check the WPBP table or how it shound be checked? Thank you for any help.

Best regards,

Eldar.

Accepted Solutions (1)

Accepted Solutions (1)

Sujith_EM
Active Contributor
0 Kudos

If your requirement is , if the employee joined in a particular month you have to block some of the wage components ( wage types)

You can use the Function PPPAR

Write a PCR

*

****

  ADDWT *

ABCD ( your wage type)

  PPPPAR E

           E
                 AMT=0

                 ADDWT *

           *
                 ADDWT *

This will check the employee joined in the current month and if it satisfies this will make the amount in the particular wage type as "0"

Former Member
0 Kudos

Hi Sujith, i too have a scenario in same way but some difference

please help me on this


An employee joins in mid of the month and I will specify some X no of days in a wage type (1005 = 13 days) for which SALARY and ALLOWANCES to be calculated in prorate basis. This is to be done ONLY FOR THE MONTH OF HIS JOINING IN THE COMPANY i.e. for the FIRST MONTH or HIRED MONTH ONLY.

For the rest of the months till his termination if Y number or 0 Days were given in a wage type (1005) Only BASIC, VDA and FDA should be calculated on PRORATE BASIS  and other allowances Like HRA, SPL Allowance and other allowances should be paid  100 % without PRORATION.

In V_T512W_D I have give in Processing Class 10 with Specification 3 for Allowances and 2 for Basic, DA & VDA.

My Hire action is K2

Sanky
Active Contributor
0 Kudos

Hi Narendra,

It's already a closed thread.

Create a new thread with your issue.

Regards,

Sankarsan

Answers (2)

Answers (2)

former_member31620
Active Contributor
0 Kudos

Hi Eldar

Is this WT maintained in any of the Infotypes (for ex: 0014 or 0015)? If yes, why don't you restrict maintaining this WT at master data maintenance level instead of restricting at PY Driver level? Why don't you Include customer specific logic for this WT in PA BADI?

Hope this helps

Best Regards

Reddy

Former Member
0 Kudos

Hi ILLITAM Papi Reddy

No, these wage types are not maintained in any of the info-types, their meaning is a fund for further payments from this fund, they have to be calculated in the scheme and then used by payment WTs.

sikindar_a
Active Contributor
0 Kudos

DATES is one function , or else based on Hire OUTWPMASSN is the other function to query Hiring Action

Can you be some more clear When employee joins in Organisation the WTs shd not get paid during that Month is this ur are looking at for ?

Former Member
0 Kudos

Sikindar, exactly.

If an employee joins the Organization in september, the scheme should check his hiring date and exclude him from processing of the wage type. Will check the functions you told about, thank you.

Former Member
0 Kudos

Hi, WPBP it self is a function from which you can get the records of IT 0000 dates. To avoid the employe from that date i think you need to write a PCR for that and i dont think is there any operation to check the employee horing date.

Regards,

Srini

former_member193210
Active Contributor
0 Kudos

You could use operations NUM or AMT to query the hire date on IT0000 (use 2nd variant: Table fields, as in NUM=FA_T ) in a Payroll PCR, and if you maintain the Hire Date in IT0041, then you could use operations NUM or AMT to query that date (use 2nd variant: Table fields) in a Payroll PCR. Alternatively, you could use operation HRS to query the same field in a Time Evaluation PCR.

Former Member
0 Kudos

Sikindar,

i wrote OUTWPMASSN and ** to perform further rules, and also wrote a separate branch for MASSN=Hiring Action without any further action in the rule in order not to calculate a wage type which is not given to a hired person in the actual month. But the scheme doesn't check whether the hiring action was in the actual period, it just checks the fact of a hiring action. What should I add to the rule to determine the actuality of the period?

Edited by: Eldar Hamitov on Nov 30, 2011 3:31 PM

sikindar_a
Active Contributor
0 Kudos

Let me check and get back to you have u checked the function CMPER Read the doc in PE04 for this Operation

Former Member
0 Kudos

Sikindar,

what do you think about PPPAR function?

In the PE04 documentation:

PPPAR Operation name

ID of situation to be checked

E The operation places an E in the

variable key if one of the following

cases occurs:

- Entry in the current payroll

period (change of employment status

inactive to employment

status active).

Note: This does not apply if

the entry occurs on the first

day of the period.

sikindar_a
Active Contributor
0 Kudos

No , I dont think this can be useful ...let me check update you by the end of the day , But please do a test case useing this operation and let us know the result

Former Member
0 Kudos

Hi,

Rémi suggestion could work depending on certain variables. If the payroll period is monthly you can use operation NUM=FA_M. If the payroll is weekly you could use operation NUM=FA_W. That will bring the number of month/week the employee has been in the company. If that number is equal to 1 then that certain wagetype shouldn't be paid, and if it is greater than 1 it should be paid. The PCR could be something like this:

*

XXXX (that certain wage type)

NUM=FA_M (this would bring the number of month. Check documentation in PE04 as you may find better options)

NUM?1 (ask if the num is 1)

= (if it is equal delete)

Zero= rna

  • (if it is different do not delete)

Addwt *

Just an idea that may work. Operation PPPAR won't work, because as you mention it won't don anything if the employee enters the first day of the period, as this operation detects the change during the period, but not on the first or last day.

Hope it helps.

Kind Regards,

Edoardo

sikindar_a
Active Contributor
0 Kudos

yes , that was good logic did u tested it

Former Member
0 Kudos

I tested this logic, but dunno why, it doesnt' work. I've read the documentation in PE04 about NUM=FA_M, and in my rule I put PRINT X after that to see the meaning of NUM, then, when simulating the calculation in the rule after PRINT X the NUM equals -60,00. Why? What does it mean? And then after NUM?1 the rule goes as if it is > then 1, and performs the calculation of a wage type. Why?

Meanwhile, I tried to use this PPPAR function in the following way and it didn't show me the wage type, that I don't want to see, in the hiring month, exactly like I want:

PPPAR E (check the entry in the actual month)

PPPAR C (check the entry in the first day of the actual month)

*

OUTWPMASSN (check the action)

    • (for all actions)

PCYGZMF93 (perform the rule)

A1 (Hiring action - do nothing if hiring action occured in the actual period)

But I still think that PPPAR is not the right function. Or am I wrong and it can be used?

Edited by: Eldar Hamitov on Dec 2, 2011 11:07 AM

Former Member
0 Kudos

Hi Eldar,

Put the operation like this:

NUM=FA M (do not use a _ between FA and M, just leave a blank space).

With this you should get a right result. Check with PRINT operation what are you getting on the NUM. You should be having the number 1. With that number do the same question mention in previous post and it should work ok.

Hope it helps.

Kind Regards,

Edoardo

Former Member
0 Kudos

Hi Eldar,

I am using OUTWPMASSN  but the control always goes to the '**' and not in the Action Type I am checking for. Please let me know if I am missing anything in the following Rule or if there is any alternative to check the Action Type or change in Action Type in the current payroll period.

Action executed for the Employee on 05.02.2013, moved from EE Group 'A' to 'R'

Action Type Changed from 'H1' to 'R1'.

Payroll Period : 02 2013

RULE:

&RUL

*

1000 Basic Pay

  WPALL?FRST ID = FRST?

    N

      ADDWT *    OT   Output table

    Y

      ADDWT *    OT   Output table

      AMT=& 2MMR Set

      AMT?0.00   Comparison

        *

          ZERO=&2MMR VVVV Set zero

        =

          PPPAR M    EE subgroup grouping

            *

            M

              OUTWPMASSN Action reason in VK

                **

                R1

                  GCYG&MED7  With gen.w.types

Payroll Process:

Rule   ESGPCR VaKey    Operation

&RUL      *                     WPALL?FRST
&RUL      *   Y                ADDWT *
&RUL      *   Y                NEXTR A
&RUL      *   Y                AMT=& 2MMR
&RUL      *   Y                AMT?0.00
&RUL      *   Y =             PPPAR M
&RUL      *   Y = M         OUTWPMASSN
&RUL      *   Y = M **

Thanks and Regards,

Nimit.