The following lines contain the word 'select', 'insert', 'update' or 'delete':
PROCEDURE UPDATE_ABSENCE_DEV_DESC_FLEX ( p_absence_attendance_id IN NUMBER
) AS
l_proc varchar2(100) := 'hr_au_absence_hook.udpate_absence_dev_desc_flex';
select pee.element_entry_id
,pee.effective_start_date
,pee.effective_end_date
,pet.processing_type
,max(pee.object_version_number)
from per_absence_attendances abs
,pay_element_entries_f pee
,pay_element_types_f pet
,per_all_assignments_f paa
where abs.absence_attendance_id = c_absence_attendance_id
and pee.creator_id = abs.absence_attendance_id
and pee.creator_type = 'A'
and pee.element_type_id = pet.element_type_id
and pee.effective_start_date between pet.effective_start_date and
pet.effective_end_date
and paa.person_id = abs.person_id
and pee.effective_start_date between paa.effective_start_date and
paa.effective_end_date
and paa.assignment_id = pee.assignment_id
group by pee.element_entry_id,
pee.effective_start_date,
pee.effective_end_date,
pet.processing_type
;
/* Update the absence flexfield values by doing a call to the
update_element_entry api. This api has a legislative hook which updates
the element entry values from the Absence flexfield so no need to do the
same updates in here.
Only do for recurring elements because for non-recurring the
update_element_entry api is already being called in the core absence package.
*/
begin
g_debug := hr_utility.debug_enabled;
hr_au_element_entry_hook.update_element_entry_values
(p_effective_date => l_effective_start_date
,p_element_entry_id => l_element_entry_id
,p_creator_type => 'A'
,p_creator_id => p_absence_attendance_id
);
END update_absence_dev_desc_flex ;