DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_AU_PERSON_API

Source


1 PACKAGE BODY hr_au_person_api AS
2 /* $Header: hrauwrpe.pkb 115.5 2002/12/03 09:42:17 apunekar ship $ */
3 /*
4  +==========================================================================================
5  |              Copyright (c) 1999 Oracle Corporation Ltd
6  |                           All rights reserved.
7  +==========================================================================================
8  |SQL Script File Name : HR AU WR PE . PKB
9  |                Name : hr_au_person_api
10  |         Description : Person API Wrapper for AU
11  |
12  |   Name           Date         Version Bug     Text
13  |   -------------- ----------   ------- -----   ----
14  |   sgoggin        11-JUN-1999  110.0           Created for AU
15  |   atopol         01-OCT-1999  115.0           Upgraded
16  |   makelly        30-MAR-2000  115.1           Removed Tax_File_Number
17  |   sparker        02-MAY-2000  115.2   1281758 Replaced p_per_information1 with
18  |                                               p_country_of_birth. Because country_of_birth
19  |                                               has been added to per_all_people_f, there
20  |                                               is no need for it in the DF.
21  |   Apunekar       02-DEC-2002  115.3   2689173 Added Nocopy to out and in out parameters
22  |NOTES
23  +==========================================================================================
24 */
25 
26    --
27    -- Package Variables
28    --
29 
30    g_package   VARCHAR2(33) := 'hr_au_person_api.';
31 
32 
33    -- ----------------------------------------------------------------------------
34    -- |--------------------------< update_AU_person >----------------------------|
35 
36    -- ----------------------------------------------------------------------------
37    PROCEDURE update_AU_person
38     ( p_validate                              IN         BOOLEAN  DEFAULT FALSE
39      ,p_effective_date                        IN         DATE
40      ,p_datetrack_update_mode                 IN         VARCHAR2
41      ,p_person_id                             IN         NUMBER
42      ,p_object_version_number                 IN OUT     NOCOPY NUMBER
43      ,p_person_type_id                        IN         NUMBER   DEFAULT hr_api.g_number
44      ,p_last_name                             IN         VARCHAR2 DEFAULT hr_api.g_varchar2
45      ,p_applicant_number                      IN         VARCHAR2 DEFAULT hr_api.g_varchar2
46      ,p_comments                              IN         VARCHAR2 DEFAULT hr_api.g_varchar2
47      ,p_date_employee_data_verified           IN         DATE     DEFAULT hr_api.g_date
48      ,p_date_of_birth                         IN         DATE     DEFAULT hr_api.g_date
49      ,p_email_address                         IN         VARCHAR2 DEFAULT hr_api.g_varchar2
50      ,p_employee_number                       IN OUT     NOCOPY VARCHAR2
51      ,p_expense_check_send_to_addres          IN         VARCHAR2 DEFAULT hr_api.g_varchar2
52      ,p_first_name                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
53      ,p_known_as                              IN         VARCHAR2 DEFAULT hr_api.g_varchar2
54      ,p_marital_status                        IN         VARCHAR2 DEFAULT hr_api.g_varchar2
55      ,p_middle_names                          IN         VARCHAR2 DEFAULT hr_api.g_varchar2
56      ,p_nationality                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
57      ,p_national_identifier                   IN         VARCHAR2 DEFAULT hr_api.g_varchar2
58      ,p_previous_last_name                    IN         VARCHAR2 DEFAULT hr_api.g_varchar2
59      ,p_registered_disabled_flag              IN         VARCHAR2 DEFAULT hr_api.g_varchar2
60      ,p_sex                                   IN         VARCHAR2 DEFAULT hr_api.g_varchar2
61      ,p_title                                 IN         VARCHAR2 DEFAULT hr_api.g_varchar2
62      ,p_vendor_id                             IN         NUMBER   DEFAULT hr_api.g_number
63      ,p_work_telephone                        IN         VARCHAR2 DEFAULT hr_api.g_varchar2
64      ,p_attribute_category                    IN         VARCHAR2 DEFAULT hr_api.g_varchar2
65      ,p_attribute1                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
66      ,p_attribute2                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
67      ,p_attribute3                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
68      ,p_attribute4                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
69      ,p_attribute5                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
70      ,p_attribute6                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
71      ,p_attribute7                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
72      ,p_attribute8                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
73      ,p_attribute9                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
74      ,p_attribute10                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
75      ,p_attribute11                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
76      ,p_attribute12                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
77      ,p_attribute13                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
78      ,p_attribute14                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
79      ,p_attribute15                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
80      ,p_attribute16                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
81      ,p_attribute17                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
82      ,p_attribute18                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
83      ,p_attribute19                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
84      ,p_attribute20                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
85      ,p_attribute21                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
86      ,p_attribute22                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
87      ,p_attribute23                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
88      ,p_attribute24                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
89      ,p_attribute25                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
90      ,p_attribute26                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
91      ,p_attribute27                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
92      ,p_attribute28                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
93      ,p_attribute29                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
94      ,p_attribute30                           IN         VARCHAR2 DEFAULT hr_api.g_varchar2
95      ,p_country_of_birth                      IN         VARCHAR2 DEFAULT hr_api.g_varchar2
96      ,p_date_of_death                         IN         DATE     DEFAULT hr_api.g_date
97      ,p_background_check_status               IN         VARCHAR2 DEFAULT hr_api.g_varchar2
98      ,p_background_date_check                 IN         DATE     DEFAULT hr_api.g_date
99      ,p_blood_type                            IN         VARCHAR2 DEFAULT hr_api.g_varchar2
100      ,p_correspondence_language               IN         VARCHAR2 DEFAULT hr_api.g_varchar2
101      ,p_fast_path_employee                    IN         VARCHAR2 DEFAULT hr_api.g_varchar2
102      ,p_fte_capacity                          IN         NUMBER   DEFAULT hr_api.g_number
103      ,p_hold_applicant_date_until             IN         DATE     DEFAULT hr_api.g_date
104      ,p_honors                                IN         VARCHAR2 DEFAULT hr_api.g_varchar2
105      ,p_internal_location                     IN         VARCHAR2 DEFAULT hr_api.g_varchar2
106      ,p_last_medical_test_by                  IN         VARCHAR2 DEFAULT hr_api.g_varchar2
107      ,p_last_medical_test_date                IN         DATE     DEFAULT hr_api.g_date
108      ,p_mailstop                              IN         VARCHAR2 DEFAULT hr_api.g_varchar2
109      ,p_office_number                         IN         VARCHAR2 DEFAULT hr_api.g_varchar2
110      ,p_on_military_service                   IN         VARCHAR2 DEFAULT hr_api.g_varchar2
111      ,p_pre_name_adjunct                      IN         VARCHAR2 DEFAULT hr_api.g_varchar2
112      ,p_projected_start_date                  IN         DATE     DEFAULT hr_api.g_date
113      ,p_rehire_authorizor                     IN         VARCHAR2 DEFAULT hr_api.g_varchar2
114      ,p_rehire_recommendation                 IN         VARCHAR2 DEFAULT hr_api.g_varchar2
115      ,p_resume_exists                         IN         VARCHAR2 DEFAULT hr_api.g_varchar2
116      ,p_resume_last_updated                   IN         DATE     DEFAULT hr_api.g_date
117      ,p_second_passport_exists                IN         VARCHAR2 DEFAULT hr_api.g_varchar2
118      ,p_student_status                        IN         VARCHAR2 DEFAULT hr_api.g_varchar2
119      ,p_work_schedule                         IN         VARCHAR2 DEFAULT hr_api.g_varchar2
120      ,p_rehire_reason                         IN         VARCHAR2 DEFAULT hr_api.g_varchar2
121      ,p_suffix                                IN         VARCHAR2 DEFAULT hr_api.g_varchar2
122      ,p_benefit_group_id                      in         number   default hr_api.g_number
123      ,p_receipt_of_death_cert_date            in         date     default hr_api.g_date
124      ,p_coord_ben_med_pln_no                  in         VARCHAR2 default hr_api.g_varchar2
125      ,p_coord_ben_no_cvg_flag                 in         varchar2 default hr_api.g_varchar2
126      ,p_uses_tobacco_flag                     in         varchar2 default hr_api.g_varchar2
127      ,p_dpdnt_adoption_date                   in         date     default hr_api.g_date
128      ,p_dpdnt_vlntry_svce_flag                in         varchar2 default hr_api.g_varchar2
129      ,p_original_date_of_hire                 in         date     default hr_api.g_date
130      ,p_adjusted_svc_date                     in         date     default hr_api.g_date
131      ,p_effective_start_date                  OUT        NOCOPY DATE
132      ,p_effective_end_date                    OUT        NOCOPY DATE
133      ,p_full_name                             OUT        NOCOPY VARCHAR2
134      ,p_comment_id                            OUT        NOCOPY NUMBER
135      ,p_name_combination_warning              OUT        NOCOPY BOOLEAN
136      ,p_assign_payroll_warning                OUT        NOCOPY BOOLEAN
137      ,p_orig_hire_warning                     OUT        NOCOPY BOOLEAN
138    ) is
139 
140    --
141    -- Declare cursors and local variables
142    --
143    l_proc                VARCHAR2(72) := g_package||'update_AU_person';
144    l_effective_date      DATE;
145    l_legislation_code    per_business_groups.legislation_code%type;
146    l_discard_varchar2    VARCHAR2(30);
147    --
148    CURSOR check_legislation
149       (c_person_id         per_people_f.person_id%TYPE,
150        c_effective_date DATE
151       )
152    IS
153       select bgp.legislation_code
154       from per_people_f per,
155              per_business_groups bgp
156       where per.business_group_id = bgp.business_group_id
157       and    per.person_id       = c_person_id
158       and    c_effective_date
159          between per.effective_start_date and per.effective_end_date;
160    --
161 BEGIN
162    hr_utility.set_location('Entering:'|| l_proc, 5);
163    --
164    -- Initialise local variables
165    --
166    l_effective_date := trunc(p_effective_date);
167    --
168    -- Validation IN addition to Row Handlers
169    --
170    -- Check that the person exists.
171    --
172    OPEN check_legislation(p_person_id, l_effective_date);
173    FETCH check_legislation into l_legislation_code;
174    IF check_legislation%notfound THEN
175       CLOSE check_legislation;
176       hr_utility.set_message(801,'HR_7220_INVALID_PRIMARY_KEY');
177       hr_utility.raise_error;
178    END IF;
179    CLOSE check_legislation;
180    hr_utility.set_location(l_proc, 20);
181    --
182    -- Check that the legislation of the specified business group is 'AU'.
183    --
184    IF l_legislation_code <> 'AU' THEN
185       hr_utility.set_message(801, 'HR_7961_PER_BUS_GRP_INVALID');
186       hr_utility.set_message_token('LEG_CODE','AU');
187       hr_utility.raise_error;
188    END IF;
189    hr_utility.set_location(l_proc, 30);
190    --
191    -- Update the person record using the update_person BP
192    --
193    hr_person_api.update_person
194    (p_validate                              => p_validate
195    ,p_effective_date                        => l_effective_date
196    ,p_datetrack_update_mode                 => p_datetrack_update_mode
197    ,p_person_id                             => p_person_id
198    ,p_object_version_number                 => p_object_version_number
199    ,p_person_type_id                        => p_person_type_id
200    ,p_last_name                             => p_last_name
201    ,p_applicant_number                      => p_applicant_number
202    ,p_comments                              => p_comments
203    ,p_date_employee_data_verified           => p_date_employee_data_verified
204    ,p_date_of_birth                         => p_date_of_birth
205    ,p_email_address                         => p_email_address
206    ,p_employee_number                       => p_employee_number
207    ,p_expense_check_send_to_addres          => p_expense_check_send_to_addres
208    ,p_first_name                            => p_first_name
209    ,p_known_as                              => p_known_as
210    ,p_marital_status                        => p_marital_status
211    ,p_middle_names                          => p_middle_names
212    ,p_nationality                           => p_nationality
213    ,p_national_identifier                   => p_national_identifier
214    ,p_previous_last_name                    => p_previous_last_name
215    ,p_registered_disabled_flag              => p_registered_disabled_flag
216    ,p_sex                                   => p_sex
217    ,p_title                                 => p_title
218    ,p_vendor_id                             => p_vendor_id
219    ,p_work_telephone                        => p_work_telephone
220    ,p_attribute_category                    => p_attribute_category
221    ,p_attribute1                            => p_attribute1
222    ,p_attribute2                            => p_attribute2
223    ,p_attribute3                            => p_attribute3
224    ,p_attribute4                            => p_attribute4
225    ,p_attribute5                            => p_attribute5
226    ,p_attribute6                            => p_attribute6
227    ,p_attribute7                            => p_attribute7
228    ,p_attribute8                            => p_attribute8
229    ,p_attribute9                            => p_attribute9
230    ,p_attribute10                           => p_attribute10
231    ,p_attribute11                           => p_attribute11
232    ,p_attribute12                           => p_attribute12
233    ,p_attribute13                           => p_attribute13
234    ,p_attribute14                           => p_attribute14
235    ,p_attribute15                           => p_attribute15
236    ,p_attribute16                           => p_attribute16
237    ,p_attribute17                           => p_attribute17
238    ,p_attribute18                           => p_attribute18
239    ,p_attribute19                           => p_attribute19
240    ,p_attribute20                           => p_attribute20
241    ,p_attribute21                           => p_attribute21
242    ,p_attribute22                           => p_attribute22
243    ,p_attribute23                           => p_attribute23
244    ,p_attribute24                           => p_attribute24
245    ,p_attribute25                           => p_attribute25
246    ,p_attribute26                           => p_attribute26
247    ,p_attribute27                           => p_attribute27
248    ,p_attribute28                           => p_attribute28
249    ,p_attribute29                           => p_attribute29
250    ,p_attribute30                           => p_attribute30
251    ,p_per_information_category              => 'AU'
252    ,p_country_of_birth                      => p_Country_of_Birth
253    ,p_date_of_death                         => p_date_of_death
254    ,p_background_check_status               => p_background_check_status
255    ,p_background_date_check                 => p_background_date_check
256    ,p_blood_type                            => p_blood_type
257    ,p_correspondence_language               => p_correspondence_language
258    ,p_fast_path_employee                    => p_fast_path_employee
259    ,p_fte_capacity                          => p_fte_capacity
260    ,p_hold_applicant_date_until             => p_hold_applicant_date_until
261    ,p_honors                                => p_honors
262    ,p_internal_location                     => p_internal_location
263    ,p_last_medical_test_by                  => p_last_medical_test_by
264    ,p_last_medical_test_date                => p_last_medical_test_date
265    ,p_mailstop                              => p_mailstop
266    ,p_office_number                         => p_office_number
267    ,p_on_military_service                   => p_on_military_service
268    ,p_pre_name_adjunct                      => p_pre_name_adjunct
269    ,p_projected_start_date                  => p_projected_start_date
270    ,p_rehire_authorizor                     => p_rehire_authorizor
271    ,p_rehire_recommendation                 => p_rehire_recommendation
272    ,p_resume_exists                         => p_resume_exists
273    ,p_resume_last_updated                   => p_resume_last_updated
274    ,p_second_passport_exists                => p_second_passport_exists
275    ,p_student_status                        => p_student_status
276    ,p_work_schedule                         => p_work_schedule
277    ,p_rehire_reason                         => p_rehire_reason
278    ,p_suffix                                => p_suffix
279    ,p_benefit_group_id                      => p_benefit_group_id
280    ,p_receipt_of_death_cert_date            => p_receipt_of_death_cert_date
281    ,p_coord_ben_med_pln_no                  => p_coord_ben_med_pln_no
282    ,p_coord_ben_no_cvg_flag                 => p_coord_ben_no_cvg_flag
283    ,p_uses_tobacco_flag                     => p_uses_tobacco_flag
284    ,p_dpdnt_adoption_date                   => p_dpdnt_adoption_date
285    ,p_dpdnt_vlntry_svce_flag                => p_dpdnt_vlntry_svce_flag
286    ,p_original_date_of_hire                 => p_original_date_of_hire
287    ,p_adjusted_svc_date                     => p_adjusted_svc_date
288    ,p_effective_start_date                  => p_effective_start_date
289    ,p_effective_end_date                    => p_effective_end_date
290    ,p_full_name                             => p_full_name
291    ,p_comment_id                            => p_comment_id
292    ,p_name_combination_warning              => p_name_combination_warning
293    ,p_assign_payroll_warning                => p_assign_payroll_warning
294    ,p_orig_hire_warning                     => p_orig_hire_warning
295    );
296    --
297    hr_utility.set_location(' Leaving:'||l_proc, 7);
298    --
299    END update_AU_person;
300 END hr_au_person_api;