Any advice or recommendations expressed in this blog (or sites they link to) is our own experience and are not validated by Oracle

Sunday, October 12, 2008

R12 Maintain Employee Data using a Single Responsibility in Multi Business Group

There will be always a question from the customers who are in an Global environment (in an multi Business Group environment) " How to maintain employee data using a single responsibility"
---Yes this was a constraint in 11.5.10, now in R12 this is made possible. Now customers will be able to maintain employees using the single responsibility across business group.

This functionality is Out of box with the product.
To leverage this functionality following are the pre-requistes/ Setups
  • HR module should be in Multi Buisness Group Environment
  • HR Organization hierarchy should be using Global hierarchy
  • HR Security Profile should be defind using the Global Security Profile form
  • Attach the global security profile to the HR: Security Profile at the Responsibility level

Once the above setup steps are completed, follow the below navigation

Global HRMS Manager > Maintaining Using Template > Maintain Employees

(M) View > find



Using the Find screen, In the Business Group Name field you will be able to select the Business group that you want to access the employee data and click find to retrieve the employee information.


Important Note: Using this method you will only be able to maintain the existing employee data. If you create any new employees using this responsibility, the employee data will be created in the default BG to which the responsibility is attached



Sunday, August 17, 2008

Adding Cost Center value to the OTL Timecard

The common requirement in any timecard configuration is to have a cost center field to charge the time against. By default in OTL Oracle provides the cost center field but for displaying the values in the Timecard you need to configure the ltd file and create a View to hold the cost center value

Following code can be used to create the view
CREATE OR REPLACE FORCE VIEW HXC_CUI_CUSTOM9_V ( display_value ,value ) AS select fv.flex_value'-'fv.DESCRIPTION display_value, to_char(flex_value_id) value from fnd_flex_values_vl fv, fnd_flex_value_sets fvs where fv.flex_value_set_id = fvs.flex_value_set_id and fvs.flex_value_set_name = 'GL_COA_COST_CENTER'

Following are the three layout needed to be modified

Payroll layout - hxczzhxclayt0000.ldt
Payroll Review page - hxczzhxclayt0005.ldt
Payroll Confirmation page - hxczzhxclayt0001.ldt

Replace the cost center segment with the below code

Modify the Payroll layout - hxczzhxclayt0000.ldt

BEGIN HXC_LAYOUT_COMPONENTS "Payroll Timecard Layout - Cost Center"OWNER = "CUSTOM"COMPONENT_VALUE = "COSTCENTER"REGION_CODE = "HXC_CUI_TIMECARD"REGION_CODE_APP_SHORT_NAME = "HXC"ATTRIBUTE_CODE = "HXC_TIMECARD_COST_CENTER"ATTRIBUTE_CODE_APP_SHORT_NAME = "HXC"SEQUENCE = "190"COMPONENT_DEFINITION = "CHOICE_LIST"RENDER_TYPE = "WEB"PARENT_COMPONENT ="NEC Payroll Timecard Layout - Day Scope Building blocks for worker timecard matrix"LAST_UPDATE_DATE = "2004/05/24"
BEGIN HXC_LAYOUT_COMP_QUALIFIERS "NEC Payroll Timecard Layout - Cost Center"OWNER = "CUSTOM"QUALIFIER_ATTRIBUTE_CATEGORY = "CHOICE_LIST"QUALIFIER_ATTRIBUTE1 = "Custom9VO" ########Changed to Custm9VO ##############QUALIFIER_ATTRIBUTE4 = "N"QUALIFIER_ATTRIBUTE8 = "DisplayValue"QUALIFIER_ATTRIBUTE9 = "Value#NUMBER"
QUALIFIER_ATTRIBUTE10 ="oracle.apps.hxc.selfservice.timecard.server.Custom9VO" ########Changed to Custm9VO ##############
QUALIFIER_ATTRIBUTE11 = "TIMECARD_BIND_END_DATETIMECARD_BIND_END_DATE"QUALIFIER_ATTRIBUTE17 = "OraTableCellText"QUALIFIER_ATTRIBUTE20 = "N"QUALIFIER_ATTRIBUTE21 = "Y"QUALIFIER_ATTRIBUTE22 = "L"QUALIFIER_ATTRIBUTE25 = "FLEX"QUALIFIER_ATTRIBUTE26 = "Dummy Cost Context"QUALIFIER_ATTRIBUTE27 = "Attribute2"LAST_UPDATE_DATE = "2004/05/24"END HXC_LAYOUT_COMP_QUALIFIERS
END HXC_LAYOUT_COMPONENTS

