Length of service,age range calculation please?

Hi all,
Could you please tell me the logic to calculate the above mentioned fields.
please provide me the logic.
cheers
sheela

Hi Sheela,
Few benefits/Leave quota are based on the Age of the Employee, few benefits/Leaves quota are based on the length of service one has with the company...
If this not the answer, you were looking for, pls. clarify your query little more, probably somebody will be able to help in better way.
Regards,
Dev

Similar Messages

  • LENGTH OF SERVICE,AGE RANGE, NUMBER OF ACTIONS CALCULATION???

    Hi all,
    Could you please tell me the logic to calculate the above mentioned fields.
    <b>please provide me the logic.</b>
    cheers
    sheela

    choose the proper functional forum..
    this looks like an HR question.
    try SAP ERP Human Capital Management (SAP ERP HCM)
    and please do not post using your CAPS LOCK key, it shows disrespect to people who read your question.
    good luck.

  • AGE RANGE calculation????

    hi,
    i am working with HR CUBE(0PA_C01) which is personal actions and headcount, please tell me the logic how to calculate AGE RANGE?
    thanks in advance
    sheelu

    hi,
    points will be assured.
    thaks

  • Age in years and length of service wrongly calculated

    I have BI 7.0 implemented by SAP itself , they installed only the business content without any customization
    in HR For The Cube HeadCount 0PAPA_C02  the key figure Age in Years 0AGE_NC is calculating in a wrong way it is subtracting from 1999
    and the field length of service in years 0SRVCLEN_NC is subtracting from 1999 for dates less than 1999 and from 2199 for date more than 1999
    i have searched alot for this but i can't find any solution

    the problem was in the 0CALDAY , it should be set before the calculation
    so i set it to today and everything become fine

  • Calculated Age and Age Ranges in a Query

    Hello,
    We are using 3.5 Query Designer.
    I am trying to create age ranges in a query. The InfoProvider at this point (I've gone very simple) is InfoObject, 0PERSON.
    I've created a calculated key figure (CKF) called age which I have used a formula to define. The age is calculating correctly. Age has  'Calculate Result As...' = Summation. And in the 'Enhance', 'Time of Calculation' is set to Before aggregation. Number of decimal places set to 0. Now I've created a CKF, AGE_GE_40 which has as its formula 'COUNT(('Age' >= 40)). I've created an additional CKF, AGE_LE_39 which has a formula 'COUNT(('Age'<=39))'. Both of these have the 'Summation' set in the calculation section. The query contains 0GENDER, 0PERSON with AGE_GE_40 and AGE_LE_39 and Number of records as the key figures in the columns. When executed initially, all of the result rows are correct. The problem is when I remove 0PERSON, the result rows only give me 1 per gender. This seems like an easy thing to do, why is it not working?
    Thanks for any help,
    Diane Merrill

    Diane,
    For each row in the query data, there is only one age value calculated, which is the aggregration of all records which fulfills the row's characteristic value combination. Thus, when there is Gender & Person columns in the query, each row calculates an age value for the Gender/Person combination, which is essentially the same as for each person, because each person has one gender value. However, when you remove person from the columns, there will be only two values for gender, and the age is calculated as the sum of ages for all records with the same gender value. To reveal more on this, you can add the Age key figure into the query columns, and run the query with only the gender (i.e. without person). Once you see the age value for each row, it should be clear to you.
    Please reward points if this is helpful.
    Wayne

  • Calculating Length of Service - Splitting out the months from the years

    Hi folks,
    I was wondering if anyone might have the answer to a little employee length of service conundrum. I'm trying to construct a calculation that will calculate an employee's length of service in whole Years worked only. I also need to produce a second calculation to calculate length of service in whole months worked only but with the whole years worth of months deducted from it.
    For example if a persons hire date is 05-Feb-2001 the two calculations would return:
    Length of service Years 7
    Length of service Months 6
    The following calc will generate length of service as a decimalised number:
    MONTHS_BETWEEN(SYSDATE,Hire Date) /12
    So for my example person I get 7.64 years.
    I need to somehow round this down to the nearest 1 to get whole years service. I cannot use the ROUND function because it rounds to the nearest, so when a number is n.5 or higher it'll round up and will only round down when the number is n.49 or lower. grrr.
    My next mission is to work out months service based on whats after the decimal place. If I could round the Length of service Years down I think I could achieve this. I would just do:
    ROUNDDOWN(((MONTHS_BETWEEN(SYSDATE,Hire Date) /12) - (+ROUNDDOWN+(MONTHS_BETWEEN(SYSDATE,Hire Date) /12))*12)
    ROUNDOWN being my non-existent function!
    Any advice on this is greatly appreciated.
    Lloyd

    Hi,
    TRUNC is the function I always use to round down. It is more flexible than FLOOR as you can use it to round down to a number of decimal places.
    You should also understand that Oracle's definition of MONTHS_BETWEEN does not meet everyones expectations. For example MONTHS_BETWEEN('28-JAN-2001', '28-FEB-2001') is exactly 1 so is MONTHS_BETWEEN('31-JAN-2001', '28-FEB-2001') unless it is a leap year when it is slightly less. That's because Oracle treats the last day of the month as different when it calculates the months between 2 dates.
    Rod West

  • Length of service calculation in payroll schema rules

    SAP allows you a few options with regard to length of service in months.
    F01KJ looks at date type 01 in infotype 0041.  It calculates months service based on complete months.  If you use option "N" as opposed to "K", then it counts complete and partial months.
    My client wants an option in the middle.  If a person is employed between the 1st and 15th of January, then in December they want the person to get a full bonus (12 months).  If the person is employed between the 16th and 31st of January, then in December they want the person to be paid 11/12 of a bonus.
    Is is possible to query the day of a date only and then based on if it's < 15 do x otherwise do y?

    What is F01KJ?

  • Adhoc query - length of service fields

    Hi all,
    I have question regarding the length of service fields in adhoc query (Actions infotype data fields PNP database).
    When I select these fields I get different results according to reporting period; if i select a keydate then the service is calculated according to this date, but if I select a reporting period, then the service is calculated according to the start date of the reporting period.
    Is this expected behaviour? Please let me know how this can be coded to reference the end date of the reporting period.
    many thanks

    Hi,
    Please check OSS notes 333517 and 357093. Both notes, though from 2000, contain detailed functionality and recommendation around u201Clength of serviceu201D.
    Hope this helps.
    Donnie

  • Dynamic Calc processor cannot lock more than [100] ESM blocks during the calculation, please increase CalcLockBlock setting and then retry(a small data cache setting could also cause this problem, please check the data cache size setting).

    Hi,
    Our Environment is Essbase 11.1.2.2 and working on Essbase EAS and Shared Services components.One of our user tried to run the Cal Script of one Application and faced this error.
    Dynamic Calc processor cannot lock more than [100] ESM blocks during the calculation, please increase CalcLockBlock setting and then retry(a small data cache setting could also cause this problem, please check the data cache size setting).
    I have done some Google and found that we need to add something in Essbase.cfg file like below.
    1012704 Dynamic Calc processor cannot lock more than number ESM blocks during the calculation, please increase CalcLockBlock setting and then retry (a small data cache setting could also cause this problem, please check the data cache size setting).
    Possible Problems
    Analytic Services could not lock enough blocks to perform the calculation.
    Possible Solutions
    Increase the number of blocks that Analytic Services can allocate for a calculation:
    Set the maximum number of blocks that Analytic Services can allocate to at least 500. 
    If you do not have an $ARBORPATH/bin/essbase.cfg file on the server computer, create one using a text editor.
    In the essbase.cfg file on the server computer, set CALCLOCKBLOCKHIGH to 500.
    Stop and restart Analytic Server.
    Add the SET LOCKBLOCK HIGH command to the beginning of the calculation script.
    Set the data cache large enough to hold all the blocks specified in the CALCLOCKBLOCKHIGH setting. 
    Determine the block size.
    Set the data catche size.
    Actually in our Server Config file(essbase.cfg) we dont have below data  added.
    CalcLockBlockHigh 2000
    CalcLockBlockDefault 200
    CalcLockBlocklow 50
    So my doubt is if we edit the Essbase.cfg file and add the above settings and restart the services will it work?  and if so why should we change the Server config file if the problem is with one application Cal Script. Please guide me how to proceed.
    Regards,
    Naveen

    Your calculation needs to hold more blocks in memory than your current set up allows.
    From the docs (quoting so I don't have to write it, not to be a smarta***:
    CALCLOCKBLOCK specifies the number of blocks that can be fixed at each level of the SET LOCKBLOCK HIGH | DEFAULT | LOW calculation script command.
    When a block is calculated, Essbase fixes (gets addressability to) the block along with the blocks containing its children. Essbase calculates the block and then releases it along with the blocks containing its children. By default, Essbase allows up to 100 blocks to be fixed concurrently when calculating a block. This is sufficient for most database calculations. However, you may want to set a number higher than 100 if you are consolidating very large numbers of children in a formula calculation. This ensures that Essbase can fix all the required blocks when calculating a data block and that performance will not be impaired.
    Example
    If the essbase.cfg file contains the following settings:
    CALCLOCKBLOCKHIGH 500  CALCLOCKBLOCKDEFAULT 200  CALCLOCKBLOCKLOW 50 
    then you can use the following SET LOCKBLOCK setting commands in a calculation script:
    SET LOCKBLOCK HIGH; 
    means that Essbase can fix up to 500 data blocks when calculating one block.
    Support doc is saying to change your config file so those settings can be made available for any calc script to use.
    On a side note, if this was working previously and now isn't then it is worth investigating if this is simply due to standard growth or a recent change that has made an unexpected significant impact.

  • SMP Exclusion due to length of service

    Hi all
    Please can you help - we have an employee who has TUPE'd in Service so IT0001, etc. have date of 01.04.2010 but IT0041 and IT0016 have an initial entry date of 2004 - but when we put a Maternity on for this employee she is being excluded from SMP for not enough length of service.
    Does anyone know if there is another IT we are supposed to be using - or if there is a known error with SMP checking the date for length of service?
    Thanks a lot
    Nyree

    Hi Nicola
    Unfortunately not, this is the standard SAP response that someone else sent me:
    'Why does Function module HR_GBSXP_INSUFFICIENT_LOS use IT0000 and not Function module HR_ENTRY_DATE?'
    The length of service uses two checks, IT0000 and IT0041.  OxP will use IT0041 based upon your configuration of GLOSS.  SxP will use IT0000 and any historic data that has been loaded using the guidlines offered in the SAP user guide for Absence Data- take-on.
    The legislation states that the employee must be employed "into" the QW/MW to qualify for SMP/SPP/SAP. So they must be ACTIVE at the start of the QW/MW.
    A date on IT0041 cannot give this information, because they could have been employed by you well before the 26 week cut-off date before the start of the QW/MW, but still have not been employed by you "into" the QW/MW, so wont qualify.
    The check is therefore two-fold.
    1) Check that they are employed "into" the MW/QW, which can ONLY be
    based on IT0000.
    2) Check that they satify the Length of Service check, which can be
    based on IT0000, IT0001, IT0016, IT0041 or your own code.
    So, we're having to manually pay the employees the SMP (the occupational is fine because that works on IT0041) if they have transferred or TUPE'd and then go on Maternity within the first 6 months before they qualify for SMP based on IT0000 date.
    The route we're looking into now is to have the IT0000 & IT0001 dates as the employee's original start date to mirror IT0041 but with IT0008, etc. as their true transfer / TUPE date - that way entitlement can be based on the correct date, but we want the original IT0000 to be Inactive rather than active and I think that is going to cause us problems when the system calculates the entitlement again- but haven't got that far yet
    Cheers
    Nyree

  • How to summarize age ranges i.e 0-5, 6-10........?

    Post Author: SunilKanta
    CA Forum: General
    Hi,
    I am new to crystal reports, i am designing a report i.e cross tab report as shown below,
    AGE TABLE
    0-5
    6-10
    11-15
    16-20
    21-25
    26-28
    CLASS A Count
                     7
                   15
    CLASS B Count
                     7
                   15
    CLASS C Count
                    109
                 155
                 120
                   96
                   89
    Now my questions are,
    How to display age ranges i.e 0-5, 6-10,........?
    How to group ages in range and get the count or any summarized value ?
    Here i am passing three parameters to the report which are
    1. prmLowAge
    2. prmHighAge
    3. prmAgeBand
    Above shown sample is characterised with prmAgeBand = 5, prmLowAge = 0 and prmHighAge = 28.
    And if possible please try to find the solution for variable age bands.
    Please i am very desperate. Please help me in solving this .

    Post Author: Ishe
    CA Forum: General
    You can use a Do...While loop.  You can use the funtion below:
    LOCAL STRINGVAR AGEGRP;LOCAL NUMBERVAR AGECNT := 0;
    DO (AGEGRP := CSTR(AGECNT,0) + '-' + CSTR(AGECNT+5,0);AGECNT := AGECNT + 5)WHILE AGECNT < ;
    AGEGRP
    Also, you may want to use the following funtion to get , because the formula you were going to use would only compare the year of birth to the current year and ignore the number of months and days difference.
    Int(DateDiff("d",{table.BirthDate},CurrentDate)/365)

  • How to create age range according to customer's requirement

    SAP delivered standard age range(0age_range) as below:
    1  <20
    2  20 - 29
    3  30 - 39
    4  40 - 49
    5  50 - 59
    6  60 - 69
    7  >= 70
    Cusomter's requirement:
    1     <=25
    2     26 - 30
    3     31 -35
    4     36 - 40
    5     41 - 45
    6     46 - 50
    7     51 - 55
    8     >= 56
    How to handle this case if we use 0age instend of fixed age range(0age_range). should we maintain this from external flatfile, if yes, please provider the format. Thank!

    Hi,
    You can write a routine in the update rules for the range as you mentioned.
    Plz find the below code which may help u...
    DATA: AGE TYPE 0AGE.
      IF AGE <= 25.
          RESULT = '1'.
      ELSEIF AGE > 26 AND AGE <= 30.
          RESULT = '2'.
      ELSEIF AGE > 31 AND AGE <= 35.
          RESULT = '3'.
      ELSEIF AGE > 36 AND AGE <= 40.
          RESULT = '4'.
      ELSEIF AGE > 41 AND AGE <= 45.
          RESULT = '5'.
      ELSEIF AGE > 46 AND AGE <= 50.
          RESULT = '6'.
      ELSEIF AGE > 51 AND AGE <= 55.
          RESULT = '7'.
      ELSEIF AGE >= 56.
          RESULT = '8'.
      ENDIF.
    Hope this helps u...
    Regards,
    KK.

  • Range Calculation

    Hi
    I have one age field(values eg 10,20,15,12).But report requirement is to have details based on age ranges(eg 0-5,5-10 etc.)
    Can anyone please tell me how can I handle this with discoverer.
    Please advice
    Thanks
    Pooja

    I am able to form Range..with formula u have provided,but still facing some issue.
    Data is like this
    Age No of People Calc(Age Range)
    100 9 100-105
    103 2 100-105
    But I want to show information like this
    No of People Calc(Age Range)
    11 100-105
    I have applied group sort on calc.But it doesnt solved my problem.
    Plesae suggest
    Regards
    Pooja

  • Length of Service

    Hi Experts,
    Please help me with the infotype field for Length of Service.
    Regards,
    Srik

    There is no infotype for the same.
    But you can identify from the 0000 infotype date for the hiring action and termination action.
    Also if the person is not yet retired and you want to identify the length of service on retirement and you are maintaining the date of retirement in 0041 infotype.
    Then the difference of hiring and this 0041 retirement date can give you length of service.
    REgards,
    Divya

  • Creating age range

    Hi All,
    I am creating a technical specification document for below report. and as of now i dont have sandbox system
    age range  ,     no. employee as per age range  ,  No. of spouse as per age range.
    we are having 0age_range  and 0age  in standard cube 0PA_C01 .
    i have a doubt here if i create a calculated keyfigure for age of spouse using DOB add it in my cube and then in query designer if i drag age range in columns and age and spouse age in rows will i get age range wise number of employees and number of spouse ???
    Apoorva

    Yes you can do that. Here is an example from another thread. The chart is using the data in the "stacked bar chart" table which was derived from the raw data. The bars for the first series are formatted so they are invisible (no fill). You can simplify it somewhat if you don't need a median.

Maybe you are looking for