The following lines contain the word 'select', 'insert', 'update' or 'delete':
select
attribute_id
,application_id
,query_string
,use_count
,user_editable
,is_static
,start_date
,end_date
,security_group_id
,value_set_id
,object_version_number
from ame_attribute_usages
where attribute_id = p_attribute_id
and application_id = p_application_id
and p_effective_date
between start_date
and nvl(end_date - ame_util.oneSecond,p_effective_date);
update ame_attribute_usages t
set t.end_date = p_new_end_date
,t.last_updated_by = l_current_user_id
,t.last_update_date = p_new_end_date
,t.last_update_login = l_current_user_id
, t.object_version_number = l_object_version_number
where t.attribute_id = p_attribute_id
and t.application_id = p_application_id
and p_effective_date
between t.start_date and nvl(t.end_date - ame_util.oneSecond,p_effective_date)
;
select
attribute_id
,application_id
,query_string
,use_count
,user_editable
,is_static
,start_date
,end_date
,security_group_id
,value_set_id
,object_version_number
from ame_attribute_usages
where attribute_id = p_attribute_id
and application_id = p_application_id
and p_effective_date
between start_date and nvl(end_date - ame_util.oneSecond, p_effective_date)
for update nowait;
If (p_datetrack_mode <> hr_api.g_insert) then
--
-- We must select and lock the current row.
--
Open C_Sel1;
if (p_datetrack_mode = hr_api.g_update) then
p_validation_start_date := p_effective_date;
elsif (p_datetrack_mode = hr_api.g_delete) then
p_validation_start_date := p_effective_date;
select null
into l_dummy
from ame_attributes
where attribute_id = p_attribute_id
and p_effective_date between start_date and
nvl(end_date - ame_util.oneSecond, p_effective_date)
for update of end_date nowait;
select nvl(max(t.object_version_number),0) + 1
into l_ovn
from ame_attribute_usages t
where t.attribute_id = p_attribute_id
and t.application_id = p_application_id;