Step1 : Make Bonus Varification Report from provided query
step1.1: transform above data into required payroll loading and load into staging Table.
Step1.3: Change the Bonus Date to current fical year in procedure RAJBY_GET_BONUS
Step2 : Assign Bonus Element with Future 6 as installment number (1 or 2)
You can add via Element entry on one employee, or you can add to whole payroll from Batch.
Step3: Run payroll for Bonus (Other element entry follow screenshot)
Step4: Bonus Disbursment Sheet Report
Step5: run Costing Procedure from Backend
Step1: Run the Bonus Query
It will give you the resultant data in Excel to be shared with HR department for Verification.
Step1.1: transform above data into required payroll loading and load into staging Table. For new fiscal
year
select * from xxhr.RAJBY_BONUS_19 rp
where rp.bonusperiod=to_Date('30/6/2022','dd/mm/rrrr')
Step1.2: Update the Procedure RAJBY_GET_BONUS and change the bonus date to current fisacl year
end.
Step2: Assign Elements from Batch
Goto Assignment Set
Save and process button
ON backend system runs the Concurrent
All load in bulk is shown in Element Lines
Click process button.
After Requery your Batch is in transferred state
Now this Bonus element is assigned to all employees of Management payroll in the month of Feb23
Now run the Bonus Run in the system
Give the Payroll Run Command like below
And submit this request; add date paid to exact date of bonus disbursement
Upon submit of this Request; system runs the Concurrent request
And new like of Payroll run is added on 13Feb2023
Now Bonus summaries are available for Disbursement
Code for Bonus Report Query:
select
FVT.PERSON_ID,FVT.ASSIGNMENT_ID,FVT.EMPLOYEE_NUMBER,FVT.LEGCY_CODE,FVT.CNIC,FVT.FULL_NAME,FVT.HIR
E_DATE,FVT.PAYROLL_NAME,FVT.dept_name,FVT.sub_dept,fvt.ASG_LINES,
FVT.POSITION,fvt.PROBATION_DAYS,fvt.BONUS_PERIOD,fvt.SALARY,
round((fvt.SALARY/12)*fvt.BONUS_PERIOD) Tot_BONUS_AMT,
round(round((fvt.SALARY/12)*fvt.BONUS_PERIOD)/2) FIRST_BONUS_INST,fvt.other_sal,
round((fvt.other_sal/12)*fvt.BONUS_PERIOD) Tot_OTHBONUS_AMT,
round((round((fvt.other_sal/12)*fvt.BONUS_PERIOD)/2)) FIRST_OTH_INST
from
(
select
eci.PERSON_ID,eci.ASSIGNMENT_ID,eci.EMPLOYEE_NUMBER,eci.LEGCY_CODE,eci.CNIC,eci.FULL_NAME,eci.HIR
E_DATE,eci.PAYROLL_NAME,eci.dept_name,eci.sub_dept,
eci.ASG_LINES,eci.POSITION,
case when (trunc(&P_CUTOFF_ASONDATE/*to_date('9/4/2022','dd/mm/rrrr')*/)-
greatest(eci.HIRE_DATE,&P_YEAR_ST_DATE/*to_date('1/7/2021','dd/mm/rrrr')*/))>90 then 0 else
trunc(&P_CUTOFF_ASONDATE/*to_date('9/4/2022','dd/mm/rrrr')*/)-
greatest(eci.HIRE_DATE,&P_YEAR_ST_DATE/*to_date('1/7/2021','dd/mm/rrrr')*/) end PROBATION_DAYS,
case when (&P_YEAR_END_DATE/*to_date('30/6/2022','dd/mm/rrrr')*/-eci.HIRE_DATE)>90 then
round(months_between(&P_YEAR_END_DATE/*to_date('30/6/2022','dd/mm/rrrr')*/,
greatest(eci.HIRE_DATE,&P_YEAR_ST_DATE/*to_date('1/7/2021','dd/mm/rrrr')*/))) else 0 end
BONUS_PERIOD,
eci.SALARY,
xxhr.rajby_get_emp_othersal(eci.ASSIGNMENT_ID,&P_CUTOFF_ASONDATE/*to_date('9/4/2022','dd/mm/
rrrr')*/) other_sal
from rajby_emp_complete_info eci
where eci.HIRE_DATE<=&P_CUTOFF_ASONDATE/*to_date('9/4/2022','dd/mm/rrrr')*/
and
nvl(eci.LEFT_DATE,&P_CUTOFF_ASONDATE/*to_date('9/4/2022','dd/mm/rrrr')*/)>=&P_CUTOFF_ASONDATE/
*to_date('9/4/2022','dd/mm/rrrr')*/
and eci.PAY_BASIS_ID not in (1062)
and eci.PERSON_GROUP not in ('CONTRACTUAL')
and eci.EMPLOYEE_NUMBER not in ('2735','2736','2738','88680','1')
) FVT
where FVT.HIRE_DATE<=&P_CUTOFF_HIRE_DATE--to_date('31/3/2022','dd/mm/rrrr')
order by fvt.PAYROLL_NAME,fvt.DEPT_NAME,fvt.SUB_DEPT,fvt.BONUS_PERIOD