Search This Blog

Thursday, March 28, 2013

How do you Stop Users from Entering More Than 24 Hours in a Day in OTL

Our users are able to enter more than 24 hours worked in a day. This happens both in Self Service and Timekeeper form. How can we stop this from happening?

Solution:

Create a Time Entry Rule (TER) to handle the validation following these steps:

1) Create a Time Category with all the elements to which you want this TER to be applicable

2) Create a Daily Rule (need to setup a new Recurring Period of 1 day)

     Nav: US OTL Application Developer > Recurring Periods

    Create a new Recurring Period called Daily with Duration in Days = 1 and Start Date of 01-Jan-
    2000

3) Create a Time Entry Rule which uses the seeded formula 'Seeded formula for Period Maximum'  
    with the following Formula Inputs:
    Period = Daily
    Time Category - Time Category you just set up
    Maximum Hours = 24
    Reference Period = 1

4) Create a Time Entry Rule Group with the TER you just created in it
5) Assign the Time Entry Rule Group to the employee(s) via the Time Entry Rule Group preference

Reference Metalink Note - 276678.1

Monday, March 25, 2013

Same approver for both applications’ data in Oracle Time and Labor(OTL)

 
If the same approver, e.g., the Project Manager, should approve both your Payroll and Projects data, setting up both approval components with the ‘Project Manager’ approval mechanism would cause the approver to receive two notifications with identical data.
 
If your approvers would not wish to receive two notifications, an alternative setup can make use of the fact that each notification would display all of the timecard’s data. In this case, set up the approval style component for one of the applications with Project Manager as the approval mechanism and a low sequence number, and set up the approval style component for the other application with Auto Approve as the mechanism and a higher sequence number. Then the project managers’ notifications will display all of the timecard’s data, which they need to be able to determine if they should approve or reject the timecard.
 
Once they have acted on the notification, the auto-approval for the other application prevents their receiving a second notification with the same data.
 
 
 
 
 
 
 

Wednesday, March 20, 2013

You Must Run The Generate Flexfield And Mapping Information For Element Oracle Time and Labor (OTL)

When attempting to submit a timecard, the following error occurs:

"You must run the Generate Flexfield and Mapping Information process for element XXXXX."


Cause

This is caused by the incorrect setup of the element input values.

Solution

Please make sure that all elements that are going to be used in OTL have an Input Value called "HOURS" that is marked as "User Enterable".

Tuesday, March 12, 2013

Need to create link from OAF Page in Oracle Applications

1. On Apps Server , Navigate to $OA_MEDIA
2. Put your files in this location
3. Test if the files are accessible, by logging in to application and then chaning the URL in address bar to
   /OA_MEDIA/<personId>.pdf
4. In the page where you want the link to show , Extend the Controller for that page
   write code

OAMessageAttachmentLinkBean lnk = new OAMessageAttachmentLinkBean(true);
lnk.setDestination('/OA_MEDIA/PDF_'+personId+'.pdf');

Find appropriate Parent Bean to add this link
parentBean.addIndexedChild(lnk);

 

Partial Month proration in Oracle Advanced Benefits(OAB)




 
If proration has to be done based on number of days then use, Proration on Day/Month basis checkbox


Monday, March 11, 2013

Balance Query in Oracle Payroll - Element Feeding the Balance

Query 1:

SELECT   petf.element_name bal_feed_element_name,
         pivf.NAME bal_feed_input_name,pbt.balance_name, pbt.reporting_name,
         hr_general.decode_organization (pbt.business_group_id)
                                                               business_group,
         pbt.base_balance_type_id base_balance_name
--,PBT.UN
         ,
         hr_general.decode_lookup ('UNITS', pbt.balance_uom) units,
         pbt.currency_code, pbt.assignment_remuneration_flag,
         (SELECT element_name
            FROM pay_element_types_f
           WHERE element_type_id =
                    (SELECT element_type_id
                       FROM pay_input_values_f
                      WHERE input_value_id =
                                      pbt.input_value_id))
                                                         primary_element_name,
         (SELECT element_type_id
            FROM pay_input_values_f
           WHERE input_value_id = pbt.input_value_id) primary_input_name,        
         DECODE (pbf.scale,
                 1, 'ADD',
                 -1, 'SUBTRACT',
                 NULL
                ) balance_add_subtract,
         pbf.effective_start_date, pbf.effective_end_date, pbd.dimension_name,
         pbd.description, pdb.grossup_allowed_flag, pdb.run_balance_status,
         NULL initial_feed_element_name, NULL initial_feed_input_value_name,
         NULL attribute_name, NULL attribute_dimension
    FROM pay_balance_types pbt,
         pay_balance_feeds_f pbf,
         pay_element_types_f petf,
         pay_input_values_f pivf,
         pay_defined_balances pdb,
         pay_balance_dimensions pbd
   WHERE pbt.balance_type_id = pbf.balance_type_id
     AND pdb.balance_type_id = pbt.balance_type_id
     AND pbd.balance_dimension_id = pdb.balance_dimension_id
     AND pbf.input_value_id = pivf.input_value_id
     AND pivf.element_type_id = petf.element_type_id
    -- AND pbt.created_by != 1
    -- AND petf.created_by != 1
ORDER BY 1;


Query 2:
SELECT   petf.element_name bal_feed_element_name,
         pivf.NAME bal_feed_input_name,pbt.balance_name
    FROM pay_balance_types pbt,
         pay_balance_feeds_f pbf,
         pay_element_types_f petf,
         pay_input_values_f pivf
   WHERE pbt.balance_type_id = pbf.balance_type_id
     AND pbf.input_value_id = pivf.input_value_id
     AND pivf.element_type_id = petf.element_type_id
     AND petf.business_group_id = 82