Oracle Applications for Human
Resources enable an
organization to hire,
train, and deploy, assess, motivate and reward its people more effectively than ever before, turning HR into astrategic-level
function and key contributor to an
organization's success. By automating its administrative duties, providing
self-service for non-HR professionals, and managing information more
efficiently, HR professionals can devote their energy and creativity to
delivering the maximum value for the organization's investment in people.
Oracle Human Resources (HR) is a proactive
management solution that
helps control costs whiledeveloping and supporting an effective workforce. Among the many features of Oracle HR is
the ability to:
·
Manage the entire recruitment cycle.
·
Design organizational models that match current and future
business strategies and objectives.
·
Perform position management by defining and recording required
skills, competencies, experience and qualifications for positions, jobs and
organizations.
·
Perform career management functions relating to the definition of
competencies, assessments, suitability matching, graphical ranking, and
succession planning.
·
Administer and maintain benefits plans, coverage levels, and
contribution allocations.
·
Manage salary proposals, and approve these by component.
·
Use spreadsheets to export compensation and benefit details for
comparison with external survey figures.
Oracle Human Resources
provides the shortest
route to fast, smart human resource management. Oracle
HRMS is an integrated suite of applications that supports all aspects of the HR
function. It includes:
·
Oracle Human Resources (HR)
·
Oracle Payroll
·
Oracle Self-Service Human Resources (SSHR)
·
Oracle Performance Management
·
Oracle iRecruitment
·
Oracle Time & Labor (OTL)
·
Oracle Learning Management
·
Oracle Advanced Benefits (OAB)
·
Oracle HRMS Intelligence (HRMSi)
Human Resources Management: Human
Resources Management is used for addressing the employees’ aspect of this
continuous improvement. It helps the enterprises in reviewing and improving their
business functions related to the personnel management.
Salient features
·
Manage the entire
recruitment cycle
·
Design organizational models that match current and future
business strategies and objectives
·
Perform position management by defining and recording required
skills, competencies, experience and qualifications for positions, jobs and
organizations
·
Perform career management functions relating to the definition of
competencies, assessments, suitability matching, graphical ranking and
succession planning
·
Administer and maintain benefits plans, coverage levels and
contribution allocations
·
Manage salary proposals and approve these by component
Work Structures
Work structures represent the different ways in which employees
can work within the enterprise. These are the frameworks for defining the
assignments for the employees. These can be also understood as the
representation of the units within the enterprise. The Business Group is the
largest unit and represents the enterprise as a whole.
Work structures include internal organizations (e.g.
departments, divisions etc.), payrolls, jobs, positions, grades, grading
structures and the employee grouping used in the enterprise.
People
People are the nucleus of any enterprise. Oracle HRMS gives the
ability to hold information about the current employees, ex-employees,
applicants, contacts and contingent workers. Along with the standard
information, the system can store the information about the addresses, phones,
nationality, qualifications, absence history, interview records etc. Special
information can defined to store any other information for the employees. E.g.
special information could be languages known or hobbies. Work related
information such as preference of working hours (shifts), hours of work could
also be maintained.
Assignments
Assignment for an employee is nothing but the employee’s place
within the enterprise. The assignment gives information about the organization
for which the employee works. The details about the employee’s location, job,
role, position, grade, location, payroll, supervisor, working hours and loads
of other information can also be obtained from assignment data. As and when the
information about the employee assignment is changed, a work history is
automatically built up for the employee.
Assignments are also used to group people for reporting, managing
and costing purposes. Compensation, benefits planning and administration could
also be done with the help of the assignments.
Date Tracking
Typical data that changes for any enterprise includes corporate
restructuring, employee development related changes, departmental changes etc.
Using Oracle HRMS, the changes can be effectively managed without the need of
redefining of the parts.
These changes could be either Dated or Date
Tracked.
Dated
Work Structures related data is dated. Dates can be attached to a
work structure to maintain the versions ad the structure changes. The previous
structure can be maintained as historical data and a new version can be created
with the future dates. In Oracle HRMS, the information related to
organizations, jobs, grades, locations is dated. The work structure is active
as of a Date From, which is entered while defining it. It remains valid till
the Date To. A work structure cannot be assigned to an employee before the Date
From or after the Date To.
Date Tracked
The dynamic information related to the employees, employee
assignments, compensations and benefits is date tracked. Date tracking is
a feature available in HRMS, which is useful in maintaining history of the data
when any changes are made. To view the date tracked data from the front end,
effective start date needs to be set. The setting of effective date ensures
that the data effective only of that date is available for the
users to view, change, validate or report. When any changes are done to the
data, the user can choose whether the change would be a correction to the last
changes or a new update that needs to be recorded in the history. The Set
effective date option is available on the screens which deal with the date
tracked data. This is discussed in details in the technical section for date
tracking.
Organization
Navigation: Work Structures
--> Organization --> Description
Business Group
In Oracle HRMS, the
enterprise needs to be represented as an employer. This can be done by creating
Business Group. Business Group is the largest organizational unit that is set
up. Depending on the need, a single business group or multiple business groups
can be set up. The defaults entered for a business group are the information
that will generally apply to the people entered for that particular business
group. These defaults can be overridden.
While setting up the
business group, following information needs to be set up:
·
Employee Number Generation for Employees and Applicants
(Manual/Automatic)
·
National Identifier Generation only for Employees
(Manual/Automatic)
·
Key flexfield structures that would be used in the business group.
·
Legislation code and default currency
·
Government Reporting Entity
This is available for
selected legislations e.g. US. One more GREs can be set up within a business
group. GRE organization is recognized as an employer by the government.
Representing Organizations
All the levels of an
enterprise can be represented using Internal Organizations and External
Organizations.
·
Internal Organizations are the departments, divisions or branches where the employees
work.
·
External Organizations could be the hiring agencies, contractors, training institutes
etc.
Location
The locations need to be
set up before an organization can be defined. This is the exact location of the
organization along with the address and phone number.
Navigation: Work Structures
--> Location
Organization Classifications
This describes the purpose
and use of the organization. The organization must be classified as an HR
Organization to assign employees.
Tables
HR_LOCATIONS_ALL
HR_ALL_ORGANIZATION_UNITS – LOCATION_ID is linked with
HR_LOCATIONS_ALL.LOCATION_ID
HR_ORGANIZATION_INFORMATION – Stores the classification and the
business group details. ORGANIZATION_ID is linked with
HR_ALL_ORGANIZATION_UNITS.ORGANIZATION_ID
Jobs
Navigation: Work Structures
--> Job --> Description
An employee’s primary role
is set up using a job. It is a generic role within the business group that is
independent of the organization. E.g. manager job can be present in any
organizations.
Job Name is a key
flexfield. Each job is held in a job group. A job group stores the jobs of
similar types. All the jobs defined in HRMS for employees must be a part of the
default HR
Job Group.
Job Group Navigation: Work
Structures --> Job --> Job Group
Tables
PER_JOB_DEFINITIONS – Stores the segment of the KFF. This is
linked to fnd tables that store the KFF structure details.
PER_JOB_GROUPS
PER_JOBS – JOB_DEFINITION_ID is linked with
PER_JOB_DEFINITIONS.JOB_DEFINITION_ID. JOB_GROUP_ID is linked with
PER_JOB_GROUPS.JOB_GROUP_ID.
Position
Navigation: Work Structures
--> Position --> Description
Position is a specific
occurrence of a job. Position is fixed within an organization. E.g. Sales
Manager is an occurrence of the job Manager in the Sales Organization.
Similarly, HR Manager will be one more occurrence of the same job in the HR
Organization. There could be one or many holders of the position in an
organization. This is a key flexfield.
A Position is defined for
an Organization and a Job. Positions data is date tracked.
Grade
Navigation: Work Structures
--> Grade --> Description
Grades are used to decide
the relative status of employee assignments. Compensation and Benefits are also
decided based on the grades. E.g. Salary, company cell phone, company car –
decided based on the grades. This is a key flexfield.
Valid grades could be
defined for a job or for a position. A grade could be a valid grade either for
a job or for a position. A single grade cannot be valid one for both a job and
a position.
Employees/ Applicants
Navigation: People --> Enter and Maintain
Employees and Applicants are entered through a single screen. To
identify the records person type is used. For am employee the person type is
Employee, for an applicant the person type is Applicant, for a contact the
person type is Other. Along with the personal details like name, gender, hiring
date, marital status, birth details, social security number (For US, National
Identifier – for UK), and information about the contacts, phones, addressed can
also be stored. People data is date tracked. Other information stored is schools/colleges
attended, absences, Bookings, competence, qualifications, disabilities work
preferences etc.
Personal Details
Address
Navigation: People --> Enter and Maintain --> Address
The address style can be used to store addresses in country
specific formats. Only one address can be stored as a primary address
Phone
Navigation: People --> Enter and Maintain --> Others -->
Phones
Multiple phone numbers can be stored. Phone type is used to
identify the phone numbers. e.g. Home, Work etc.
Periods of service
Navigation: People --> Enter and Maintain --> Others -->
End Employment
Termination related information about the ex-employees is stored
in periods of service information.
Contacts
Navigation: People --> Enter and Maintain --> Others -->
Contact
Contacts for an employee play an important role in benefits. Based
on the contacts, the employee becomes eligible for benefits such as spouse life
insurance, dependent life insurance, employee plus family vision, employee plus
spouse dental etc. Addresses and phones for a contact can also be
maintained.
Tables
PER_CONTACT_RELATIONSHIPS
PER_ALL_PEOPLE_F – PERSON_ID is linked with
PER_CONTACT_RELATIONSHIPS.PERSON_ID
Note: The data stored in above details is for a business group. In
case of a Global implementation, data for all the business groups will be
stored in these tables. The field business_group_id stores the id of the
business group.
Assignments
Navigation: People --> Enter and Maintain --> Assignment
Assignment data for an employee/applicant is date tracked. Assignment
gives information about the person’s place within the organization.
Organization, location, job, grade, position, supervisor, salary basis,
payroll, assignment status etc.
People Group
Navigation: People --> Enter and Maintain --> Assignment
(Group field on the screen)
This is a key flexfield, which is used for grouping the people
together based on certain criteria. To access the assignment screen, at least
one segment of the People Group KFF needs to be enabled.
Salary
Navigation: People --> Enter and Maintain --> Assignment
--> Salary
Salary details for an employee can be stored. The screen shows
details of the new salary details and previous proposal details.
Payroll
Navigation: Payroll -->
Description
For faster pay processing,
a group of employees are sorted using Payroll, whose pay processing can be done
with a single frequency. The payroll frequency could be monthly, semi-monthly,
weekly, daily etc. An employee is put on a payroll by assigning the payroll to
the employee assignment. Payroll data is date tracked. To assign a payroll to
an employee assignment, the payroll needs to be effective as of the effective
date of the assignment.
Tables
PAY_ALL_PAYROLLS_F – PAYROLL_ID is linked with
PER_ALL_ASSIGNMENTS_F.PAYROLL_ID
Payment Methods
Navigation: Payroll -->
Payment Methods
Payment method is the way
by which the employee would prefer to receive the pay. Payment method could be
check, cash or NACHA.
Tables
PAY_PERSONAL_PAYMENT_METHODS_F – ASSIGNMENT_ID is linked with
PER_ALL_ASSIGNMENTS_F.ASSIGNMENT_ID
PAY_ORG_PAYMENT_METHODS_F – PAYMENT_TYPE_ID is linked with
PAY_PAYMENT_TYPES.PAYMENT_TYPE_ID
Consolidation Set
Navigation: Payroll -->
Consolidation
A consolidation set must be
selected before starting a payroll run. The consolidation set provides
essential labeling for each payroll run.
Benefits and Compensation
Compensation and benefits
for the employees are the integral part for any enterprise. The compensations
and benefits can be setup in Oracle HRMS. All types of compensation and
benefits and the rules that determine who will be paid what benefits, when and
how often could be set up. With the date track option available, future
dated changes can be done to take care of policy changes. Compensation heads
such as earnings, deductions and other items set ups is discussed here. Please,
refer the Appendix – A for benefits set ups. These heads are set up using
elements.
Element
Navigation: Total
Compensation --> Basic --> Element Description
This data is date tracked.
The effective date for an element could be selected such that any historical
entries could be made. Reporting name of the element is the name that appears
on the reports. Primary classification states the purpose of the element. E.g.
earnings, information, Employer liabilities, voluntary deductions etc.
Type of the element could
be recurring (occurring periodically) or nonrecurring (occurring just once).
Termination rule would be the rule when the element entries need to be stopped
for an employee. Generally, Actual Termination is selected. Multiple Entries
Allowed should be checked to receive more than one entry.
INPUT AND Output currencies
will be based on the legislation. Additional information is stored in the
Further Information field.
Input Value
Navigation: Total
Compensation --> Basic --> Element Description --> Input Values
Up to 12 input values can
be defined for an element. This data is date tracked. The name should be
entered and the units. Units could be Hours, Money etc. To hold the payroll run
results, the input value needs to be defined as Pay Value. The element input
value could be required or optional. Default, minimum and maximum values could
be entered. Minimum and Maximum value will help in validation.
Element Link
Navigation: Total
Compensation --> Basic --> Link
Element links are used to
determine which group of people is eligible for which elements.
The element, for which the
link has to be created, needs to be selected in the window. In the eligibility
criteria, the element can be linked to an organization, Job, Grade, People
Group, Location, Position, Payroll, Employment Category and Salary Basis. The
check box ‘Link To All Payrolls’ will link the element to all the employees.
Tables
PAY_ELEMENT_TYPES_F
PAY_ELEMENT_ENTIRES_F
PAY_INPUT_VALUES_F
PAY_ELEMENT_LINKS_F
Date Tracking
Functional aspects of date
tracking have been explained before.
Date tracking enables to
restore history after any changes have been done. Not all data in HRMS is date
tracked. Technically, the tables ending with a ‘_f’ store the date tracked
information. The primary key for such table comprises of an id field (e.g.
person_id in per_all_people_f), effective_start_date and effective_end_date.
A condition needs to be put
in every query to check for the effective start date and effective end date in
order to fetch a single record.
Different Date track modes
while updating the data are as follows:
Consider a small example.
An assignment has start date 1-Jan-2001 and no effective end date (End of time
31-Dec-4712). The record is being viewed on 1-Jan-2005 from the
application. Some changes are done to this assignment and these need to be
saved. The system gives two options, Correction and Update
Correct
If Correction is selected,
the current record with effective start date 1-Jan-2001 is updated with the new
changes. i.e. there remains just one record after Correction is done.
Update
If Update is selected, a
new record is created from 1-Jan-2005 till 31-Dec-4712 with the latest changes
that are done. The existing record is end dated on 31-Dec-2004 and has the
previous details. Thus, a history record is created that has the historical
data.
If a record is updated on
the same day when it was created and Update mode is selected, the mode is automatically
changes to Correction.
Future Dated Changes
Consider the above
assignment.
There are two records:
Start Date --> End Date
31-Dec-2004Ã 1-Jan-2001
31-Dec-4712Ã 1-Jan-2005
Effective date is set to
1-Jan-2004, displaying the first assignment record. Some changes are done and
saved. Now, as of 1-Jan-2004, future dated change exists, which will become
effective from 1-Jan-2005.
In such cases the system
prompts for two options when the changes are saved:
Insert and Replace.
Insert
This will insert a new
record before the next scheduled change. The change in future will be effective
as of the start date of the change.
i.e. the new assignment
records will be:
Start Date --> End Date
1-Jan-2001
-->31-Dec-2003
1-Jan-2004 -->
31-Dec-2004
1-Jan-2005 -->
31-Dec-4712
Replace
This option will replace
the next future change with the current change. The future change will not
exist anymore. i.e. the new assignment records will be:
Start Date --> End Date
1-Jan-2001 -->
31-Dec-2003
1-Jan-2004 -->
31-Dec-4712
Date Track Delete
When any date tracked data
needs to be deleted, following options are available:
End Date
The record will be end
dated and will not be visible on the screen after the end date.
Purge
The record will be totally
removed from the database
In case of future dated
records existing, following options are available:
All
All future updates are
removed.
Next
Next applicable change is
deleted. End date of the current record is set to the end date of the next
change.
APIs
Application Programmatic
Interface: API is
nothing but a logical grouping of PL/SQL packaged procedures and functions,
which acts as an interface to the database.
APIs are used extensively
in Oracle HRMS. For every insert/update or delete to any of the base tables, an
API is available.
APIs are primarily used to
validate the data being inserted into the base tables and also for inserting or
updating the data on deleting the data from the base tables.
Object Version Number
In Oracle HRMS, every row
in the database table has an object version number. When a new row is created,
the object version number for the row is 1. When the row is changed, the object
version number is incremented by one. When a user queries a record, the object
version number is also fetched along with the other information.
Consider, two users A and B
query the same record having Object Version Number 1 simultaneously. If user A
makes changes to the records and saves the changes, the current object version
number (in this case 1) is compared with the object version number of the
record in the database (in this case 1). Since, these values are same, the
changes are valid and so the changes are saved and the object version number of
the record is incremented by 1. It will become 2.
If user B also does changes
and tries to save them, the object version number in the database is 2 against
the object version number of the record sent to client (in this case 1). Since,
the object version numbers are different, it is evident that the record is already
changed by another user and so the changes done by user B are not valid as they
may override changes done by user A.
The user B will get an
error message:”Record has been modified by another user”. He/she will have to
re-query the record to do the changes.
This is one of the
important parameters for an API.
Parameters
Every API has a number of
parameters. Not all parameters are mandatory. Generally, the optional
parameters are followed by a default value, e.g. p_email_address in varchar2
default null.
Control Parameters
Control parameters are the
mandatory parameters common across all the APIs.
p_object_version_number
This is one of the control
parameters. For insert APIs, p_object_version_number is an OUT parameter. For
update APIs, p_object_version_number is an IN OUT parameter.
p_validate
This is an IN parameter.
The parameter decides that the record needs to be saved to the database or not
Default value for p_validate is FALSE. If TRUE value is passed, the data is
only validated and not saved to the database.
p_effective_date
APIs that are used to
insert/update/delete the date tracked data have this control parameter. This is
a mandatory IN parameter that defines the date from which the current change
needs to be applied.
p_datetrack_update_mode
APIs used to update the
date tracked data have this control parameter. Valid values for this parameter
are: UPDATE, CORRECTION, UPDATE_OVERRIDE and UPDATE_CHANGE_INSERT
p_datetrack_delete_mode
APIs used to delete date
track data have this control parameter. Valid values for this parameter are:
ZAP, DELETE, FUTURE_CHANGE, and DELETE_NEXT_CHANGE
List of Important APIs
Work Structures
HR_ORGANIZATION_API
HR_JOB_API
HR_POSITION_API
HR_GRADE_API
HR_VALID_GRADES_API
HR_LOCATION_API
People
HR_EMPLOYEE_API
HR_PERSON_API
HR_ASSIGNMENT_API
HR_PERSON_ADDRESS_API
HR_PHONE_API
HR_UPLOAD_PROPOSAL_API
HR_APPLICANT_API
HR_CONTACT_API
HR_CONTACT_REL_API
HR_PERIODS_OF_SERVICE_API
Payroll
PAY_ACTION_INFORMATION_API
PAY_BATCH_ELEMENT_ENTRY_API
PAY_COST_ALLOCATION_API
PAY_ELEMENT_ENTRY_API
PAY_ELEMENT_LINK_API
PAY_ELEMENT_TYPES_API
PAY_INPUT_VALUE_API
SIT
SIT stands for Special
Information Types.
This is nothing but the
Personal Analysis Key Flexfield. This can be used to define any special
information that cannot be stored with the help of the main system. Any number
of instances can be defined of the Personal Analysis KFF. Each instance is
knows as Special Information Type. Each SIT can have up to thirty fields. Each
field is a segment of the KFF.
When a new segment combinations
is created, the system will first check to see whether that combination already
exists in the table before creating a row. If the combination does exist, the
system only retrieves the ID of the row it found. The system therefore has to
scan through the whole SIT combinations table.
SITs are primarily attached
to people. They can also be used with Jobs, Positions, and Activities (in OTA),
but with skill meaning (competencies).
EIT
EIT stands for Extra
Information Types.
EITs are a type of
Descriptive Flexfield. When a new segment combinations is created, the row is
just inserted into the appropriate table (without checking whether the
combination already exists). There is now full scan of the underlying table and
so performance shouldn't be affected by the size of the table.
EIT's can be attached to
People, Assignment, Job, Position, Location and Organization.
Oracle Advanced Benefits
The compensation management
using Oracle HRMS is explained in the earlier part of the document. In addition
to the compensation and benefit functionality, Oracle offers Oracle Advanced
Benefits module.
In an enterprise every
employee is eligible for certain benefits. These benefits could be Dental
insurance, Medical insurance, Life Insurance, Pension Plans and various other
benefits. Certain benefits are provided by the employer and for certain
benefits the employee needs to contribute. This entire advanced benefits
administration can be handled effectively with the use of OAB.
The OAB structure contains
of benefits programs, plans, plan types, options, enrollments, enrollment rates
and beneficiaries.
E.g. a program could be a
Retiree Program. Only, retired people (Ex-employees) could be enrolled under
this program.
Plans are the benefits
plans which are
available under a program.
A person enrolled under the
retiree program will be eligible for the plans which are in the program.
Plan types are medical, dental, vision, spouse life, dependent life, 401K
etc.
Options available for the
employees to choose from could be Employee Only, Employee plus family, Employee
plus Spouse, Employee plus dependents etc. The contacts entered for an employee
play an important roles when it comes to opting for options such as employee
plus family. The dependents eligible for benefits are termed as covered
dependents or beneficiaries.
With the help of
eligibility criteria set up in the system, the system determines which employee
becomes eligible under which benefit program. Life events are set up in the
system which helps the employee to opt for enrollment changes. e.g. a single
employee when married can opt for employee plus spouse benefits.
The rates are defined in
the system, which are linked with the programs, plans and options chosen by the
employee.
SSHR
SSHR stands for self
service human resources. The module provides self service management for both
the managers as well as employees.
This is a web based module.
With the help of intranet and a web browser the employees and their managers
can access personal data and career management functionality.
SSHR uses Oracle Workflow
extensively. Workflow helps in managing the information flow between the
employees and the management. Decision making can be routed through proper
channels with the usage of Workflow.
Following functionalities
are available with SSHR:
·
Matching a person to a job or position by competence and planning
succession.
·
Candidate offers enables you to perform web–based recruitment.
·
Access/Modify personal data
Oracle
payroll is nothing
1) Group of employees
2) Assignment Sets
3) Consolidation Sets
Payrolls are about grouping employees into categories how they are paid in oracle.
Assignment sets to process employees in sub-groups Ex: Monthly pay, Weekly Pay
Consolidation set is used to group results for post-Processing
Processing:
Batch Submission and Quick pay options for processing pay for a group of employees or individual. Quick pay option used when en employee Terminated.
Quick Pay:
Quick pay option is used when employee leaving organization , and need to process separately from the remaining payroll, You can use quick pay to make simple calculations and rollback the process for that employee .
Retro Pay:
Allows you to back pay employees in the current payroll run
Advanced Pay:
Allows you to pay employees in advance in the current payroll run. Both advance pay and Retro pay must be run before process the payroll.
1) Group of employees
2) Assignment Sets
3) Consolidation Sets
Payrolls are about grouping employees into categories how they are paid in oracle.
Assignment sets to process employees in sub-groups Ex: Monthly pay, Weekly Pay
Consolidation set is used to group results for post-Processing
Processing:
Batch Submission and Quick pay options for processing pay for a group of employees or individual. Quick pay option used when en employee Terminated.
Quick Pay:
Quick pay option is used when employee leaving organization , and need to process separately from the remaining payroll, You can use quick pay to make simple calculations and rollback the process for that employee .
Retro Pay:
Allows you to back pay employees in the current payroll run
Advanced Pay:
Allows you to pay employees in advance in the current payroll run. Both advance pay and Retro pay must be run before process the payroll.