Search This Blog

Monday, December 10, 2012

Enrolling Dependent from Benefits self Service in Oracle Advanced Benefits(OAB)

In Oracle Advanced Benefits, if employee select Employee + Spouse option through SSHR, system should ask him to select spouse from available dependents for enrollment.

Solution:
1. Go to Program Enrollment Requirement
2. Select Designation Level as Plan Type in Program
3. Select Plan Type name
4. Select Plan Type Dependent Designation as Required
5. Select Dependent Coverage Start Date and Dependent Coverage End Date
6. Click Dependent Change of Life Event
7. Add Life Event e.g. New Hire and select Change Dependent Coverage as May Either Add or Remove Dependents
8. Save the record
9. Retest Issue from self service.

Enrollment Codes with Descriptions for Standard and Advanced Benefits(OAB)

List of Enrollment Codes
 


Current, Can Keep or Choose; New, Nothing: If a person is currently enrolled in this compensation object, the person can keep their current elections or make new elections. If a person is not yet enrolled, the person cannot make an election.
Current, Can Keep or Choose; New, Can Choose: If a person is currently enrolled in this compensation object, the person can keep their current elections or make new elections. If a person is not yet enrolled, the person can make new elections.
Current, Can Keep or Choose But Starts New; New, Can Choose: If a person is currently enrolled in this compensation object, the person can keep their current elections or make new elections. The coverage ends at the end of the plan year and restarts the next day so that the participant must explicitly re-elect each year, even though the coverage amount may stay the same. If a person is not yet enrolled, the person can make new elections.

Note: You can only select this code from the Program or Plan Enrollment Requirements windows at either the plan type in program, plan in program, or plan level based on a life event. It is recommended that you select this code only for the Open enrollment life event.

Current, Choose Only; New, Can Choose: If a person is currently enrolled in this compensation object, the person must make an explicit election to stay enrolled. If a person is not yet enrolled, the person can make new elections.
Current, Choose Only; New, Nothing: If a person is currently enrolled in this compensation object, the person must make an explicit election to stay enrolled. If a person is not yet enrolled, the person cannot make an election.
Current, Keep Only; New, Can Choose: If a person is currently enrolled in this compensation object, the person must keep their current elections. If a person is not yet enrolled, the person can make new elections.
Current, Keep Only; New, Nothing: If a person is currently enrolled in this compensation object, the person must keep their current elections. If a person is not yet enrolled, the person cannot make an election.
Current, Lose Only; New, Can Choose: If a person is currently enrolled in this compensation object, the person must de-enroll from their current elections. If a person is not yet enrolled, the person can make new elections.
Current, Lose Only; New, Nothing: If a person is currently enrolled in this compensation object, the person must de-enroll from their current elections. If a person is not yet enrolled, the person cannot make new elections.

Automatic Codes:
Current, Assign; New, Assign (Automatic):
If the enrollment method code is Automatic, both current and new enrollees automatically enroll and cannot de-enroll.
Current, Nothing; New, Assign (Automatic): If the enrollment method code is Automatic, current enrollees automatically de-enroll; new enrollees automatically enroll and cannot de-enroll.
Current, Assign; New, Nothing (Automatic): If the enrollment method code is Automatic, current enrollees automatically enroll and cannot de-enroll; people not already enrolled cannot make an election.

Rule: Select Rule if you define a FastFormula rule to determine a person's electability based on their current enrollment status. The formula must be of the type Enrollment Opportunity.

List of Default Enrollment Codes

