The following lines contain the word 'select', 'insert', 'update' or 'delete':
p_create_or_update IN VARCHAR2 := 'C',
px_person_rec IN OUT NOCOPY HZ_PARTY_V2PUB.PERSON_REC_TYPE
);
p_create_or_update IN VARCHAR2 := 'C',
px_person_rec IN OUT NOCOPY HZ_PARTY_V2PUB.PERSON_REC_TYPE
) IS
BEGIN
px_person_rec.person_pre_name_adjunct := p_person_obj.person_pre_name_adjunct;
IF(p_create_or_update = 'C') THEN
px_person_rec.party_rec.orig_system:= p_person_os;
px_citizenship_rec.birth_or_selected := p_citizenship_obj.birth_or_selected;
SELECT HZ_BUS_OBJ_TRACKING_S.nextval
INTO l_event_id
FROM DUAL;
p_create_or_update => 'C',
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data);
p_create_or_update => 'C',
x_return_status => x_return_status,
x_errorcode => l_errorcode,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
p_create_update_flag => 'C',
p_obj_source => p_obj_source,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_parent_id => x_person_id,
p_parent_os => x_person_os,
p_parent_osr => x_person_osr,
p_parent_obj_type => 'PERSON'
);
p_create_update_flag => 'C',
p_obj_source => p_obj_source,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
p_create_or_update => 'C',
p_obj_source => p_obj_source,
p_event_id => l_event_id
);
PROCEDURE do_update_person_bo(
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_person_obj IN OUT NOCOPY HZ_PERSON_BO,
p_created_by_module IN VARCHAR2,
p_obj_source IN VARCHAR2 := NULL,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
x_person_id OUT NOCOPY NUMBER,
x_person_os OUT NOCOPY VARCHAR2,
x_person_osr OUT NOCOPY VARCHAR2
)IS
l_debug_prefix VARCHAR2(30);
l_create_update_flag VARCHAR2(1);
SELECT p.object_version_number, p.party_number
FROM HZ_PARTIES p
WHERE p.party_id = l_party_id
AND p.party_type = 'PERSON'
AND p.status in ('A','I');
SAVEPOINT do_update_person_bo_pub;
hz_utility_v2pub.debug(p_message=>'do_update_person_bo(+)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
p_create_or_update => 'U',
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data);
IF(HZ_PARTY_BO_PVT.G_CALL_UPDATE_CUST_BO IS NOT NULL) THEN
l_per_raise_event := FALSE;
l_per_raise_event := HZ_PARTY_BO_PVT.is_raising_update_event(
p_party_id => x_person_id,
p_bo_code => 'PERSON'
);
l_pc_raise_event := HZ_PARTY_BO_PVT.is_raising_update_event(
p_party_id => x_person_id,
p_bo_code => 'PERSON_CUST'
);
SELECT HZ_BUS_OBJ_TRACKING_S.nextval
INTO l_per_event_id
FROM DUAL;
SELECT HZ_BUS_OBJ_TRACKING_S.nextval
INTO l_pc_event_id
FROM DUAL;
p_create_or_update => 'U',
px_person_rec => l_person_rec
);
HZ_PARTY_V2PUB.update_person(
p_person_rec => l_person_rec,
p_party_object_version_number => l_ovn,
x_profile_id => l_profile_id,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
p_create_or_update => 'U',
x_return_status => x_return_status,
x_errorcode => l_errorcode,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
p_create_update_flag => 'U',
p_obj_source => p_obj_source,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_parent_id => x_person_id,
p_parent_os => x_person_os,
p_parent_osr => x_person_osr,
p_parent_obj_type => 'PERSON'
);
p_create_update_flag => 'U',
p_obj_source => p_obj_source,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
p_create_or_update => 'U',
p_obj_source => p_obj_source,
p_event_id => l_per_event_id
);
p_create_or_update => 'U',
p_obj_source => p_obj_source,
p_event_id => l_pc_event_id
);
hz_utility_v2pub.debug(p_message=>'do_update_person_bo(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
ROLLBACK TO do_update_person_bo_pub;
hz_utility_v2pub.debug(p_message=>'do_update_person_bo(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
ROLLBACK TO do_update_person_bo_pub;
hz_utility_v2pub.debug(p_message=>'do_update_person_bo(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
ROLLBACK TO do_update_person_bo_pub;
hz_utility_v2pub.debug(p_message=>'do_update_person_bo(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
END do_update_person_bo;
PROCEDURE update_person_bo(
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_person_obj IN HZ_PERSON_BO,
p_created_by_module IN VARCHAR2,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
x_person_id OUT NOCOPY NUMBER,
x_person_os OUT NOCOPY VARCHAR2,
x_person_osr OUT NOCOPY VARCHAR2
) IS
l_per_obj HZ_PERSON_BO;
do_update_person_bo(
p_init_msg_list => p_init_msg_list,
p_person_obj => l_per_obj,
p_created_by_module => p_created_by_module,
p_obj_source => NULL,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
x_person_id => x_person_id,
x_person_os => x_person_os,
x_person_osr => x_person_osr
);
END update_person_bo;
PROCEDURE update_person_bo(
p_person_obj IN HZ_PERSON_BO,
p_created_by_module IN VARCHAR2,
p_obj_source IN VARCHAR2 := null,
p_return_obj_flag IN VARCHAR2 := fnd_api.g_true,
x_return_status OUT NOCOPY VARCHAR2,
x_messages OUT NOCOPY HZ_MESSAGE_OBJ_TBL,
x_return_obj OUT NOCOPY HZ_PERSON_BO,
x_person_id OUT NOCOPY NUMBER,
x_person_os OUT NOCOPY VARCHAR2,
x_person_osr OUT NOCOPY VARCHAR2
)IS
l_msg_count NUMBER;
do_update_person_bo(
p_init_msg_list => FND_API.G_TRUE,
p_person_obj => l_per_obj,
p_created_by_module => p_created_by_module,
p_obj_source => p_obj_source,
x_return_status => x_return_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data,
x_person_id => x_person_id,
x_person_os => x_person_os,
x_person_osr => x_person_osr
);
END update_person_bo;
l_create_update_flag VARCHAR2(1);
l_create_update_flag := HZ_REGISTRY_VALIDATE_BO_PVT.check_bo_op(
p_entity_id => x_person_id,
p_entity_os => x_person_os,
p_entity_osr => x_person_osr,
p_entity_type => 'HZ_PARTIES',
p_parent_id => NULL,
p_parent_obj_type=> NULL);
IF(l_create_update_flag = 'E') THEN
FND_MESSAGE.SET_NAME('AR', 'HZ_API_INVALID_ID');
IF(l_create_update_flag = 'C') THEN
do_create_person_bo(
p_init_msg_list => fnd_api.g_false,
p_validate_bo_flag => p_validate_bo_flag,
p_person_obj => p_person_obj,
p_created_by_module => p_created_by_module,
p_obj_source => p_obj_source,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
x_person_id => x_person_id,
x_person_os => x_person_os,
x_person_osr => x_person_osr
);
ELSIF(l_create_update_flag = 'U') THEN
do_update_person_bo(
p_init_msg_list => fnd_api.g_false,
p_person_obj => p_person_obj,
p_created_by_module => p_created_by_module,
p_obj_source => p_obj_source,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
x_person_id => x_person_id,
x_person_os => x_person_os,
x_person_osr => x_person_osr
);
HZ_PERSON_INFO_V2PUB.update_person_language(
p_person_language_rec => l_person_lang_rec,
p_object_version_number => l_ovn,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
HZ_PERSON_INFO_V2PUB.update_education(
p_education_rec => l_education_rec,
p_object_version_number => l_ovn,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
HZ_PERSON_INFO_V2PUB.update_citizenship(
p_citizenship_rec => l_citizenship_rec,
p_object_version_number => l_ovn,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
HZ_PERSON_INFO_V2PUB.update_employment_history(
p_employment_history_rec => l_employ_hist_rec,
p_object_version_number => l_ovn,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
HZ_PERSON_INFO_V2PUB.update_work_class(
p_work_class_rec => l_work_class_rec,
p_object_version_number => l_ovn,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
HZ_PERSON_INFO_V2PUB.update_person_interest(
p_person_interest_rec => l_interest_rec,
p_object_version_number => l_ovn,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data
);
-- extraction validation logic is same as update
l_person_id := p_person_id;
The Get Persons Updated procedure is a service to retrieve all of the Person business objects whose updates have been
captured by the logical business event. Each Persons Updated business event signifies that one or more Person business
objects have been updated.
The caller provides an identifier for the Persons Update business event and the procedure returns database objects of the
type HZ_PERSON_BO for all of the Person business objects from the business event.
Gathering all of the returned database objects from those API calls, the procedure packages them in a table structure and
returns them to the caller.
*/
PROCEDURE get_persons_updated(
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_event_id IN NUMBER,
x_person_objs OUT NOCOPY HZ_PERSON_BO_TBL,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2
) is
l_debug_prefix VARCHAR2(30) := '';
hz_utility_v2pub.debug(p_message=>'hz_person_bo_pub.get_persons_updated(+)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
HZ_EXTRACT_PERSON_BO_PVT.get_persons_updated(
p_init_msg_list => fnd_api.g_false,
p_event_id => p_event_id,
x_person_objs => x_person_objs,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data);
hz_utility_v2pub.debug(p_message=>'hz_person_bo_pub.get_persons_updated (-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
hz_utility_v2pub.debug(p_message=>'hz_person_bo_pub.get_persons_updated(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
hz_utility_v2pub.debug(p_message=>'hz_person_bo_pub.get_persons_updated(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
hz_utility_v2pub.debug(p_message=>'hz_person_bo_pub.get_persons_updated(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
PROCEDURE get_persons_updated(
p_event_id IN NUMBER,
x_person_objs OUT NOCOPY HZ_PERSON_BO_TBL,
x_return_status OUT NOCOPY VARCHAR2,
x_messages OUT NOCOPY HZ_MESSAGE_OBJ_TBL
) IS
l_msg_count NUMBER;
get_persons_updated(
p_init_msg_list => FND_API.G_TRUE,
p_event_id => p_event_id,
x_person_objs => x_person_objs,
x_return_status => x_return_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data
);
END get_persons_updated;
PROCEDURE get_person_updated(
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_event_id IN NUMBER,
p_person_id IN NUMBER,
x_person_obj OUT NOCOPY HZ_PERSON_BO,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2
) is
l_debug_prefix VARCHAR2(30) := '';
hz_utility_v2pub.debug(p_message=>'hz_person_bo_pub.get_person_updated(+)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
HZ_EXTRACT_PERSON_BO_PVT.get_person_updated(
p_init_msg_list => fnd_api.g_false,
p_event_id => p_event_id,
p_person_id => p_person_id,
x_person_obj => x_person_obj,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data);
hz_utility_v2pub.debug(p_message=>'hz_person_bo_pub.get_person_updated (-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
hz_utility_v2pub.debug(p_message=>'hz_person_bo_pub.get_person_updated(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
hz_utility_v2pub.debug(p_message=>'hz_person_bo_pub.get_person_updated(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
hz_utility_v2pub.debug(p_message=>'hz_person_bo_pub.get_person_updated(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
PROCEDURE get_person_updated(
p_event_id IN NUMBER,
p_person_id IN NUMBER,
x_person_obj OUT NOCOPY HZ_PERSON_BO,
x_return_status OUT NOCOPY VARCHAR2,
x_messages OUT NOCOPY HZ_MESSAGE_OBJ_TBL
) IS
l_msg_count NUMBER;
get_person_updated(
p_init_msg_list => FND_API.G_TRUE,
p_event_id => p_event_id,
p_person_id => p_person_id,
x_person_obj => x_person_obj,
x_return_status => x_return_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data
);
END get_person_updated;
PROCEDURE get_ids_persons_updated (
p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
p_event_id IN NUMBER,
x_person_ids OUT NOCOPY HZ_EXTRACT_BO_UTIL_PVT.BO_ID_TBL,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2
) is
l_debug_prefix VARCHAR2(30) := '';
hz_utility_v2pub.debug(p_message=>'get_ids_persons_updated(+)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
hz_utility_v2pub.debug(p_message=>'get_ids_persons_updated (-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
hz_utility_v2pub.debug(p_message=>'get_ids_persons_updated(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
hz_utility_v2pub.debug(p_message=>'get_ids_persons_updated(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);
hz_utility_v2pub.debug(p_message=>'get_ids_persons_updated(-)',
p_prefix=>l_debug_prefix,
p_msg_level=>fnd_log.level_procedure);