Balance Dimensions

Hi,
We are impelmenting HRMS&Payroll Rel1.02. This is not UK or US install. It is a Global Install
1. The Pay advice Report does not show up the Deductions. The Earnings and Total Pay comes up.
How do we get the Deductions on the Pay Advice
2. How do you create a balance dimension which would accumulate the balances from the start of the payroll processing year and never reset it to zero?
To hold YTD,QTD,PTD balances we can run the create balance dimension program and define the dimension. But the balances would be reset to zero depending on the frequency specified when running the program. Our requirement is to create a dimension which will never reset the balance to zero. How do we achieve this?Your suggestions are most welcome.
Note: We have already applied global hrms patch and run zz legislation program for Pakistan.
Regards
Majid

I have completed all the prereq which includes
1- implementation of global hr patch.
2- Run international hrms setup.
With out all these i couldn't be able to define a single element in global hrms.
My question was, how to stop oracle payroll to set the balance zero.
Because here in Pakistan, personal loans are sanctioned
for more than 1 year e.g.
A company provide me loan of 120000 and I have to pay it in 2 years of
equal installment of 10000 Rs.
Now if payroll set the balance of installment to zero due to the balance dimension defined after
completion of an year, how it would be possible for payroll to deduct
installment amount in another month of next year when the balance has
already been set to zero by payroll...??
I hope you understand the scenario and reply soon.
Regards
Majid