New, Defaults; Current, Nothing: If a person is not yet enrolled in a given benefit, enroll that person in the default enrollment for that benefit. If the person is already enrolled in that benefit, de-enroll the person from that benefit.
New, Defaults; Current, Defaults: If a person is not yet enrolled in a given benefit, enroll that person in the default enrollment for that benefit. If a person is already enrolled in a benefit, enroll the person in the default enrollment for that benefit.
New, Defaults; Current, Same Enrollment and Rates: If a person is not yet enrolled in a given benefit, enroll that person in the default enrollment for that benefit. If a person is already enrolled in a benefit, do not change that enrollment or the activity rate.
New, Defaults; Current, Same Enrollment but Default Rates: If a person is not yet enrolled in a given benefit, enroll that person in the default enrollment for that benefit. If a person is already enrolled in a benefit, do not change the enrollment but assign the default activity rate.
New, Nothing; Current, Same Enrollment and Rates: If a person is not yet enrolled in a given benefit, do not enroll that person in that benefit. If a person is already enrolled in a benefit, do not change that enrollment or the activity rate.
New, Nothing; Current, Same Enrollment but Default Rates: If a person is not yet enrolled in a given benefit, do not enroll that person in that benefit. If a person is already enrolled in a benefit, do not change that enrollment but assign the default activity rate.
New, Nothing; Current, Defaults: If a person is not yet enrolled in a given benefit, do not enroll that person in that benefit. If a person is already enrolled in a benefit, enroll that person in the default enrollment for that benefit.
New, Nothing; Current, Nothing: If a person is not yet enrolled in a given benefit, do not enroll that person in that benefit. If the person is already enrolled in that benefit, de-enroll that person from that benefit.
Rule: Indicates that you will specify a FastFormula rule for this default treatment. The formula must be of the type Default Enrollment.

 

Saturday, November 24, 2012

Total Compensation Statement Is Displaying The Thousand Separator As 'U' Instead Of ','

The printable statement version of the Total Compensation Statement is showing the Thousand Separator as 'u' instead of ','.
Fix:

To implement the solution, please execute the following steps:

1. Login to System Administrator responsibility.

2. Go to Profile > System.

3. Search ICX: Numeric characters and set the format with the correct value.(i.e. '10,000.00')

4. Clear the Cache from Functional Administrator

5. Retest the issue.

6. Migrate the solution as appropriate to other environments.

Sunday, November 11, 2012

The program or plan year enrollment period cannot be found for this compensation object - Oracle Advanced Benefits

Error - The program or plan year enrollment period cannot be found for this compensation object. Suggestion: Define an enrollment period in the Program Enrollment Requirements window or the Plan Enrollment Requirements window for this life event. This error occurred in the following package : ben_enrolment_requirements.enrolment_requirements. Context at time of error : Program ID : 1 Plan ID : 1 Effective Date : 11-NOV-2012 Life Event Occurred Date : 11-NOV-2012


Solution:
Ensure that enrollment period information is set up.
Navigation:  Total Compensation > Programs and Plans > Program
Enrollments Requirements > query your Program > selecting the Timing Tab,
then select the Life Event tab within the Timing tab. 

Set up the Coverage, Rate and Period information entered for every life event
that is listed.  These can be accessed under the button labeled 'General'.

Example: 
Coverage:
Enrollment Coverage Start Date Event
Enrollment Coverage End Date 1 Day Before Event

Rates:
Rate Start Date Event
Rate End Date 1 Day Before Event

Periods:
Enrollment Period Start Date As of Event Date
Enrollment Period End Date 30 Days after Event Date
Cheersss...
Sandip

Wednesday, August 15, 2012

Employee wise Costing Details Oracle Payroll Costing

