Professional Documents
Culture Documents
Apps HRMS Techno Functional Handbook For Consultants
Apps HRMS Techno Functional Handbook For Consultants
1 of 19
http://appshrmshandbook.blogspot.in/
Classic
The aim of this post is to provide sample case study for beginners in Oracle Payroll. This case study will take you
through the real time requirements in payroll for UAE legislation. In further posts we will be dealing with scenarios related
to costing and resolution for issues during payroll support.
Note: All setups are effective 01-Jan-1951
Case: You organization provides housing allowance and supplementary allowance based on grades. There are 4 grades
in your organization. The allowance payable is the maximum limit on the respective grade.
Approach: Define the grades and provide the max, min and default values. Create the housing and supplementary
allowance as recurring elements. Define these as standard in the element link.In the formula we will retrieve the max limit
of the respective grade. Here we need to understand that once we create Elements, Balances, Absence Types,Grade
Rates and Pay Scale Rates and Flexfield Segments then dynamic DBIs are generated from our definitions so that
they can be used for calculation in the payroll fast formula. Use the Show Items button in fast formula to view the list of
items that are created from your definitions.
1. Define Grades: Work Structures>Grade>Description
[http://1.bp.blogspot.com/-V8COzQH1Q30/UbsckP4LcjI/AAAAAAAASZM/DuUxsTeRFwY/s1600/grade+description.JPG]
9/26/2016 11:06 AM
2 of 19
http://appshrmshandbook.blogspot.in/
Classic
[http://1.bp.blogspot.com/-eGK1WNhSjcI/UbsckFRcymI/AAAAAAAASZI/atjsqOgH2I8/s1600/grate+for+housing.JPG]
[http://3.bp.blogspot.com/-93rU8NuzQ2g/UbsckB8aDoI/AAAAAAAASZQ/B086tf7-ytI/s1600/grate+for+supp.JPG]
[http://2.bp.blogspot.com/-pvtfQKRv1Wc/Ubse7WqrPUI/AAAAAAAASZs/thLr5tem-ws/s1600/add+grade+for+assignment.JPG]
9/26/2016 11:06 AM
3 of 19
http://appshrmshandbook.blogspot.in/
Classic
Type
Termination Rule
Other Options
Priority
Input Values
Recurring
Last Standard Process
Process in Run
2500
Pay Value HA Amount
Element
Classification
Type
Termination Rule
Other Options
Priority
Input Values
Supplementary Allowance
Earnings
Recurring
Last Standard Process
Process in Run
2500
Pay Value SA Amount
9/26/2016 11:06 AM
4 of 19
http://appshrmshandbook.blogspot.in/
Classic
[http://2.bp.blogspot.com/-pf3G0uH2psw/Ubsck71HhJI/AAAAAAAASZU/fSShqLqrxEo/s1600/ha+formula+result.JPG]
[http://4.bp.blogspot.com/--8RzAd9aKfE/UbsclMwBi9I/AAAAAAAASZY/vNygw38_g3Q/s1600/sa+formula+result.JPG]
9/26/2016 11:06 AM
5 of 19
http://appshrmshandbook.blogspot.in/
Classic
[http://4.bp.blogspot.com/-7uqoYZtRWDQ/UbsfHF3gZyI/AAAAAAAASZ0/Nubo1NqGJxA/s1600/grade+quick+pay.JPG]
View comments
The aim of this post is to provide sample case study for beginners in Oracle Payroll. This case study will take you
through the real time requirements in payroll for UAE legislation. In further posts we will be dealing with scenarios related
to costing and resolution for issues during payroll support.
Note: All setups are effective 01-Jan-1951
1. Loan Setup
Case: In your organization, an employee is eligible to apply for a loan. Now the administrator will determine the number of
installments required to recover this loan. This loan is internal and does not require payment to be made to a third
party.Let us keep it very simple. Oracle Payroll by default provides elements for Handling Loans. You may use these or
create you own, as I have done for simplicity sake.
Approach: You need a non-recurring element, something that the admin will add in the element entries to say that in this
run the loan is to disbursed to the employee. Then recurring elements for deducting the installment in subsequent runs
until the entire amount is repaid. Also the corresponding balances need to be created. Then we write the fast formula for
processing the loan and validations if any. Define the formula result. Go to the element entry screen add the loan element
and run the quick pay to check our setup.
Loan Repayment
Voluntary Deductions
Recurring
Dynamic Views template. Powered by Blogger.
9/26/2016 11:06 AM
6 of 19
http://appshrmshandbook.blogspot.in/
Classic
Input Values
Element
Classification
Type
Termination Rule
Other Options
Priority
Input Values
Balance
Feeds
Dimension
Installments(Number)
Loan Outstanding
Earnings
Non-Recurring
Last Standing Process
Process in Run
7561
Outstanding
Amount(Money)
Amount(Money)
Indirect Result
Loan
Loan Repayment(Add)
Assignment Inception to
Assignment Run
Date
Element
Entry
Inception to Date
___________________________________________________________________________________
Total Compensation>Basic>Write Formula
Fast Formula: Loan Calculation
Type: Oracle Payroll
DEFAULT FOR PAY_PROC_PERIOD_START_DATE IS '1951/01/01 00:00:00' (date)
DEFAULT FOR PAY_PROC_PERIOD_END_DATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR EMP_HIRE_DATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR AMOUNT is 0
DEFAULT FOR STOP IS 'NO'
DEFAULT FOR LOAN_OUTSTANDING IS 0
DEFAULT FOR LOAN_INSTALLMENT IS 0
INPUTS ARE LOAN_AMOUNT,NUMBER_OF_INSTALLMENTS
IF LOAN_BALANCE_ASG_ITD = 0 AND PAY_PROC_PERIOD_START_DATE = ENTRY_START_DATE THEN
(
LOAN_OUTSTANDING = LOAN_AMOUNT
MSG = 'Loan is disbursed'
RETURN LOAN_OUTSTANDING,LOAN_AMOUNT,MSG
)
IF LOAN_AMOUNT - LOAN_BALANCE_ASG_ITD >0 THEN
(
LOAN_INSTALLMENT = LOAN_AMOUNT/NUMBER_OF_INSTALLMENTS
LOAN_OUTSTANDING = LOAN_AMOUNT - LOAN_BALANCE_ASG_ITD - LOAN_INSTALLMENT
IF LOAN_OUTSTANDING > 0 THEN
(
MSG = 'Loan Recovery in progress'
RETURN LOAN_OUTSTANDING,LOAN_INSTALLMENT,MSG
)
ELSE
(
MSG = 'Loan recovery completed'
STOP ='YES'
RETURN LOAN_OUTSTANDING,MSG,STOP
)
)
9/26/2016 11:06 AM
7 of 19
http://appshrmshandbook.blogspot.in/
Classic
[http://4.bp.blogspot.com/-fAIkJUSVK28/Ubmp67svSYI/AAAAAAAASWw/bGVEorSyVPQ/s1600/formula+result.JPG]
[http://1.bp.blogspot.com/-i5NtJYRd1so/Ubmr-VSszHI/AAAAAAAASXA/U79kO7dTgoM/s1600/formula+result+2.JPG]
Now we go to the employee assignment screen and add the entry as shown.Loan Repayment entry for employee in Feb
Note: This has already been processed, hence the check and end date.
[http://4.bp.blogspot.com/-7UBuvAHe-NY/UbmyYmZaKKI/AAAAAAAASXQ/N_P1Rk6q544/s1600/element+entry.JPG]
9/26/2016 11:06 AM
8 of 19
http://appshrmshandbook.blogspot.in/
Classic
[http://4.bp.blogspot.com/-TvFoV4Ab2ls/Ubm_y-MMFLI/AAAAAAAASYo/OVUpdG-MvcQ/s1600/quick+pay.JPG]
February:
[http://3.bp.blogspot.com/-iiPGDt_DKPI/Ubm0N7EpRKI/AAAAAAAASXg/r2kWrP0B8MQ/s1600/feb.JPG]
[http://3.bp.blogspot.com/-XnDKtDmHwsE/Ubm0S74THbI/AAAAAAAASX0/dpi2MVrHm9s/s1600/jul.JPG]
[http://3.bp.blogspot.com/-XnDKtDmHwsE/Ubm0S74THbI/AAAAAAAASX0/dpi2MVrHm9s/s1600/jul.JPG]
9/26/2016 11:06 AM
9 of 19
http://appshrmshandbook.blogspot.in/
Classic
[http://1.bp.blogspot.com/-R7vqDuYPY0I/Ubm0S1oGoRI/AAAAAAAASX4/T9_JlP3-_ZU/s1600/jul+result.JPG]
March:
[http://3.bp.blogspot.com/-uKA6yT5pMBw/Ubm0TDG-MTI/AAAAAAAASX8/Uoc0pFiodyo/s1600/mar+result.JPG]
July:
9/26/2016 11:06 AM
10 of 19
http://appshrmshandbook.blogspot.in/
Classic
[http://1.bp.blogspot.com/-2egM0pE65jw/Ubm1AE99INI/AAAAAAAASYU/1384bDAZE-M/s1600/mar.JPG]
[http://3.bp.blogspot.com/-XnDKtDmHwsE/Ubm0S74THbI/AAAAAAAASYA/hHVWDUu6Glc/s1600/jul.JPG]
[http://1.bp.blogspot.com/-R7vqDuYPY0I/Ubm0S1oGoRI/AAAAAAAASX4/T9_JlP3-_ZU/s1600/jul+result.JPG]
Dynamic Views template. Powered by Blogger.
9/26/2016 11:06 AM
11 of 19
http://appshrmshandbook.blogspot.in/
Classic
SELECT
PAPF.FULL_NAME EMPLOYEE_NAME,
PAPF1.FULL_NAME MANAGER,
PO.GROUP_CODE
PO.NAME,
PO.MEASURE_NAME,
PO.TARGET_DATE,
TO_CHAR(PPMP.START_DATE, 'YYYY') AYEAR,
HR_GENERAL.DECODE_JOB(PAAF.JOB_ID) JOB_NAME,
HR_GENERAL.DECODE_ORGANIZATION(PAAF.ORGANIZATION_ID)DEPARTMENT
FROM PER_OBJECTIVES PO, PER_PERSONAL_SCORECARDS PPS, PER_PERF_MGMT_PLANS PPMP,
PER_ALL_PEOPLE_F PAPF, PER_ALL_ASSIGNMENTS_F PAAF, PER_ALL_PEOPLE_F PAPF1 WHERE
PPMP.PLAN_ID = :p_PLAN_ID AND
PPS.SCORECARD_ID = :p_SCORECARD_ID AND
PAPF.PERSON_ID = PPS.PERSON_ID AND
PAAF.PERSON_ID = PAPF.PERSON_ID AND
PAAF.SUPERVISOR_ID = PAPF1.PERSON_ID AND
PO.SCORECARD_ID = PPS.SCORECARD_ID AND
PPS.PLAN_ID = PPMP.PLAN_ID AND
PAAF.PRIMARY_FLAG = 'Y' AND
SYSDATE BETWEEN PAPF.EFFECTIVE_START_DATE AND PAPF.EFFECTIVE_END_DATE AND
SYSDATE BETWEEN PAAF.EFFECTIVE_START_DATE AND PAAF.EFFECTIVE_END_DATE AND
SYSDATE BETWEEN PAPF1.EFFECTIVE_START_DATE AND PAPF1.EFFECTIVE_END_DATE
Sample Output:
Posted 7th February 2013 by Vasudha and Sreekanth
0
Add a comment
Customizing Element Entry Screen form in HRMS and attaching it, or a standard form, to an HRMS Task
Flow. by step instructions on setting up Task Flows.
SETTING UP AND ATTACHING FORMS TO TASKFLOWS IN HRMS
--------------------------------------------------Summary of Steps
1.Define Customization Set
9/26/2016 11:06 AM
12 of 19
http://appshrmshandbook.blogspot.in/
Classic
9/26/2016 11:06 AM
13 of 19
Classic
http://appshrmshandbook.blogspot.in/
------------------------------------------------------------- ORGANIZATION
- PERSON
- SPECIAL INFORMATION
- ELEMENT ENTRIES
- EVENT BOOKINGS
- LIST PEOPLE BY SPECIAL INFORMATION
- PEOPLE FOLDER
- ASSIGNMENT FOLDER
- RUN QUICKPAINT REPORT
- DEFINE USER VALUES
- LIST EMPLOYEES BY ELEMENT
- VIEW ELEMENT ENTRY HISTORY FOR EMPLOYEE
- ADJUST BALANCE (Oracle Payroll form)
- PAYROLL AND ASSIGNMENT PROCESSES (Oracle Payroll form)
All of these forms have different types of restrictions, this is detailed in the User Guide.
or Configuring, Reporting and System Administration in Oracle HRMS. The restrictions will be listed in a
drop down during the customization .
9/26/2016 11:06 AM
14 of 19
http://appshrmshandbook.blogspot.in/
Classic
1. From the Navigator -> Security->CustomForm.
[http://2.bp.blogspot.com/-oupBHl_gxvU/URI5iY7C8fI/AAAAAAAARQo/GIEz_Y3dGrM/s1600/Form+Customzation.JPG]
9/26/2016 11:06 AM
15 of 19
Classic
http://appshrmshandbook.blogspot.in/
[http://3.bp.blogspot.com/-AdqWfHBfiz0/URI6IyHzkjI/AAAAAAAARQ4/HnBp2gAIwjo/s1600/Taskflow+Node.JPG]
This section will give you details on how to define a Task Flow, which is the
next step you will have to take in this example.
1. Navigate to Security, Task Flow Definition.
2. Enter the name of your new Task Flow and SAVE the record.
3. Select the Legislation (UNITED ARAB EMIRATES)
4. In NODE you will have to enter each of the forms you want to include in your
Task Flow. To do this you use the LOV to pick each one in turn, and page
down or new record to enter each of the forms in this field.
5. Find the form you want to use as the Top Node (the form that will be at the
top of the task flow e.g. People Enter and Maintain) and check the TOP NODE
checkbox.
6. When you have entered each of the forms, commit the record and move to the
next zone Navigate Options to set up the task flow itself.
7. In the Navigate Options, you select the nodes in the task flow that you want
to navigate to.
Note: All Task Flows must begin with one of the following three forms:
- PERSON FORM
- PEOPLE FOLDER
- ASSIGNMENTS FORM
9/26/2016 11:06 AM
16 of 19
http://appshrmshandbook.blogspot.in/
Classic
[http://2.bp.blogspot.com
/-SbICzRW9FU4/URI6RJDuDwI/AAAAAAAARRA/rv1dRcQKfzs/s1600/Define+Taskflow+Screen.JPG]
9/26/2016 11:06 AM
17 of 19
http://appshrmshandbook.blogspot.in/
Classic
[http://3.bp.blogspot.com/-UrjfFlMsWAs/URI6ZIJC9dI/AAAAAAAARRI/WcAYEZODXZk/s1600/Function+Def.JPG]
Add a comment
Function to return the leaves pending in the system (submitted/work in progress) for
validating the leave entry .
As the unapproved leaves are in the transaction tables , the absence tables does not contain any
reference to work in progress or submitted leaves. This function is helpful get the information.
Note :You may need to edit the query as per the setup in your organization.
FUNCTION
GET_UNPROCESSED_LEAVES(L_ABSENCE_TYPE_ID
number,L_START_DATE DATE) RETURN NUMBER AS
NUMBER,L_PERSON_ID
l_count number:=0;
l_year number;
BEGIN
l_year := to_char(L_START_DATE,'RRRR');
SELECT
sum(STP.INFORMATION8) total_leaves into l_count
FROM per_all_people_f papf,
hr_all_organization_units hrorg,
per_all_assignments_f pass,
hr_all_positions_f hap,
HR_API_TRANSACTIONS TRX,
HR_API_TRANSACTION_STEPS STP,
hr_lookups hl1,
per_absence_attendance_types abt
where
Dynamic Views template. Powered by Blogger.
9/26/2016 11:06 AM
18 of 19
Classic
http://appshrmshandbook.blogspot.in/
Add a comment
/* An OAF customization which required us to replace the printable page option on the appraisal page with a report. This
report provides the Employee Name, Job, Department, Manager's Name, Competency Name, Employee Comments and
Manager Comments for this competency. */
_________________________________________________________________________________
Input Parameters: Employee Number, Appraisal Date and Business Group ID
_____________________________________________________________________________________________
SELECT
papf.full_name employee_name,
papf1.full_name supervisor_name,
hr_general.decode_job(paaf.job_id) job_name,
hr_general.decode_organization(paaf.organization_id) department,
pc.name,pce.comments EmployeeComments,
(select pce1.comments from per_competence_elements pce1
where
pce.assessment_id = pce1.assessment_id
AND pce.competence_id = pce1.competence_id
AND pce1.object_id = pce.object_id)ManagerComments
FROM per_all_people_f papf,
per_all_people_f papf1,
per_all_assignments_f paaf,
per_appraisals pa,
per_appraisal_templates pat,
per_assessments pas,
per_competence_elements pce,
Dynamic Views template. Powered by Blogger.
9/26/2016 11:06 AM
19 of 19
Classic
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
http://appshrmshandbook.blogspot.in/
pa.appraisee_person_id = papf.person_id
pa.appraisal_template_id = pat.appraisal_template_id
pa.appraisal_id = pas.appraisal_id
pat.assessment_type_id = pas.assessment_type_id
pas.assessment_id = pce.assessment_id
pce.object_id = papf.person_id
pce.competence_id = pc.competence_id
TRUNC(sysdate) BETWEEN papf.effective_start_date AND papf.effective_end_date
TRUNC(sysdate) BETWEEN papf1.effective_start_date AND papf1.effective_end_date
TRUNC(sysdate) BETWEEN paaf.effective_start_date AND paaf.effective_end_date
papf.employee_number= :p_employee_number
pa.appraisal_date = :p_appraisal_date
papf.business_group_id=:p_bg_id
Sample Output:
Add a comment
9/26/2016 11:06 AM