Similar Messages

  • Balance Dimension for Elements

    Hi,
    Anyone can tell what is difference between ASGLTD and ASGCOMP_LTD? Can we use ASGCOMP_LTD for Balance Dimensions for Elements?
    Pl.help.
    Thanks
    Kavi

    Hello
    I think you can try PERYTD (Person Calendar Year To Date) OR ASGYTD (Assignment Calendar Year To Date). Also Create Balance Dimension is a UK Legislative specific program and is not available in other Legislation so if you want it for UK and PERYTD or ASGYTD doesn't work then you can try it.
    Hope this helps !
    Gaurav

  • Balance Dimension in Payroll

    Hi Friends,
    Balance Dimension in Payroll :
    Is der any Balance dimension which will hold the value of Previous year YTD?
    As per my requirement, i want to use the previous year accumulated balance value(from 01-Apr-2010 to 31-Mar-2011) in the current year (in the month of April 2011).
    Thanks & Regards,
    Raghu
    Edited by: Raghu on Apr 20, 2011 7:16 PM
    Edited by: Raghu on May 2, 2011 12:17 AM

    Hi,
    I am not sure what is your requirement.As far as my knowledge is concerned there is no Previous YTD balance dimension.
    You have balance_dimension suc as YTD,QTD,RUN etc.When you call function the pay_balance_pkg.get_value , you need to pass the balance_dimension,
    assignment_id and date_earned parameter andit will retrun the appr value.In your case pass the previous year date for which you need data.
    Hope this helps.
    regards,
    A

  • How to use a balance dimension in a FastFormula

    Hello all,
    How can I call a certain balance dimension and store it in a local variable like SALARY_ASG_RUN.
    Regards,
    Usher

    Hi,
    You cannot get a previous month's balance value from a DBI in the formula.
    You need to write a formula function which gets you the data -
    We have used the below for the same
    -- GET_PREV_SALARY
    FUNCTION get_prev_salary(p_assignment_action_id   IN NUMBER
                            ,p_balance_name           IN VARCHAR2
                            ,p_database_item_suffix   IN VARCHAR2
                            ,p_period_start_date      IN DATE
                            ,p_no_month               IN NUMBER
                            ,p_flag                   IN VARCHAR2
                            ,p_context                IN VARCHAR2
                            ,p_context_val            IN VARCHAR2
                            ,p_days                   IN OUT NOCOPY NUMBER) RETURN NUMBER
    IS
        CURSOR get_prev_periods_dates (c_assignment_action_id NUMBER
                                      ,c_period_start_date    DATE) IS
        SELECT  ptp.start_date  start_date
               ,ptp.end_date    end_date
               ,ppa.action_type
               ,MAX(paa2.assignment_action_id) assignment_action_id
         FROM   pay_assignment_actions paa1
               ,pay_assignment_actions paa2
               ,per_all_assignments_f  paaf1
               ,per_all_assignments_f  paaf2
               ,pay_payroll_actions    ppa
               ,pay_payroll_actions    ppa1
               ,per_time_periods       ptp
               ,per_time_period_types  ptpt
         WHERE  paa1.assignment_action_id     = c_assignment_action_id
         AND    ppa1.payroll_action_id        = paa1.payroll_action_id
         AND    ppa1.business_group_id        = paaf1.business_group_id
         AND    paa1.assignment_id            = paaf1.assignment_id
         AND    paaf1.person_id               = paaf2.person_id
         AND    paaf2.business_group_id       = paaf1.business_group_id
         AND    paaf2.assignment_id           = paa2.assignment_id
    --    AND    paa1.tax_unit_id              = paa2.tax_unit_id
         AND    paa2.payroll_action_id        = ppa.payroll_action_id
         AND    paa2.source_action_id         IS NULL
         AND    ptp.start_date                < c_period_start_date
         AND    ppa.payroll_id                = ptp.payroll_id
         AND    ppa.business_group_id          = paaf2.business_group_id
         AND    ptp.period_type                = ptpt.period_type
         AND    ppa.action_type               IN ('R','Q','I','B')
         AND    ppa.action_status             IN('C','U')
         AND    ppa.date_earned  BETWEEN ptp.start_date              AND ptp.end_date
         AND    ptp.end_date     BETWEEN paaf1.effective_start_date  AND paaf1.effective_end_date
         AND    ptp.end_date     BETWEEN paaf2.effective_start_date  AND paaf2.effective_end_date
         GROUP BY ptp.start_date, ptp.end_date, ppa.action_type
         ORDER BY 1 desc;
    /*  SELECT ptp.start_date start_date
              ,ptp.end_date end_date
              ,ppa.action_type
              ,MAX(paa2.assignment_action_id) assignment_action_id
        FROM   pay_assignment_actions paa1
              ,pay_assignment_actions paa2
              ,per_all_assignments_f paaf1
              ,per_all_assignments_f paaf2
              ,pay_payroll_actions ppa
              ,per_time_periods ptp
        WHERE paa1.assignment_action_id     = c_assignment_action_id
        AND   paa1.assignment_id            = paaf1.assignment_id
        AND   paaf1.person_id               = paaf2.person_id
        AND   paaf2.assignment_id           = paa2.assignment_id
        AND   paa1.tax_unit_id              = paa2.tax_unit_id
        AND   paa2.payroll_action_id        = ppa.payroll_action_id
        AND   paa2.source_action_id         IS NULL
        AND   ptp.start_date < c_period_start_date
        AND   ppa.payroll_id                = ptp.payroll_id
        AND   ppa.time_period_id            = ptp.time_period_id
        AND   ppa.action_type IN ('R','Q','I','B')
        AND   ppa.action_status             IN('C','U')
        AND   ptp.end_date BETWEEN paaf1.effective_start_date
                                            AND paaf1.effective_end_date
        AND   ptp.end_date BETWEEN paaf2.effective_start_date
                                            AND paaf2.effective_end_date
        GROUP BY ptp.start_date, ptp.end_date, ppa.action_type
        ORDER BY 1 desc;
        CURSOR get_legal_employer_id(c_work_center_id NUMBER) IS
        SELECT  hoi.organization_id
        FROM    hr_organization_information hoi
        WHERE   hoi.org_information1         = c_work_center_id
        AND     hoi.org_information_context  = 'ES_WORK_CENTER_REF';
        l_def_bal_id          NUMBER;
        l_amount              NUMBER;
        l_amt                 NUMBER;
        l_ctr                 NUMBER;
        l_cnt                 NUMBER;
        l_start_date          DATE;
        l_date                DATE;
        l_legal_employer_id   hr_All_organization_units.organization_id%TYPE;
    BEGIN
        hr_utility.trace('~~Entering pay_es_ss_calculation.get_prev_salary');
        l_def_bal_id := get_defined_bal_id(p_balance_name, p_database_item_suffix);
        hr_utility.trace('~~~~ p_balance_name'||p_balance_name);
        hr_utility.trace('~~~~ p_database_item_suffix'||p_database_item_suffix);
        hr_utility.trace('~~~~ l_def_bal_id'||l_def_bal_id);
        l_amount := 0;
        l_amt := 0;
        l_ctr := 0;
        l_cnt := 0;
        p_days := 0;
        l_date := to_date('01-01-0001','dd-mm-yyyy');
        IF p_context = 'TAX_UNIT_ID' THEN
            OPEN  get_legal_employer_id(to_number(p_context_val));
            FETCH get_legal_employer_id INTO l_legal_employer_id;
            CLOSE get_legal_employer_id;
            pay_balance_pkg.set_context('TAX_UNIT_ID', l_legal_employer_id);
            hr_utility.trace('~~~~ Setting TAX_UNIT_ID Context '||l_legal_employer_id);
        END IF;
        hr_utility.trace('~~~~ Start loop  p_period_start_date '||p_period_start_date);
        hr_utility.trace('~~~~ p_assignment_action_id '||p_assignment_action_id);
        FOR i IN get_prev_periods_dates( p_assignment_action_id, p_period_start_date) LOOP
            IF l_date = i.start_date AND l_amt <> 0 THEN
                NULL;
            ELSE
                l_amt := 0;
                IF l_date <> i.start_date THEN
                    l_ctr := l_ctr + 1;
                END IF;
                l_amt := pay_balance_pkg.get_value (l_def_bal_id, i.assignment_action_id);
                IF l_amt <> 0 THEN
                    l_cnt := l_cnt + 1;
                END IF;
                l_amount := l_amount + l_amt;
                hr_utility.trace('~~~~ Inside loop  start_date '||i.start_date);
                hr_utility.trace('~~~~ assignment_action_id '||i.assignment_action_id);
                hr_utility.trace('~~~~ l_ctr '||l_ctr);
                hr_utility.trace('~~~~ l_cnt '||l_cnt);
                hr_utility.trace('~~~~ l_amt '||l_amt);
                hr_utility.trace('~~~~ l_amount '||l_amount);
                hr_utility.trace('~~~~ p_no_month '||p_no_month);
                IF l_amt <> 0 OR p_flag = 'N' THEN
                    p_days := p_days + last_day(i.start_date) - last_day(add_months(i.start_date,-1));
                END IF;
                IF l_ctr >= p_no_month THEN
                    IF l_cnt = p_no_month OR p_flag = 'N' THEN
                        RETURN l_amount;
                    /*ELSE
                        l_ctr := p_no_month - 1;*/
                    END IF;
                END IF;
                l_date := i.start_date;
            END IF;
        END LOOP;
        hr_utility.trace('~~Exiting pay_es_ss_calculation.get_prev_salary');
        RETURN l_amount;
    END get_prev_salary;
    To get the previous month value -
    Previous_Month_val = ES_GET_PREVIOUS_BALANCE('Gross','_ASG_PTD',Start_Date, 1, 'Y',' ',Work_Center_ch,num_days)
    To get the previous 3 months value -
    Previous_3_Month_val = ES_GET_PREVIOUS_BALANCE('Gross','_ASG_PTD',Start_Date, 3, 'Y',' ',Work_Center_ch,num_days)
    Assignment_action_id is passed as a context to the formula function.
    You need to tweak the code to suit your requirements.
    Cheers,
    Vigneswar
    PS :
    -- GET_DEFINED_BAL_ID
    FUNCTION get_defined_bal_id(p_bal_name         IN  VARCHAR2
                               ,p_db_item_suffix   IN  VARCHAR2) RETURN NUMBER
    IS
        CURSOR get_def_bal_id is
        SELECT pdb.defined_balance_id
        FROM   pay_balance_types pbt
              ,pay_balance_dimensions pbd
              ,pay_defined_balances pdb
        WHERE  pdb.balance_type_id = pbt.balance_type_id
        AND    pdb.balance_dimension_id = pbd.balance_dimension_id
        AND    pbt.balance_name = p_bal_name
        AND    pbd.database_item_suffix = p_db_item_suffix;
        l_def_bal_id NUMBER;
    BEGIN
        OPEN get_def_bal_id;
        FETCH get_def_bal_id into l_def_bal_id;
        CLOSE get_def_bal_id;
        RETURN l_def_bal_id;
    END get_defined_bal_id;

  • Use of various balance dimensions

    Can some tell me what is the use of various balance dimensions
    i.e when to use the following dimensions:
    Assignment Level within a run
    Assignment Level in the current earnings period
    Assignment Level all time
    Assignmnet Level in the current processing year
    ASGYTD= Assignment Level in the year
    ELEMENTITD= Element Entry level for all time
    ELEMENTPTD= Element Entry level for this period
    Please can some one throw some light on the above Balance Dimensions so as to know how one has to use these in the FF.
    Please help

    Hii
    Don't create unique key with a column of a fact table which refers with a foreign key to another table (dimension)! This data must be unique in the dimension table!
    But indexes in the columns of foreign keys will speed up your queries.
    Ott Karesz
    http://www.trendo-kft.hu

  • Create Balance Dimension process

    Hi I am using International HRMS.
    I need to know that whether User Defined balances are supported for International HRMS or not.
    Has anyone used it with Global HR. By default "Create Balance Dimension process" is not available in the request group "Global HR and Payroll Processes"
    Regards
    Anwar
    Edited by: faanwar on Jul 1, 2009 10:17 AM

    Balances are supported in International Hrms.
    You should run first a concurrent program to create your proper legislation (copy from ZZ), and as such some balance dimensions will be available to your legislation. "International HRMS Setup" if i recall well.

  • Balance Dimension

    Hi All,
    The sick leave is paid leave for the first 30 days and unpaid for the next 30 days during one year (starting from the first day of the leave).
    For Example: if an employee take the sick leave on 1-sep-2008 the balance of the leave must keep the taken days of this leave untill 31-aug-2009 (one year)
    Can anyone tell me what is the proper balance dimension to use with this case please?
    or any another solution or suggestion please.
    Best Regards,

    I do not see how a balance dimension will do that for you.
    Maybe you need some fast formula logic on the start date of your absence. That is sometimes done via user defined (plsql) functions.

  • Creation of New Dimensions

    Dear
    I want to create new dimensions as I have only ASGRUN and ASGPTO_YTD in the balance dimension form
    Secondly I want to store running balances of an element value start from employee joining date to end of service.
    Thanks

    what is your legislation?
    If there exists a localisation for your legislation, then you should have more then 2 balance dimensions.
    If there is no localization, creating one (from ZZ) should you also give more then 2 dimensions. (see ML 261452.1)
    So i'm surprised you do not have the ASGITD (Inception to date, which accumulates run results from the hire date on).
    There is also a standard concurrent program to add extra dimensions, but i would first try to understand why the seeded ASGITD is not there.

  • Difference b/w Person & Assignment Dimension

    i have created balance dimension of Basic salary having two balance dimension which are
    1.Assignment Inception To Date
    2.Person Inception To Date
    Could you please elaborate, when it impace would be occured because currently both have same value.
    thanks.

    Which level are you at
    Pre 12.0.6 -
    Person level balances do not aggregate assignments across periods_of_service.
    So PERYTD will only give you summed up data for multiple assignments in the same periods of service.
    Post 12.0.6 -
    Person Level balances do aggregate assignments across periods_of_Service.
    So PERYTD will sum all assignments for the person, across periods_of_service(term, re-hires cases).
    Check the thread for more Info -
    http://www.hcmaces.com/forums/ubbthreads7/ubbthreads.php/topics/8796/Re_Latest_Balances#Post8796
    You can check the actual Sql query. use thie -
    select user_entity_id,definition_text from ff_database_items -- user_entity_id
    where user_name = 'BASIC_SALARY_PER_YTD'; -- change this to your DBI
    select route_id from ff_user_entities -- route_id
    where user_entity_id = 1228; -- user_entity_id from the previous query
    select text from ff_routes -- text
    where route_id = 286; -- route_id from previous queryNow you can construct a sql statement -
    Select /* definition_text */ -- from the 1st query
    from
    /* text */ -- from the 3rd queryHope that helps.
    Plese close the thread if your queries are answered.
    Cheers,
    Vignesh

  • How to reinitailize balances?

    Hi,
    we created an element 'Advance1' for advance recovery and two balances defined 'total installemnts paid ' for Total no.of. installments paid and 'Amount repaid' for total amount repaid..
    That element 'Advance1' was used for an employee for an advance of 2 installments. Everyting worked fine till all installments got over.
    Again used the same element for another advance of 5 installments. If I run for the first installment it is taking balances of previous advances.
    what to do? Whether I have to reinitialise balances once advance recovery is completed. if so, how to carry out?
    Pl. help. Urgent..
    Thanks in advance..
    Kavi

    Hello,
    I have a requirement similar to the one above. In my case, I used the balance dimension ASG_ITD to make decision about the extent of the repayment of a loan. It worked fine till the end of the loan. My problem is when the same person wants to get the same loan some other time, the balance continues from where it stopped. I will like it to be reinitialised to zero so that my logic will be correct for fresh loan.
    In trying to solve this problem, I actually carried out what was suggested above but could not work out. I created a non-recurring, indirect information element and an input value "zerorise" to feed into the balance as subtaction when the loan finishes. I wrote a fast formula to include the condition for triggering the information element so that it will reinitialise the balance at the appropriate time. But when I got to the formula result, I could not pick up the information element. I do not know what is wrong. When I changed the element from information to either Earning or Invuluntary Deduction, I could pick it. But using Earning or Invuluntary Deduction will affect the Gross Income and Total Deduction balances as they are fed from Earning and Deduction classification respectively. It seem as if Information element can not appear in Formula Result. Please help me confirm this.
    Also is there another approach I can use to re-initialise this balance. I must use ASG_ ITD because i do not know when the staff will finish paying back the loan and I must re-initialise it after the loan to prepare him to take another one some other time.
    -Ibrahim

  • Performance of Balance API in Payroll.....

    We have one years worth of payroll data (145,000,000 in pay_run_result_values). Many of the recently deliver year-end pl/sql scripts use the pay_us_tax_balance_pkg (Balance API) and run for several days!!!!!! One call to this API takes 1-2 hours.
    What can we do aside from adding hardware?
    I tried Anaylzing tables and enabling Cost Based Optimizer and things were only worse. We can not modify the code (it is using dynamic SQL btw). HELP!
    null

    Hi,
    I am not sure what is your requirement.As far as my knowledge is concerned there is no Previous YTD balance dimension.
    You have balance_dimension suc as YTD,QTD,RUN etc.When you call function the pay_balance_pkg.get_value , you need to pass the balance_dimension,
    assignment_id and date_earned parameter andit will retrun the appr value.In your case pass the previous year date for which you need data.
    Hope this helps.
    regards,
    A

  • Help document on dimension

    kindly help me with a document that can clearly explain the various balance dimensions such as (_ASG_PROC_PTD, ASGRUN, ELEMENTITD,and others)in oracle payroll.
    please help!

    any 1 out there to reply me??

  • Reset Balance ......

    Dear Guru,
    I need to do Reset a balance to zero. like we do have balance Dimensions to store some values after every payroll run. if i need to reset that value zero how to do it.
    Thanks
    Archna

    Hi Archana,
    You can use Balance Adjustments for this but at a time ..you can do for a sinle employee only. If this is for a set of employees..you can run a script. Suppose if balance is 3000 (amount)..enter -3000 and save in the balance adjustments window. Balances ae updated automatically. This is a seperate process and not linked to payroll. You can check the balances..you will find '0'. Even for no.of days also same procedure.
    Regards,
    Siva

  • How Can I do automated update base on changing TIME dimension ?

    I am a beginner of ESSBASEhow Can I do automated update base on changing TIME dimension ? how can I deal with the change of TIME dimension ? shall I update outline?one more question,how can i deal with the dimension like this:------gp--------- p1-----------c1-----------d1--------- p2-----------c2-------------cc2-------------cd2-------------ce2 -----------c3-----------c4 --------- p3the un-balance dimension? shall I make them to balance?

    Hi man, where are you from?If you are a spansh spoken please send again the problem in Spanish cause I can't understand exactly what do you need.Greetings,Raleksander

  • Balances  from Nov(prev year) to Dec(curnt year)

    Hi,
    We would like to have a balance maintained from Dec of previous year to Nov of current year. How can we do this. We are using UK legislation, can we create our own balance dimension or any other simple method is there.
    Tks.

    Yes, there is a standard concurrent program 'Generate balance dimension'. Parameters are start date (01-11 in your case), and you should opt for a yearly cutt off.

