Oracle HCM Absence Orphan Records
Sometimes We come across a less known Error while submitting an Absence in Oracle Cloud HCM with an Error Code ANC-3405194
Likely caused when Update of Accrual plan is done after an accrual process has already run till a date in future. OR Entering accrual via HDL in a previous plan period and missing to run calculate accrual.
This is Resolved when we Delete the Orphaned records found by Below Query
Query to identify the Orphan Absence Records in the System
SELECT per_accrual_entry_dtl_id,
ppl.person_number ,
ass.assignment_number ,
plans_tl.NAME ,
TYPE ,
procd_date
FROM fusion.anc_per_acrl_entry_dtls acrl_dtls ,
fusion.per_all_people_f ppl ,
fusion.per_all_assignments_m ass ,
fusion.anc_absence_plans_f_tl plans_tl
WHERE acrl_dtls.person_id = ppl.person_id
AND acrl_dtls.procd_date BETWEEN ppl.effective_start_date AND ppl.effective_end_date
AND acrl_dtls.work_term_asg_id = ass.assignment_id
AND ass.assignment_type = 'ET'
AND acrl_dtls.procd_date BETWEEN ass.effective_start_date AND ass.effective_end_date
AND plans_tl.absence_plan_id = acrl_dtls.pl_id
AND acrl_dtls.procd_date BETWEEN plans_tl.effective_start_date AND plans_tl.effective_end_date
AND plans_tl.language = 'US'
AND TYPE ='ORA_ANC_FORFT_REST'
AND NOT EXISTS
(
SELECT per_accrual_entry_id
FROM fusion.anc_per_accrual_entries acrl_ent
WHERE acrl_ent.per_accrual_entry_id = acrl_dtls.per_accrual_entry_id
)
ass.assignment_number ,
plans_tl.NAME ,
TYPE ,
procd_date
FROM fusion.anc_per_acrl_entry_dtls acrl_dtls ,
fusion.per_all_people_f ppl ,
fusion.per_all_assignments_m ass ,
fusion.anc_absence_plans_f_tl plans_tl
WHERE acrl_dtls.person_id = ppl.person_id
AND acrl_dtls.procd_date BETWEEN ppl.effective_start_date AND ppl.effective_end_date
AND acrl_dtls.work_term_asg_id = ass.assignment_id
AND ass.assignment_type = 'ET'
AND acrl_dtls.procd_date BETWEEN ass.effective_start_date AND ass.effective_end_date
AND plans_tl.absence_plan_id = acrl_dtls.pl_id
AND acrl_dtls.procd_date BETWEEN plans_tl.effective_start_date AND plans_tl.effective_end_date
AND plans_tl.language = 'US'
AND TYPE ='ORA_ANC_FORFT_REST'
AND NOT EXISTS
(
SELECT per_accrual_entry_id
FROM fusion.anc_per_accrual_entries acrl_ent
WHERE acrl_ent.per_accrual_entry_id = acrl_dtls.per_accrual_entry_id
)
Comments
Post a Comment