SELECT   papf.employee_number, papf.full_name,
            ppa.payroll_action_id
         || ' : '
         || con.consolidation_set_name
         || ' => Run Date: '
         || ppa.creation_date payroll_action,
         pet.element_name, SUM (pc.costed_value) credit, TO_NUMBER ('0')
                                                                        debit,
         pcak.segment1, pcak.segment2, pcak.segment3 ACCOUNT,
         (SELECT description
            FROM fnd_flex_values_vl f
           WHERE flex_value_set_id = 1013546
             AND f.flex_value_meaning = pcak.segment3
             AND ROWNUM < 2) "Account Meaning",
         pcak.segment4, pcak.segment5, pcak.segment6,
         ppa.creation_date run_date, ppa.effective_date
    FROM per_all_people_f papf,
         per_all_assignments_f paf,
         pay_assignment_actions paa,
         pay_payroll_actions ppa,
         pay_payrolls_f ppay,
         pay_personal_payment_methods_f pppm,
         pay_external_accounts pea,
         pay_costs pc,
         pay_cost_allocation_keyflex pcak,
         pay_input_values_f piv,
         pay_element_types_f pet,
         pay_consolidation_sets con
   WHERE papf.person_id = paf.person_id
     AND paf.business_group_id = 81
     AND ppa.payroll_id = ppay.payroll_id
     AND paa.assignment_id = paf.assignment_id
     AND paa.payroll_action_id = ppa.payroll_action_id
     AND pc.assignment_action_id = paa.assignment_action_id
     AND pppm.assignment_id(+) = paf.assignment_id
     AND pppm.external_account_id = pea.external_account_id(+)
     AND pcak.cost_allocation_keyflex_id = pc.cost_allocation_keyflex_id
     AND pet.element_type_id = piv.element_type_id
     AND piv.input_value_id = pc.input_value_id
     AND con.consolidation_set_id = ppa.consolidation_set_id
     AND pet.business_group_id = paf.business_group_id
     AND papf.business_group_id = paf.business_group_id
     AND ppa.action_status = 'C'
     AND ppa.action_type = 'C'
     --   AND    Trunc(SYSDATE) = Trunc(Ppa.Creation_Date)
     AND TRUNC (SYSDATE) BETWEEN TRUNC (pet.effective_start_date)
                             AND TRUNC (pet.effective_end_date)
     AND LEAST
             (xx_hr_general_pkg.get_termination_date (paf.person_id,
                                                        paf.business_group_id
                                                       ),
              TRUNC (SYSDATE)
             ) BETWEEN TRUNC (paf.effective_start_date)
                   AND TRUNC (paf.effective_end_date)
     AND TRUNC (SYSDATE) BETWEEN TRUNC (papf.effective_start_date)
                             AND TRUNC (papf.effective_end_date)
     AND LEAST
             (xx_hr_general_pkg.get_termination_date (paf.person_id,
                                                        paf.business_group_id
                                                       ),
              TRUNC (SYSDATE)
             ) BETWEEN NVL (TRUNC (pppm.effective_start_date),
                            TO_DATE ('01-JAN-1980')
                           )
                   AND NVL (TRUNC (pppm.effective_end_date),
                            TO_DATE ('31-DEC-4000')
                           )
     AND TRUNC (SYSDATE) BETWEEN TRUNC (ppay.effective_start_date)
                             AND TRUNC (ppay.effective_end_date)
     AND pc.debit_or_credit = 'C'
--      AND    Ppa.payroll_action_id = &P_Pay_Action_Id
--      AND    Paf.payroll_id        = :P_Payroll_Id
GROUP BY papf.employee_number,
         papf.full_name,
            ppa.payroll_action_id
         || ' : '
         || con.consolidation_set_name
         || ' => Run Date: '
         || ppa.creation_date,
         pet.element_name,
         pcak.segment1,
         pcak.segment2,
         pcak.segment3,
         pcak.segment4,
         pcak.segment5,
         pcak.segment6,
         ppa.creation_date,
         ppa.effective_date