Modify the Payroll Review page - hxczzhxclayt0005.ldt

BEGIN HXC_LAYOUT_COMPONENTS "Payroll Review Layout - Cost Center" OWNER = "CUSTOM" COMPONENT_VALUE = "COSTCENTER" REGION_CODE = "HXC_CUI_TIMECARD" REGION_CODE_APP_SHORT_NAME = "HXC" ATTRIBUTE_CODE = "HXC_TIMECARD_COST_CENTER" ATTRIBUTE_CODE_APP_SHORT_NAME = "HXC" SEQUENCE = "160" COMPONENT_DEFINITION = "CHOICE_LIST" RENDER_TYPE = "WEB" PARENT_COMPONENT = "NEC Payroll Review Layout - Day building blocks - matrix layout" LAST_UPDATE_DATE = "2004/05/24" BEGIN HXC_LAYOUT_COMP_QUALIFIERS "NEC NEC Payroll Review Layout - Cost Center" OWNER = "CUSTOM" QUALIFIER_ATTRIBUTE_CATEGORY = "CHOICE_LIST" QUALIFIER_ATTRIBUTE1 = "Custom9VO" #QUALIFIER_ATTRIBUTE8 = "DisplayValue" #QUALIFIER_ATTRIBUTE9 = "Value#NUMBER" QUALIFIER_ATTRIBUTE10 = "oracle.apps.hxc.selfservice.timecard.server.Custom9VO" #QUALIFIER_ATTRIBUTE11 = "TIMECARD_BIND_END_DATETIMECARD_BIND_END_DATE" #QUALIFIER_ATTRIBUTE17 = "OraTableCellText" QUALIFIER_ATTRIBUTE20 = "N" QUALIFIER_ATTRIBUTE21 = "Y" QUALIFIER_ATTRIBUTE22 = "L" QUALIFIER_ATTRIBUTE25 = "FLEX" QUALIFIER_ATTRIBUTE26 = "Dummy Cost Context" QUALIFIER_ATTRIBUTE27 = "Attribute2" QUALIFIER_ATTRIBUTE30 = "Y" LAST_UPDATE_DATE = "2004/05/24" END HXC_LAYOUT_COMP_QUALIFIERS END HXC_LAYOUT_COMPONENTS

Modify Payroll Confirmation page - hxczzhxclayt0001.ldt

