SQL to get the end date of the latest assigned payroll time period. 

SQL to get  the end date of the latest assigned payroll time period. 

SQL to get the end date of the latest assigned payroll time period. 

This query returns the END_DATE (formatted as YYYY-MM-DD) from PAY_TIME_PERIODS for the most recent payroll assignment. It joins payroll assignment, relationship, and payroll definition tables to determine the applicable payroll. 

SELECT TO_CHAR(PTPS3.END_DATE,'YYYY-MM-DD') 

FROM 

pay_payroll_assignments ppas1,  

pay_pay_relationships_dn pprdn2,  

pay_assigned_payrolls_dn papdn3,  

pay_all_payrolls_f papf4,  

PAY_TIME_PERIODS PTPS3 

WHERE 

1=1 

--AND ppas1.hr_assignment_id =  :{PARAMETER.ASG_ID} 

AND pprdn2.payroll_relationship_id(+) = ppas1.payroll_relationship_id 

AND papdn3.payroll_term_id(+) = ppas1.payroll_term_id     

AND papf4.payroll_id(+)  = papdn3.payroll_id 

AND PTPS3.PAYROLL_ID	= papdn3.payroll_id 

AND PTPS3.CUT_OFF_DATE IS NOT NULL 

--AND TO_DATE(:{PARAMETER.P_EFF_DATE}, 'YYYY/MM/DD') BETWEEN PTPS3.START_DATE AND PTPS3.END_DATE 

AND papdn3.START_DATE =(SELECT MAX(papd1.START_DATE) 

                           FROM pay_assigned_payrolls_dn papd1 WHERE papd1.payroll_term_id = papdn3.payroll_term_id 

                        ) 

AND ROWNUM=1 

Output Results 

Leave a Reply

Your email address will not be published. Required fields are marked *