Query to Identify Reversed Termination Cases in Oracle HCM

SELECT B.PERSON_ID , B.LAST_UPDATE_DATE, 
(SELECT C.PERSON_NUMBER FROM PER_ALL_PEOPLE_F C WHERE C.PERSON_ID = B.PERSON_ID AND ROWNUM = 1) PERSONNUMBER
FROM PER_PERIODS_OF_SERVICE_  A , PER_PERIODS_OF_SERVICE_ B 
 WHERE A.PERSON_ID = B.PERSON_ID
AND   A.PERIOD_OF_SERVICE_ID = B.PERIOD_OF_SERVICE_ID
AND  A.DATE_START = B.DATE_START
AND A.ACTUAL_TERMINATION_DATE IS NOT NULL
AND B.ACTUAL_TERMINATION_DATE IS NULL 
AND A.OBJECT_VERSION_NUMBER <  B.OBJECT_VERSION_NUMBER

I hope this blog post was helpful for you. If you have any questions or feedback, please leave a comment below.

SQL Queries (SQLQ)
Posted by : Mohammad