UNION
SELECT   papf.employee_number, papf.full_name,
            ppa.payroll_action_id
         || ' : '
         || con.consolidation_set_name
         || ' => Run Date: '
         || ppa.creation_date payroll_action,
         pet.element_name, TO_NUMBER ('0') credit, SUM (pc.costed_value)
                                                                        debit,
         pcak.segment1, pcak.segment2, pcak.segment3 ACCOUNT,
         (SELECT description
            FROM fnd_flex_values_vl f
           WHERE flex_value_set_id = 1013546
             AND f.flex_value_meaning = pcak.segment3
             AND ROWNUM < 2) "Account Meaning",
         pcak.segment4, pcak.segment5, pcak.segment6,
         ppa.creation_date run_date, ppa.effective_date
    FROM per_all_people_f papf,
         per_all_assignments_f paf,
         pay_assignment_actions paa,
         pay_payroll_actions ppa,
         pay_payrolls_f ppay,
         pay_personal_payment_methods_f pppm,
         pay_external_accounts pea,
         pay_costs pc,
         pay_cost_allocation_keyflex pcak,
         pay_input_values_f piv,
         pay_element_types_f pet,
         pay_consolidation_sets con
   WHERE papf.person_id = paf.person_id
     AND paf.business_group_id = 81
     AND ppa.payroll_id = ppay.payroll_id
     AND paa.assignment_id = paf.assignment_id
     AND paa.payroll_action_id = ppa.payroll_action_id
     AND pc.assignment_action_id = paa.assignment_action_id
     AND pppm.assignment_id(+) = paf.assignment_id
     AND pppm.external_account_id = pea.external_account_id(+)
     AND pcak.cost_allocation_keyflex_id = pc.cost_allocation_keyflex_id
     AND pet.element_type_id = piv.element_type_id
     AND piv.input_value_id = pc.input_value_id
     AND con.consolidation_set_id = ppa.consolidation_set_id
     AND pet.business_group_id = paf.business_group_id
     AND papf.business_group_id = paf.business_group_id
     AND ppa.action_status = 'C'
     AND ppa.action_type = 'C'
     AND TRUNC (SYSDATE) BETWEEN TRUNC (pet.effective_start_date)
                             AND TRUNC (pet.effective_end_date)
     AND LEAST
             (xx_hr_general_pkg.get_termination_date (paf.person_id,
                                                        paf.business_group_id
                                                       ),
              TRUNC (SYSDATE)
             ) BETWEEN TRUNC (paf.effective_start_date)
                   AND TRUNC (paf.effective_end_date)
     AND TRUNC (SYSDATE) BETWEEN TRUNC (papf.effective_start_date)
                             AND TRUNC (papf.effective_end_date)
     AND LEAST
             (xx_hr_general_pkg.get_termination_date (paf.person_id,
                                                        paf.business_group_id
                                                       ),
              TRUNC (SYSDATE)
             ) BETWEEN NVL (TRUNC (pppm.effective_start_date),
                            TO_DATE ('01-JAN-1980')
                           )
                   AND NVL (TRUNC (pppm.effective_end_date),
                            TO_DATE ('31-DEC-4000')
                           )
     AND TRUNC (SYSDATE) BETWEEN TRUNC (ppay.effective_start_date)
                             AND TRUNC (ppay.effective_end_date)
     AND pc.debit_or_credit = 'D'
--      AND    Ppa.payroll_action_id = &P_Pay_Action_Id
-- AND    Paf.payroll_id        = :P_Payroll_Id
GROUP BY papf.employee_number,
         papf.full_name,
            ppa.payroll_action_id
         || ' : '
         || con.consolidation_set_name
         || ' => Run Date: '
         || ppa.creation_date,
         pet.element_name,
         pcak.segment1,
         pcak.segment2,
         pcak.segment3,
         pcak.segment4,
         pcak.segment5,
         pcak.segment6,
         ppa.creation_date,
         ppa.effective_date
ORDER BY 1, 2

Tuesday, July 31, 2012

Check the column data contains alphanumeric data in Oracle

select employee_number from per_all_people_f where regexp_like(employee_number,'^[a-zA-Z]');

Output

SC1000
I10001

Tuesday, July 3, 2012

Effective Date Reminder in Oracle HRMS

Effective Date Reminder

When you are new to DateTrack, you may find it useful to be reminded of your effective date whenever you open a window that contains datetracked information. The reminder appears in a Decision window and asks whether you want to change your effective date. If you choose Yes, the Alter Effective Date window displays.
There is a user profile option called DateTrack:Reminder that determines when the Decision window appears. There are three possible values for this profile option:

    • Always

    • Never

    • Not Today
The Not Today value causes the reminder to appear when you navigate to a datetracked window and your effective date is not today's date.
You can set the value of this profile option in the Personal Profile Values window.