The following lines contain the word 'select', 'insert', 'update' or 'delete':
select pbg.security_group_id
from per_business_groups pbg
, per_contact_relationships pcr
where pcr.contact_relationship_id = p_contact_relationship_id
AND pbg.business_group_id = pcr.business_group_id;
select pbg.legislation_code
from per_business_groups_perf pbg
, per_contact_relationships ctr
, per_contact_extra_info_f cei
where cei.contact_extra_info_id = p_contact_extra_info_id
and ctr.contact_relationship_id = cei.contact_relationship_id
and pbg.business_group_id = ctr.business_group_id;
SELECT 'x'
FROM per_contact_relationships con
WHERE con.contact_relationship_id = p_contact_relationship_id;
select legislation_code,
active_inactive_flag,
multiple_occurences_flag
from per_contact_info_types
where information_type = p_information_type;
-- 1) INSERT
-- 2) FUTURE_CHANGE (possibly extend effective_end_date)
-- 3) DELETE_NEXT_CHANGE (possibly extend effective_end_date)
--
if p_datetrack_mode in (hr_api.g_insert, hr_api.g_future_change, hr_api.g_delete_next_change) then
open csr_information_type;
-- The following validation is only done when INSERTING
--
if p_datetrack_mode = hr_api.g_insert then
--
-- Check the information_type is available in current legislation.
--
if (l_rec.legislation_code is not null and
l_rec.legislation_code <> per_ctr_bus.return_legislation_code(p_contact_relationship_id)) then
fnd_message.set_name('PER', 'HR_INV_INFO_TYPE');
select 'Y'
into l_dummy
from per_contact_relationships
where contact_relationship_id = p_contact_relationship_id
for update nowait;
-- Note p_contact_extra_info_id for INSERTING is null.
--
select min(effective_start_date)
into l_min_esd
from per_contact_extra_info_f
where contact_relationship_id = p_contact_relationship_id
and information_type = p_information_type
and contact_extra_info_id <> nvl(p_contact_extra_info_id, -1)
and effective_end_date >= p_validation_start_date
and effective_start_date <= p_validation_end_date;
Procedure chk_non_updateable_args
(p_effective_date in date
,p_rec in per_rei_shd.g_rec_type
) IS
--
l_argument VARCHAR2(30);
l_proc varchar2(72) := g_package || 'chk_non_updateable_args';
End chk_non_updateable_args;
Procedure dt_update_validate
(p_datetrack_mode in varchar2
,p_validation_start_date in date
,p_validation_end_date in date
) Is
--
l_proc varchar2(72) := g_package||'dt_update_validate';
End dt_update_validate;
Procedure dt_delete_validate
(p_contact_extra_info_id in number
,p_datetrack_mode in varchar2
,p_validation_start_date in date
,p_validation_end_date in date
) Is
--
l_proc varchar2(72) := g_package||'dt_delete_validate';
If (p_datetrack_mode = hr_api.g_delete or
p_datetrack_mode = hr_api.g_zap) then
--
--
-- Ensure the arguments are not null
--
hr_api.mandatory_arg_error
(p_api_name => l_proc
,p_argument => 'validation_start_date'
,p_argument_value => p_validation_start_date
);
End dt_delete_validate;
Procedure insert_validate
(p_rec in per_rei_shd.g_rec_type
,p_effective_date in date
,p_datetrack_mode in varchar2
,p_validation_start_date in date
,p_validation_end_date in out nocopy date
) is
--
l_proc varchar2(72) := g_package||'insert_validate';
End insert_validate;
Procedure update_validate
(p_rec in per_rei_shd.g_rec_type
,p_effective_date in date
,p_datetrack_mode in varchar2
,p_validation_start_date in date
,p_validation_end_date in date
) is
--
l_proc varchar2(72) := g_package||'update_validate';
dt_update_validate
(p_datetrack_mode => p_datetrack_mode
,p_validation_start_date => p_validation_start_date
,p_validation_end_date => p_validation_end_date
);
chk_non_updateable_args
(p_effective_date => p_effective_date
,p_rec => p_rec
);
End update_validate;
Procedure delete_validate
(p_rec in per_rei_shd.g_rec_type
,p_effective_date in date
,p_datetrack_mode in varchar2
,p_validation_start_date in date
,p_validation_end_date in out nocopy date
) is
--
l_proc varchar2(72) := g_package||'delete_validate';
dt_delete_validate
(p_datetrack_mode => p_datetrack_mode
,p_validation_start_date => p_validation_start_date
,p_validation_end_date => p_validation_end_date
,p_contact_extra_info_id => p_rec.contact_extra_info_id
);
End delete_validate;