BEGIN HXC_LAYOUT_COMPONENTS "Payroll Confirmation Layout - Cost Center" OWNER = "CUSTOM" COMPONENT_VALUE = "COSTCENTER" REGION_CODE = "HXC_CUI_TIMECARD" REGION_CODE_APP_SHORT_NAME = "HXC" ATTRIBUTE_CODE = "HXC_TIMECARD_COST_CENTER" ATTRIBUTE_CODE_APP_SHORT_NAME = "HXC" SEQUENCE = "210" COMPONENT_DEFINITION = "CHOICE_LIST" RENDER_TYPE = "WEB" PARENT_COMPONENT = "NEC Payroll Confirmation Layout - Day Scope Building blocks for worker timecard matrix" LAST_UPDATE_DATE = "2004/05/24" BEGIN HXC_LAYOUT_COMP_QUALIFIERS "NEC NEC Payroll Confirmation Layout - Cost Center" OWNER = "CUSTOM" QUALIFIER_ATTRIBUTE_CATEGORY = "CHOICE_LIST" QUALIFIER_ATTRIBUTE1 = "Custom9VO" #QUALIFIER_ATTRIBUTE8 = "DisplayValue" #QUALIFIER_ATTRIBUTE9 = "Value#NUMBER" QUALIFIER_ATTRIBUTE10 = "oracle.apps.hxc.selfservice.timecard.server.Custom9VO" #QUALIFIER_ATTRIBUTE11 = "TIMECARD_BIND_END_DATETIMECARD_BIND_END_DATE" #QUALIFIER_ATTRIBUTE17 = "OraTableCellText" QUALIFIER_ATTRIBUTE20 = "N" QUALIFIER_ATTRIBUTE21 = "Y" QUALIFIER_ATTRIBUTE22 = "L" QUALIFIER_ATTRIBUTE25 = "FLEX" QUALIFIER_ATTRIBUTE26 = "Dummy Cost Context" QUALIFIER_ATTRIBUTE27 = "Attribute2" QUALIFIER_ATTRIBUTE30 = "Y" LAST_UPDATE_DATE = "2004/05/24" END HXC_LAYOUT_COMP_QUALIFIERS END HXC_LAYOUT_COMPONENTS

Saturday, July 26, 2008

Line Manager Time Entry funtionality

This post in the continuation of the Previous posts Various way of entering time into OTL


Oracle Time & Labor Line Manager functionality is available with the product out of Box, The User Function name is Timecard Mgr (Function -HXC_TIMECARDS_MGR).

This function is included in the Seeded Manager Self Service menu HR_LINE_MANAGER_ACCESS_V4.0


IMPORTANT CATCH

By default this function will allow the manager to enter his own time, which most of the customer wont prefer the Manager to put in his time in the same place where the Manager can enter time for his direct reports.

there is an very simple way to restrict Manager for entering his time using the Timecard Mgr function

we will be able to limit by setting an additional parameter on the Timecard Mgr function (Function - HXC_TIMECARDS_MGR). To limit the manager from entering their own data, the parameter - pManagerEnabled should be entered at the end of other parameters (connector is &) with an N being 'Not Enabled', and a Y equaling 'Enabled'.


Example - to disable Line Manager entry of their own time using the Line Manager functionality, the parameter is added as: &pManagerEnabled=N



Try this out

Sunday, July 20, 2008

Identifying Descriptive Flexfield in the Form

Descriptive Flexfield are used to gather additional information about the business entity beyond the information required by the Oracle application

Or we can also define the descriptive flexfield as the configurable fields which we can used to capture the additional information

Descriptive flexfield appears on a form as a field enclosed within Brackets

Many time I get the question from my functional users how they will be able to identify the descriptive flexfield name in the form.

There is an easy way to find this

Navigate the the Form where you want to find the Descriotive flexfield
The select the following Menu

Help > Examine

In the Block Select ‘$DESCRIPTIVE_FLEXFIELD$
In the field select the Form in which you are looking for example “ PERSON.DF’. The Value field will display the Descriptive flexfield that you are looking for.

Saturday, July 5, 2008

OTL - Authorized Delegate

Authorized Delegate: This functionality is similar to the timekeeper functionality but has few difference

  • Timekeeper uses the PUI where as Authorized Delegate uses Self Service
  • Timekeeper can access the people who are assigned to the Timekeeper group where authorized Delegate is controlled by the HR:Security Profile
  • Timekeeper has seeded responsibility where the authorized delegate the user must build the custom responsibility using the Seeded Menu 'Authorized Delegate Timecard Entry’

This functionality is good to use when a single person need to enter time for fewer number of employees, if there are more number of employees it is always advisable to use timekeeper

Try it out

Sunday, June 1, 2008

OTL Time Keeper

