[Home] [Help]
PACKAGE BODY: APPS.PER_HU_UPDATE_PERSON
Source
1 package body PER_HU_UPDATE_PERSON as
2 /* $Header: pehuperp.pkb 120.4 2006/09/21 09:13:50 mgettins noship $ */
3 g_package VARCHAR2(30) := 'PER_HU_UPDATE_PERSON.';
4
5 PROCEDURE update_hu_person (p_person_id NUMBER
6 ,p_last_name VARCHAR2
7 ,p_first_name VARCHAR2
8 ,p_national_identifier VARCHAR2
9 ,p_per_information1 VARCHAR2
10 ,p_per_information2 VARCHAR2
11 ,p_effective_date DATE
12 ) is
13
14
15 l_proc VARCHAR2(72) := g_package||'UPDATE_HU_PERSON';
16 CURSOR csr_person_type IS
17 SELECT ppt.system_person_type,ppt.seeded_person_type_key
18 FROM per_person_types ppt,per_person_type_usages_f ptu
19 WHERE ppt.person_type_id = ptu.person_type_id
20 AND p_effective_date BETWEEN ptu.effective_start_date AND ptu.effective_end_date
21 AND ptu.person_id = p_person_id;
22
23 l_person_type per_person_types.system_person_type%TYPE;
24 l_seed_person_type per_person_types.seeded_person_type_key%TYPE;
25 BEGIN
26 --
27 -- Added for GSI Bug 5472781
28 --
29 IF hr_utility.chk_product_install('Oracle Human Resources', 'HU') THEN
30 --
31 OPEN csr_person_type;
32 FETCH csr_person_type into l_person_type,l_seed_person_type;
33 CLOSE csr_person_type;
34
35 hr_api.mandatory_arg_error
36 (p_api_name => l_proc,
37 p_argument => hr_general.decode_lookup('HU_FORM_LABELS','LAST_NAME'),
38 p_argument_value => p_last_name
39 );
40 IF length(p_last_name)>40 THEN
41 hr_utility.set_message(800, 'HR_289712_UTF8_LENGTH_EXCEEDED');
42 hr_utility.set_message_token('COLUMN_NAME',hr_general.decode_lookup('HU_FORM_LABELS','LAST_NAME'));
43 hr_utility.set_message_token('COLUMN_VALUE',p_last_name);
44 hr_utility.set_message_token('MAX_LENGTH','40');
45 hr_utility.raise_error;
46 END IF;
47
48 /* hr_api.mandatory_arg_error
49 (p_api_name => l_proc,
50 p_argument => hr_general.decode_lookup('HU_FORM_LABELS','FIRST_NAME'),
51 p_argument_value => p_first_name
52 );*/
53 IF length(p_first_name)>40 THEN
54 hr_utility.set_message(800, 'HR_289712_UTF8_LENGTH_EXCEEDED');
55 hr_utility.set_message_token('COLUMN_NAME',hr_general.decode_lookup('HU_FORM_LABELS','FIRST_NAME'));
56 hr_utility.set_message_token('COLUMN_VALUE',p_first_name);
57 hr_utility.set_message_token('MAX_LENGTH','40');
58 hr_utility.raise_error;
59 END IF;
60
61 -- For bug 4665225
62 /*IF l_person_type ='EMP' or l_seed_person_type='CONTACT' THEN
63 hr_api.mandatory_arg_error
64 (p_api_name => l_proc,
65 p_argument => hr_general.decode_lookup('HU_FORM_LABELS','MOTHERS_MAIDEN_NAME'),
66 p_argument_value => p_per_information1
67 );
68 END IF;*/
69
70 IF l_person_type='EMP' THEN
71 /* hr_api.mandatory_arg_error
72 (p_api_name => l_proc,
73 p_argument => hr_general.decode_lookup('HU_FORM_LABELS','TAX_ID_NO'),
74 p_argument_value => p_per_information2
75 );
76 */
77
78 IF fnd_profile.value('PER_NATIONAL_IDENTIFIER_VALIDATION') in ('ERROR','WARN') THEN
79 hr_api.mandatory_arg_error
80 (p_api_name => l_proc,
81 p_argument => hr_general.decode_lookup('HU_FORM_LABELS','SS_CODE'),
82 p_argument_value => p_national_identifier
83 );
84 END IF;
85 hr_api.mandatory_arg_error
86 (p_api_name => l_proc,
87 p_argument => hr_general.decode_lookup('HU_FORM_LABELS','FIRST_NAME'),
88 p_argument_value => p_first_name
89 );
90 END IF;
91 --
92 END IF;
93 --
94 END update_hu_person;
95 --
96 END PER_HU_UPDATE_PERSON;