mohamed salah oracle hrms techno functional consultant · pdf filemohamed salah oracle hrms...
TRANSCRIPT
Mohamed Salah
Oracle HRMS Techno Functional Consultant
Loan Element
The business:
We want to give the employee loan and deduct it from him as number of installments.
Solution
We will create 3 elements:
1- Loan (Recurring information element contains Loan amount and installments)
Mohamed Salah
Oracle HRMS Techno Functional Consultant
Mohamed Salah
Oracle HRMS Techno Functional Consultant
2- Loan Payments (Non Recurring earnings element contains pay value)
Mohamed Salah
Oracle HRMS Techno Functional Consultant
3- Loan Deductions (Non Recurring Voluntary Deductions element contains pay value)
Mohamed Salah
Oracle HRMS Techno Functional Consultant
4- Link these elements to your payroll from Link Form and repeat this step for the remaining elements
Mohamed Salah
Oracle HRMS Techno Functional Consultant
5- Create balance Net Loan fed by Loan Deductions subtract ,Loan Payments add with Element Entry
inception to date dimension (ITD)
Mohamed Salah
Oracle HRMS Techno Functional Consultant
Mohamed Salah
Oracle HRMS Techno Functional Consultant
6- Create balance Gross Loan fed by Loan Payments add with Element Entry inception to date dimension
(ITD)
Mohamed Salah
Oracle HRMS Techno Functional Consultant
7- Create Loan Formula
Mohamed Salah
Oracle HRMS Techno Functional Consultant
Press edit and write the following code:
Default For ENTRY_START_DATE is '01-jan-1950' (Date) Default For PAY_PROC_PERIOD_END_DATE is '01-jan-1950' (Date)
Default For GROSS_LOAN_ENTRY_ITD is 0 Default For Net_LOAN_ENTRY_ITD is 0
Default For P_Loan is 0
Default For P_Net_Loan is 0 Default For P_Recovery is 0
Default For P_Periods_Paid is 0 Default For P_Stop is 0
Inputs Are Loan_Amount, Installments
/*For First Month We need To pay him the loan and don't deduct the recovery as it starts from next period*/ Message= To_char(ENTRY_START_DATE)||' Test '||To_char(PAY_PROC_PERIOD_END_DATE)
If (GROSS_LOAN_ENTRY_ITD=0) Then ( P_Loan=Loan_Amount
P_Recovery=0
Return P_Loan,P_Recovery,Message )
Else (
P_Net_Loan=Net_LOAN_ENTRY_ITD /* Substract 2 From Get_Periods(formula function that is attached to database function we create ) as 1 for the first pay period which was skipped and second for the current period*/ P_Periods_Paid= Get_Periods(ENTRY_START_DATE,PAY_PROC_PERIOD_END_DATE)-2
If (Installments-P_Periods_Paid<=1) Then
/*Last Period Recover the complete amount*/ ( P_Recovery=Net_LOAN_ENTRY_ITD P_Stop= 1 /*stop element entry after full recover of loan amount*/ Return P_Recovery,P_Stop,Message) Else
(P_Recovery=Net_LOAN_ENTRY_ITD/(Installments-P_Periods_Paid) Return P_Recovery,Message)
)
Mohamed Salah
Oracle HRMS Techno Functional Consultant
8- Make the formula results
9- Create formula function
And provide the parameters such as the database function parameters
Mohamed Salah
Oracle HRMS Techno Functional Consultant
10- Don’t create formula function before the db function , write this code to create a package that
contains the function
CREATE OR REPLACE package APPS.MSA_PAYROLL_PKG AUTHID DEFINER as FUNCTION GET_PERIODS_NUMBER (
P_Start_Date IN Date
,P_END_Date IN Date) RETURN NUMBER ;
END MSA_PAYROLL_PKG;
/
CREATE OR REPLACE package body APPS.MSA_PAYROLL_PKG as function GET_PERIODS_NUMBER (
P_Start_Date IN Date ,P_END_Date IN Date)
RETURN NUMBER IS
V_COUNT NUMBER; BEGIN
Select count(*) INTO V_COUNT from per_time_periods
where start_date >= to_date (P_Start_Date) and cut_off_date <= To_date(P_END_Date );
RETURN V_COUNT;
END GET_PERIODS_NUMBER ;
end MSA_PAYROLL_PKG; /
Mohamed Salah
Oracle HRMS Techno Functional Consultant
11- Make element entry to an employee from assignment entries
Open Entry Values and add the values Loan amount 3500 and installments 2
12- Run Quick Pay 4 times to be sure that it works fine(1 month to give the loan with no deduct,2 months
to deduct the 2 installments, last month for stop the loan element after recover all the loan amount)
First month
Mohamed Salah
Oracle HRMS Techno Functional Consultant
Second and third month
Last month
تم بحمد اهلل وفضله
وكتبه أبو عبدالملك المصري
محمد صالح
أسألكم الدعاء