There are multiple ways you can enter time into OTL

  • Self Service time - employee entering his own time
  • Line Manager time Entry - Manager Entering time for his direct reports
  • Timestore Deposit API - Time import using the interface from the third party system
  • Timekeeper - one person entering time for the group of employees based on the group assigned to them
  • Authorized Delegate - One person entering time for the group of employees based on the security profile attached in the user/responsibility
In this section I am going to explain how to setup Timekeeper module for entering the time for the Group of employees

Before starting the Timekeeper configuration , if you directly go the Responsibility OTL Super timekeeper and click the function timekeeper Entry you will get the following error msg,

The above error message will clearly tell you what are the setup steps you need to do to enable the Timekeeper

The first two steps are to be done in the OTL Application developer Responsibility
1. Timekeeper Misc Setup Items
2. Timekeeper Layout attribute

The third step should be done in the OTL super Timekeeper Responsibility
3. Timekeeper Group is created

The Forth step should be done in the System administrator, this step should be done at the user level and it is only for the super timekeeper
4 Profile OTL: Allow Change Group Timekeeper

I'll be explaining each of the above steps in detail in my next post

Friday, April 11, 2008

Accrual Balance Display in Self Service HR

One of the comon requirement that often times come in the Absence Managment is HR team want their employee to be able to see their available accrued/PTO balance.
As an employee it is always good to know how much vacation balance an employee is left with

Here is a simple setup that can enable your employee to view the available balance through the Self Service absence Management

Step 1: Define the Absence element
Step 2: Link the Element based on the Eligibilty Criteria
Step 3: Define the Absence Type
Step 4: Define the Accrual Plan
Step 5: Attach the Accrual Plan to the Employee
Step 6: Complete the setup for the Self Service HR
Step 7: Make sure employee is able access the absence Management Functionality

Setup steps to enable the Entitlement Balance in the Absence Management

Step 1: Create an Element set with the type as ‘Run Set’
Step 2: Attach the element set to the Profile option HR: Accrual Plan Element Set Displayed to User at the Responsibility level (Employee Self Service)
Step 3: Bounce the Appache

Now Navigate to the Employee Self Service > Absence Management > (T) Entitlement Balance


Try this out

Sunday, March 9, 2008

Job Vs Position

As a Functional consultant the first thing that we should decide before we can design the solution for a customer is whether the system going to be a Single Business Group or Multi Business Group.

The second main important thing we need to decide is whether the customer is going to use Job or position.

When we put this question to the customer the first expected question for the Customer side would be what is the difference between Job and Position

The content in this blog is more of my own view and the simplistic approach I always like. review the documentation before you can decide on the approach you want to take

To explain it in a very high level
Jobs are Generic Title or Role within a Business Group, independent of any single organization. Required. Usually more specific if positions are not used.

Position are Specific occurrence of one job, fixed within an organization. Not required

If you are in US legislation your job will drive you FLSA and EEO reporting. Personally I feel maintaining the Position is hard in an unstructured organization. Position Hierarchy will suite for the University/college/School and Government Organization

The Maintenance is more in the Position hierarchy than in the Job. If your customer feel they need less maintenance activity then you should recommend Job not the Position

Saturday, January 19, 2008

R12 Suitability Matching functionality

Suitability Matching Functionality is the new functionality available in both Employee and Manager Self Service.
To explain this is in a very common language - this function helps the employee to find the opportunity in the organization that suites his role and competency.The employee can compare the various competency that is desired and essential for a particular role
For the manager Self service this function helps them to find the employee / applicant based on the competency and the role


List of Options available in the Manager Self Service




In the manager Self Service lets take an example of searching the employee/contingent worker/an applicant based on the competency profile and View it in a Graph for analysing the competency for the Job

Start with the option 'Find Suitable People by Competency'

Add the list of competency that you want to search for



Once you select the continue button, you will be able to list of people that match your competency requirement



Click the button Graph people by Competency button that will help you out in the viewing the graph based on the Min , max and the personal proficiency level



Try this out!!!