Maybe you are looking for

  • Superdrive is no longer recognized

    I just tried to pop in my brand spanking new Six Feet Under vol.2 soundtrack to rip to itunes....and the superdrive no longer grabs the cd, and when i checked out "about this mac" and looked under "disc burning", there is no longer any optical drive

  • .AIR application not associated on Android?

    Hi folks, I have a feeling this is a real newbie question so bear with me.  I'm trying to install/open an AIR application on my tablet, a Toshiba Thrive that runs Android 3.0.  I've installed Adobe AIR, but the .air file installer package isn't assoc

  • Unconstrained Plan looking for Internal Sales Order Number in Workbench

    There is a column under the Order tab in the Supply/Demand form in ASCP that is titled INTERNAL SALES ORDER. The assumption is that this would in fact be the internal sales order number from the supplying inventory organization. However it comes in n

  • Error while starting "oracleDBConsoleorcl"

    Hi, I am new to OIM doing basic OIM installations i completed upto OIM server . Now the problem is getting error in starting services . when i click on "oracleDBConsoleorcl" am getting erro as "windows cant start the oracleDBConsoleorc on local compu

  • I woud like to change my birthday in apple ID. But server can't save my it!

    I woud like to change my birthday in apple ID. But server can't save my it! (at www.appleid.apple.com  i click save in manage account but symtem can't saved.)    Please help me.