[Home] [Help]
PACKAGE BODY: APPS.IRC_PARTY_SWI
Source
1 Package Body irc_party_swi As
2 /* $Header: irhzpswi.pkb 120.3 2007/12/21 07:32:21 vmummidi noship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'irc_party_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_candidate_internal >---------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_candidate_internal
12 (p_validate in number default hr_api.g_false_num
13 ,p_person_id in number
14 ,p_business_group_id in number
15 ,p_last_name in varchar2
16 ,p_first_name in varchar2 default null
17 ,p_date_of_birth in date default null
18 ,p_email_address in varchar2 default null
19 ,p_title in varchar2 default null
20 ,p_gender in varchar2 default null
21 ,p_marital_status in varchar2 default null
22 ,p_previous_last_name in varchar2 default null
23 ,p_middle_name in varchar2 default null
24 ,p_name_suffix in varchar2 default null
25 ,p_known_as in varchar2 default null
26 ,p_first_name_phonetic in varchar2 default null
27 ,p_last_name_phonetic in varchar2 default null
28 ,p_attribute_category in varchar2 default null
29 ,p_attribute1 in varchar2 default null
30 ,p_attribute2 in varchar2 default null
31 ,p_attribute3 in varchar2 default null
32 ,p_attribute4 in varchar2 default null
33 ,p_attribute5 in varchar2 default null
34 ,p_attribute6 in varchar2 default null
35 ,p_attribute7 in varchar2 default null
36 ,p_attribute8 in varchar2 default null
37 ,p_attribute9 in varchar2 default null
38 ,p_attribute10 in varchar2 default null
39 ,p_attribute11 in varchar2 default null
40 ,p_attribute12 in varchar2 default null
41 ,p_attribute13 in varchar2 default null
42 ,p_attribute14 in varchar2 default null
43 ,p_attribute15 in varchar2 default null
44 ,p_attribute16 in varchar2 default null
45 ,p_attribute17 in varchar2 default null
46 ,p_attribute18 in varchar2 default null
47 ,p_attribute19 in varchar2 default null
48 ,p_attribute20 in varchar2 default null
49 ,p_attribute21 in varchar2 default null
50 ,p_attribute22 in varchar2 default null
51 ,p_attribute23 in varchar2 default null
52 ,p_attribute24 in varchar2 default null
53 ,p_attribute25 in varchar2 default null
54 ,p_attribute26 in varchar2 default null
55 ,p_attribute27 in varchar2 default null
56 ,p_attribute28 in varchar2 default null
57 ,p_attribute29 in varchar2 default null
58 ,p_attribute30 in varchar2 default null
59 ,p_per_information_category in varchar2 default null
60 ,p_per_information1 in varchar2 default null
61 ,p_per_information2 in varchar2 default null
62 ,p_per_information3 in varchar2 default null
63 ,p_per_information4 in varchar2 default null
64 ,p_per_information5 in varchar2 default null
65 ,p_per_information6 in varchar2 default null
66 ,p_per_information7 in varchar2 default null
67 ,p_per_information8 in varchar2 default null
68 ,p_per_information9 in varchar2 default null
69 ,p_per_information10 in varchar2 default null
70 ,p_per_information11 in varchar2 default null
71 ,p_per_information12 in varchar2 default null
72 ,p_per_information13 in varchar2 default null
73 ,p_per_information14 in varchar2 default null
74 ,p_per_information15 in varchar2 default null
75 ,p_per_information16 in varchar2 default null
76 ,p_per_information17 in varchar2 default null
77 ,p_per_information18 in varchar2 default null
78 ,p_per_information19 in varchar2 default null
79 ,p_per_information20 in varchar2 default null
80 ,p_per_information21 in varchar2 default null
81 ,p_per_information22 in varchar2 default null
82 ,p_per_information23 in varchar2 default null
83 ,p_per_information24 in varchar2 default null
84 ,p_per_information25 in varchar2 default null
85 ,p_per_information26 in varchar2 default null
86 ,p_per_information27 in varchar2 default null
87 ,p_per_information28 in varchar2 default null
88 ,p_per_information29 in varchar2 default null
89 ,p_per_information30 in varchar2 default null
90 ,p_effective_start_date out nocopy date
91 ,p_effective_end_date out nocopy date
92 ,p_object_version_number out nocopy number
93 ,p_return_status out nocopy varchar2
94 ) is
95 --
96 -- Variables for API Boolean parameters
97 l_validate boolean;
98 --
99 l_person_id number;
100 l_person_ovn number;
101 --
102 cursor csr_person_ovn(p_person_id number) is
103 select object_version_number
104 from per_all_people_f
105 where person_id = p_person_id;
106 --
107 -- Variables for IN/OUT parameters
108 --
109 -- Other variables
110 l_proc varchar2(72) := g_package ||'create_candidate_internal';
111 Begin
112 hr_utility.set_location(' Entering:' || l_proc,10);
113 --
114 -- Issue a savepoint
115 --
116 savepoint create_candidate_internal_swi;
117 --
118 -- Initialise Multiple Message Detection
119 --
120 hr_multi_message.enable_message_list;
121 --
122 -- Remember IN OUT parameter IN values
123 --
124 --
125 -- Convert constant values to their corresponding boolean value
126 --
127 l_validate :=
128 hr_api.constant_to_boolean
129 (p_constant_value => p_validate);
130 --
131 -- Register Person ID
132 --
133 per_per_ins.set_base_key_value(p_person_id => p_person_id);
134 --
135 -- Call API
136 --
137 irc_party_api.create_candidate_internal
138 (p_validate => l_validate
139 ,p_business_group_id => p_business_group_id
140 ,p_last_name => p_last_name
141 ,p_first_name => p_first_name
142 ,p_date_of_birth => p_date_of_birth
143 ,p_email_address => p_email_address
144 ,p_title => p_title
145 ,p_gender => p_gender
146 ,p_marital_status => p_marital_status
147 ,p_previous_last_name => p_previous_last_name
148 ,p_middle_name => p_middle_name
149 ,p_name_suffix => p_name_suffix
150 ,p_known_as => p_known_as
151 ,p_first_name_phonetic => p_first_name_phonetic
152 ,p_last_name_phonetic => p_last_name_phonetic
153 ,p_attribute_category => p_attribute_category
154 ,p_attribute1 => p_attribute1
155 ,p_attribute2 => p_attribute2
156 ,p_attribute3 => p_attribute3
157 ,p_attribute4 => p_attribute4
158 ,p_attribute5 => p_attribute5
159 ,p_attribute6 => p_attribute6
160 ,p_attribute7 => p_attribute7
161 ,p_attribute8 => p_attribute8
162 ,p_attribute9 => p_attribute9
163 ,p_attribute10 => p_attribute10
164 ,p_attribute11 => p_attribute11
165 ,p_attribute12 => p_attribute12
166 ,p_attribute13 => p_attribute13
167 ,p_attribute14 => p_attribute14
168 ,p_attribute15 => p_attribute15
169 ,p_attribute16 => p_attribute16
170 ,p_attribute17 => p_attribute17
171 ,p_attribute18 => p_attribute18
172 ,p_attribute19 => p_attribute19
173 ,p_attribute20 => p_attribute20
174 ,p_attribute21 => p_attribute21
175 ,p_attribute22 => p_attribute22
176 ,p_attribute23 => p_attribute23
177 ,p_attribute24 => p_attribute24
178 ,p_attribute25 => p_attribute25
179 ,p_attribute26 => p_attribute26
180 ,p_attribute27 => p_attribute27
181 ,p_attribute28 => p_attribute28
182 ,p_attribute29 => p_attribute29
183 ,p_attribute30 => p_attribute30
184 ,p_per_information_category => p_per_information_category
185 ,p_per_information1 => p_per_information1
186 ,p_per_information2 => p_per_information2
187 ,p_per_information3 => p_per_information3
188 ,p_per_information4 => p_per_information4
189 ,p_per_information5 => p_per_information5
190 ,p_per_information6 => p_per_information6
191 ,p_per_information7 => p_per_information7
192 ,p_per_information8 => p_per_information8
193 ,p_per_information9 => p_per_information9
194 ,p_per_information10 => p_per_information10
195 ,p_per_information11 => p_per_information11
196 ,p_per_information12 => p_per_information12
197 ,p_per_information13 => p_per_information13
198 ,p_per_information14 => p_per_information14
199 ,p_per_information15 => p_per_information15
200 ,p_per_information16 => p_per_information16
201 ,p_per_information17 => p_per_information17
202 ,p_per_information18 => p_per_information18
203 ,p_per_information19 => p_per_information19
204 ,p_per_information20 => p_per_information20
205 ,p_per_information21 => p_per_information21
206 ,p_per_information22 => p_per_information22
207 ,p_per_information23 => p_per_information23
208 ,p_per_information24 => p_per_information24
209 ,p_per_information25 => p_per_information25
210 ,p_per_information26 => p_per_information26
211 ,p_per_information27 => p_per_information27
212 ,p_per_information28 => p_per_information28
213 ,p_per_information29 => p_per_information29
214 ,p_per_information30 => p_per_information30
215 ,p_person_id => l_person_id
216 ,p_effective_start_date => p_effective_start_date
217 ,p_effective_end_date => p_effective_end_date
218 );
219 --
220 -- get object version number
221 --
222 open csr_person_ovn(p_person_id);
223 fetch csr_person_ovn into l_person_ovn;
224 close csr_person_ovn;
225 p_object_version_number := l_person_ovn;
226 --
227 -- Convert API warning boolean parameter values to specific
228 -- messages and add them to Multiple Message List
229 --
230 --
231 -- Convert API non-warning boolean parameter values
232 --
233 --
234 -- Derive the API return status value based on whether
235 -- messages of any type exist in the Multiple Message List.
236 -- Also disable Multiple Message Detection.
237 --
238 p_return_status := hr_multi_message.get_return_status_disable;
239 hr_utility.set_location(' Leaving:' || l_proc,20);
240 --
241 exception
242 when hr_multi_message.error_message_exist then
243 --
244 -- Catch the Multiple Message List exception which
245 -- indicates API processing has been aborted because
246 -- at least one message exists in the list.
247 --
248 rollback to create_candidate_internal_swi;
249 --
250 -- Reset IN OUT parameters and set OUT parameters
251 --
252 p_effective_start_date := null;
253 p_effective_end_date := null;
254 p_return_status := hr_multi_message.get_return_status_disable;
255 hr_utility.set_location(' Leaving:' || l_proc, 30);
256 when others then
257 --
258 -- When Multiple Message Detection is enabled catch
259 -- any Application specific or other unexpected
260 -- exceptions. Adding appropriate details to the
261 -- Multiple Message List. Otherwise re-raise the
262 -- error.
263 --
264 rollback to create_candidate_internal_swi;
265 if hr_multi_message.unexpected_error_add(l_proc) then
266 hr_utility.set_location(' Leaving:' || l_proc,40);
267 raise;
268 end if;
269 --
270 -- Reset IN OUT and set OUT parameters
271 --
272 p_effective_start_date := null;
273 p_effective_end_date := null;
274 p_return_status := hr_multi_message.get_return_status_disable;
275 hr_utility.set_location(' Leaving:' || l_proc,50);
276 end create_candidate_internal;
277 --
278 -- ----------------------------------------------------------------------------
279 -- |------------------------< create_registered_user >------------------------|
280 -- ----------------------------------------------------------------------------
281 PROCEDURE create_registered_user
282 (p_validate in number default hr_api.g_false_num
283 ,p_last_name in varchar2
284 ,p_first_name in varchar2 default null
285 ,p_date_of_birth in date default null
286 ,p_title in varchar2 default null
287 ,p_gender in varchar2 default null
288 ,p_marital_status in varchar2 default null
289 ,p_previous_last_name in varchar2 default null
290 ,p_middle_name in varchar2 default null
291 ,p_name_suffix in varchar2 default null
292 ,p_known_as in varchar2 default null
293 ,p_first_name_phonetic in varchar2 default null
294 ,p_last_name_phonetic in varchar2 default null
295 ,p_attribute_category in varchar2 default null
296 ,p_attribute1 in varchar2 default null
297 ,p_attribute2 in varchar2 default null
298 ,p_attribute3 in varchar2 default null
299 ,p_attribute4 in varchar2 default null
300 ,p_attribute5 in varchar2 default null
301 ,p_attribute6 in varchar2 default null
302 ,p_attribute7 in varchar2 default null
303 ,p_attribute8 in varchar2 default null
304 ,p_attribute9 in varchar2 default null
305 ,p_attribute10 in varchar2 default null
306 ,p_attribute11 in varchar2 default null
307 ,p_attribute12 in varchar2 default null
308 ,p_attribute13 in varchar2 default null
309 ,p_attribute14 in varchar2 default null
310 ,p_attribute15 in varchar2 default null
311 ,p_attribute16 in varchar2 default null
312 ,p_attribute17 in varchar2 default null
313 ,p_attribute18 in varchar2 default null
314 ,p_attribute19 in varchar2 default null
315 ,p_attribute20 in varchar2 default null
316 ,p_attribute21 in varchar2 default null
317 ,p_attribute22 in varchar2 default null
318 ,p_attribute23 in varchar2 default null
319 ,p_attribute24 in varchar2 default null
320 ,p_attribute25 in varchar2 default null
321 ,p_attribute26 in varchar2 default null
322 ,p_attribute27 in varchar2 default null
323 ,p_attribute28 in varchar2 default null
324 ,p_attribute29 in varchar2 default null
325 ,p_attribute30 in varchar2 default null
326 ,p_per_information_category in varchar2 default null
327 ,p_per_information1 in varchar2 default null
328 ,p_per_information2 in varchar2 default null
329 ,p_per_information3 in varchar2 default null
330 ,p_per_information4 in varchar2 default null
331 ,p_per_information5 in varchar2 default null
332 ,p_per_information6 in varchar2 default null
333 ,p_per_information7 in varchar2 default null
334 ,p_per_information8 in varchar2 default null
335 ,p_per_information9 in varchar2 default null
336 ,p_per_information10 in varchar2 default null
337 ,p_per_information11 in varchar2 default null
338 ,p_per_information12 in varchar2 default null
339 ,p_per_information13 in varchar2 default null
340 ,p_per_information14 in varchar2 default null
341 ,p_per_information15 in varchar2 default null
342 ,p_per_information16 in varchar2 default null
343 ,p_per_information17 in varchar2 default null
344 ,p_per_information18 in varchar2 default null
345 ,p_per_information19 in varchar2 default null
346 ,p_per_information20 in varchar2 default null
347 ,p_per_information21 in varchar2 default null
348 ,p_per_information22 in varchar2 default null
349 ,p_per_information23 in varchar2 default null
350 ,p_per_information24 in varchar2 default null
351 ,p_per_information25 in varchar2 default null
352 ,p_per_information26 in varchar2 default null
353 ,p_per_information27 in varchar2 default null
354 ,p_per_information28 in varchar2 default null
355 ,p_per_information29 in varchar2 default null
356 ,p_per_information30 in varchar2 default null
357 ,p_effective_start_date out nocopy date
358 ,p_effective_end_date out nocopy date
359 ,p_person_id out nocopy number
360 ,p_return_status out nocopy varchar2
361 ) is
362 --
363 -- Variables for API Boolean parameters
364 l_validate boolean;
365 --
366 -- Variables for IN/OUT parameters
367 --
368 -- Other variables
369 l_proc varchar2(72) := g_package ||'create_registered_user';
370 Begin
371 hr_utility.set_location(' Entering:' || l_proc,10);
372 --
373 -- Issue a savepoint
374 --
375 savepoint create_registered_user_swi;
376 --
377 -- Initialise Multiple Message Detection
378 --
379 hr_multi_message.enable_message_list;
380 --
381 -- Remember IN OUT parameter IN values
382 --
383 --
384 -- Convert constant values to their corresponding boolean value
385 --
386 l_validate :=
387 hr_api.constant_to_boolean
388 (p_constant_value => p_validate);
389 --
390 -- Register Surrogate ID or user key values
391 --
392 --
393 -- Call API
394 --
395 irc_party_api.create_registered_user
396 (p_validate => l_validate
397 ,p_last_name => p_last_name
398 ,p_first_name => p_first_name
399 ,p_date_of_birth => p_date_of_birth
400 ,p_title => p_title
401 ,p_gender => p_gender
402 ,p_marital_status => p_marital_status
403 ,p_previous_last_name => p_previous_last_name
404 ,p_middle_name => p_middle_name
405 ,p_name_suffix => p_name_suffix
406 ,p_known_as => p_known_as
407 ,p_first_name_phonetic => p_first_name_phonetic
408 ,p_last_name_phonetic => p_last_name_phonetic
409 ,p_attribute_category => p_attribute_category
410 ,p_attribute1 => p_attribute1
411 ,p_attribute2 => p_attribute2
412 ,p_attribute3 => p_attribute3
413 ,p_attribute4 => p_attribute4
414 ,p_attribute5 => p_attribute5
415 ,p_attribute6 => p_attribute6
416 ,p_attribute7 => p_attribute7
417 ,p_attribute8 => p_attribute8
418 ,p_attribute9 => p_attribute9
419 ,p_attribute10 => p_attribute10
420 ,p_attribute11 => p_attribute11
421 ,p_attribute12 => p_attribute12
422 ,p_attribute13 => p_attribute13
423 ,p_attribute14 => p_attribute14
424 ,p_attribute15 => p_attribute15
425 ,p_attribute16 => p_attribute16
426 ,p_attribute17 => p_attribute17
427 ,p_attribute18 => p_attribute18
428 ,p_attribute19 => p_attribute19
429 ,p_attribute20 => p_attribute20
430 ,p_attribute21 => p_attribute21
431 ,p_attribute22 => p_attribute22
432 ,p_attribute23 => p_attribute23
433 ,p_attribute24 => p_attribute24
434 ,p_attribute25 => p_attribute25
435 ,p_attribute26 => p_attribute26
436 ,p_attribute27 => p_attribute27
437 ,p_attribute28 => p_attribute28
438 ,p_attribute29 => p_attribute29
439 ,p_attribute30 => p_attribute30
440 ,p_per_information_category => p_per_information_category
441 ,p_per_information1 => p_per_information1
442 ,p_per_information2 => p_per_information2
443 ,p_per_information3 => p_per_information3
444 ,p_per_information4 => p_per_information4
445 ,p_per_information5 => p_per_information5
446 ,p_per_information6 => p_per_information6
447 ,p_per_information7 => p_per_information7
448 ,p_per_information8 => p_per_information8
449 ,p_per_information9 => p_per_information9
450 ,p_per_information10 => p_per_information10
451 ,p_per_information11 => p_per_information11
452 ,p_per_information12 => p_per_information12
453 ,p_per_information13 => p_per_information13
454 ,p_per_information14 => p_per_information14
455 ,p_per_information15 => p_per_information15
456 ,p_per_information16 => p_per_information16
457 ,p_per_information17 => p_per_information17
458 ,p_per_information18 => p_per_information18
459 ,p_per_information19 => p_per_information19
460 ,p_per_information20 => p_per_information20
461 ,p_per_information21 => p_per_information21
462 ,p_per_information22 => p_per_information22
463 ,p_per_information23 => p_per_information23
464 ,p_per_information24 => p_per_information24
465 ,p_per_information25 => p_per_information25
466 ,p_per_information26 => p_per_information26
467 ,p_per_information27 => p_per_information27
468 ,p_per_information28 => p_per_information28
469 ,p_per_information29 => p_per_information29
470 ,p_per_information30 => p_per_information30
471 ,p_person_id => p_person_id
472 ,p_effective_start_date => p_effective_start_date
473 ,p_effective_end_date => p_effective_end_date
474 );
475 --
476 -- Convert API warning boolean parameter values to specific
477 -- messages and add them to Multiple Message List
478 --
479 --
480 -- Convert API non-warning boolean parameter values
481 --
482 --
483 -- Derive the API return status value based on whether
484 -- messages of any type exist in the Multiple Message List.
485 -- Also disable Multiple Message Detection.
486 --
487 p_return_status := hr_multi_message.get_return_status_disable;
488 hr_utility.set_location(' Leaving:' || l_proc,20);
489 --
490 exception
491 when hr_multi_message.error_message_exist then
492 --
493 -- Catch the Multiple Message List exception which
494 -- indicates API processing has been aborted because
495 -- at least one message exists in the list.
496 --
497 rollback to create_registered_user_swi;
498 --
499 -- Reset IN OUT parameters and set OUT parameters
500 --
501 p_effective_start_date := null;
502 p_effective_end_date := null;
503 p_person_id := null;
504 p_return_status := hr_multi_message.get_return_status_disable;
505 hr_utility.set_location(' Leaving:' || l_proc, 30);
506 when others then
507 --
508 -- When Multiple Message Detection is enabled catch
509 -- any Application specific or other unexpected
510 -- exceptions. Adding appropriate details to the
511 -- Multiple Message List. Otherwise re-raise the
512 -- error.
513 --
514 rollback to create_registered_user_swi;
515 if hr_multi_message.unexpected_error_add(l_proc) then
516 hr_utility.set_location(' Leaving:' || l_proc,40);
517 raise;
518 end if;
519 --
520 -- Reset IN OUT and set OUT parameters
521 --
522 p_effective_start_date := null;
523 p_effective_end_date := null;
524 p_person_id := null;
525 p_return_status := hr_multi_message.get_return_status_disable;
526 hr_utility.set_location(' Leaving:' || l_proc,50);
527 end create_registered_user;
528 -- ----------------------------------------------------------------------------
529 -- |----------------------< registered_user_application >---------------------|
530 -- ----------------------------------------------------------------------------
531 PROCEDURE registered_user_application
532 (p_validate in number default hr_api.g_false_num
533 ,p_effective_date in date
534 ,p_recruitment_person_id in number
535 ,p_person_id in number
536 ,p_assignment_id in number
537 ,p_application_received_date in date default null
538 ,p_vacancy_id in number default null
539 ,p_posting_content_id in number default null
540 ,p_per_object_version_number out nocopy number
541 ,p_asg_object_version_number out nocopy number
542 ,p_recruitment_person_ovn out nocopy number
543 ,p_applicant_number out nocopy varchar2
544 ,p_return_status out nocopy varchar2
545 ) is
546 --
547 -- Variables for API Boolean parameters
548 l_validate boolean;
549 -- Added for turn off key flex field validation
550 --
551 -- Variables for IN/OUT parameters
552 --
553 -- Other variables
554 l_recruitment_person_ovn number;
555 l_proc varchar2(72) := g_package ||'registered_user_application';
556 --
557 cursor csr_person_ovn(p_person_id number
558 ,p_effective_date date) is
559 select object_version_number
560 from per_all_people_f
561 where person_id = p_person_id
562 and p_effective_date between effective_start_date and effective_end_date;
563 --
564 Begin
565 hr_utility.set_location(' Entering:' || l_proc,10);
566 --
567 -- Issue a savepoint
568 --
569 savepoint registered_user_application;
570 --
571 -- Initialise Multiple Message Detection
572 --
573 hr_multi_message.enable_message_list;
574 --
575 -- Remember IN OUT parameter IN values
576 --
577 --
578 -- Convert constant values to their corresponding boolean value
579 --
580 l_validate :=
581 hr_api.constant_to_boolean
582 (p_constant_value => p_validate);
583 --
584 -- Register Surrogate ID or user key values
585 --
586 --
587 -- Call API
588 --
589
590 irc_party_api.registered_user_application
591 (p_validate => l_validate
592 ,p_effective_date => p_effective_date
593 ,p_recruitment_person_id => p_recruitment_person_id
594 ,p_person_id => p_person_id
595 ,p_application_received_date => p_application_received_date
596 ,p_vacancy_id => p_vacancy_id
597 ,p_posting_content_id => p_posting_content_id
598 ,p_assignment_id => p_assignment_id
599 ,p_per_object_version_number => p_per_object_version_number
600 ,p_asg_object_version_number => p_asg_object_version_number
601 ,p_applicant_number => p_applicant_number
602 );
603 --
604 open csr_person_ovn(p_recruitment_person_id,p_effective_date);
605 fetch csr_person_ovn into l_recruitment_person_ovn;
606 close csr_person_ovn;
607 p_recruitment_person_ovn := l_recruitment_person_ovn;
608 --
609 -- Convert API warning boolean parameter values to specific
610 -- messages and add them to Multiple Message List
611 --
612 --
613 -- Convert API non-warning boolean parameter values
614 --
615 --
616 -- Derive the API return status value based on whether
617 -- messages of any type exist in the Multiple Message List.
618 -- Also disable Multiple Message Detection.
619 --
620 p_return_status := hr_multi_message.get_return_status_disable;
621 hr_utility.set_location(' Leaving:' || l_proc,20);
622 --
623 exception
624 when hr_multi_message.error_message_exist then
625 --
626 -- Catch the Multiple Message List exception which
627 -- indicates API processing has been aborted because
628 -- at least one message exists in the list.
629 --
630 rollback to registered_user_application;
631 --
632 -- Reset IN OUT parameters and set OUT parameters
633 --
634 p_per_object_version_number := null;
635 p_asg_object_version_number := null;
636 p_return_status := hr_multi_message.get_return_status_disable;
637 hr_utility.set_location(' Leaving:' || l_proc, 30);
638 when others then
639 --
640 -- When Multiple Message Detection is enabled catch
641 -- any Application specific or other unexpected
642 -- exceptions. Adding appropriate details to the
643 -- Multiple Message List. Otherwise re-raise the
644 -- error.
645 --
646 rollback to registered_user_application;
647 if hr_multi_message.unexpected_error_add(l_proc) then
648 hr_utility.set_location(' Leaving:' || l_proc,40);
649 raise;
650 end if;
651 --
652 -- Reset IN OUT and set OUT parameters
653 --
654 p_per_object_version_number := null;
655 p_asg_object_version_number := null;
656 p_return_status := hr_multi_message.get_return_status_disable;
657 hr_utility.set_location(' Leaving:' || l_proc,50);
658 end registered_user_application;
659 -- ----------------------------------------------------------------------------
660 -- |------------------------< update_registered_user >------------------------|
661 -- ----------------------------------------------------------------------------
662 PROCEDURE update_registered_user
663 (p_validate in number default hr_api.g_false_num
664 ,p_effective_date in date
665 ,p_person_id in number
666 ,p_first_name in varchar2 default hr_api.g_varchar2
667 ,p_last_name in varchar2 default hr_api.g_varchar2
668 ,p_date_of_birth in date default hr_api.g_date
669 ,p_title in varchar2 default hr_api.g_varchar2
670 ,p_gender in varchar2 default hr_api.g_varchar2
671 ,p_marital_status in varchar2 default hr_api.g_varchar2
672 ,p_previous_last_name in varchar2 default hr_api.g_varchar2
673 ,p_middle_name in varchar2 default hr_api.g_varchar2
674 ,p_name_suffix in varchar2 default hr_api.g_varchar2
675 ,p_known_as in varchar2 default hr_api.g_varchar2
676 ,p_first_name_phonetic in varchar2 default hr_api.g_varchar2
677 ,p_last_name_phonetic in varchar2 default hr_api.g_varchar2
678 ,p_attribute_category in varchar2 default hr_api.g_varchar2
679 ,p_attribute1 in varchar2 default hr_api.g_varchar2
680 ,p_attribute2 in varchar2 default hr_api.g_varchar2
681 ,p_attribute3 in varchar2 default hr_api.g_varchar2
682 ,p_attribute4 in varchar2 default hr_api.g_varchar2
683 ,p_attribute5 in varchar2 default hr_api.g_varchar2
684 ,p_attribute6 in varchar2 default hr_api.g_varchar2
685 ,p_attribute7 in varchar2 default hr_api.g_varchar2
686 ,p_attribute8 in varchar2 default hr_api.g_varchar2
687 ,p_attribute9 in varchar2 default hr_api.g_varchar2
688 ,p_attribute10 in varchar2 default hr_api.g_varchar2
689 ,p_attribute11 in varchar2 default hr_api.g_varchar2
690 ,p_attribute12 in varchar2 default hr_api.g_varchar2
691 ,p_attribute13 in varchar2 default hr_api.g_varchar2
692 ,p_attribute14 in varchar2 default hr_api.g_varchar2
693 ,p_attribute15 in varchar2 default hr_api.g_varchar2
694 ,p_attribute16 in varchar2 default hr_api.g_varchar2
695 ,p_attribute17 in varchar2 default hr_api.g_varchar2
696 ,p_attribute18 in varchar2 default hr_api.g_varchar2
697 ,p_attribute19 in varchar2 default hr_api.g_varchar2
698 ,p_attribute20 in varchar2 default hr_api.g_varchar2
699 ,p_attribute21 in varchar2 default hr_api.g_varchar2
700 ,p_attribute22 in varchar2 default hr_api.g_varchar2
701 ,p_attribute23 in varchar2 default hr_api.g_varchar2
702 ,p_attribute24 in varchar2 default hr_api.g_varchar2
703 ,p_attribute25 in varchar2 default hr_api.g_varchar2
704 ,p_attribute26 in varchar2 default hr_api.g_varchar2
705 ,p_attribute27 in varchar2 default hr_api.g_varchar2
706 ,p_attribute28 in varchar2 default hr_api.g_varchar2
707 ,p_attribute29 in varchar2 default hr_api.g_varchar2
708 ,p_attribute30 in varchar2 default hr_api.g_varchar2
709 ,p_per_information_category in varchar2 default hr_api.g_varchar2
710 ,p_per_information1 in varchar2 default hr_api.g_varchar2
711 ,p_per_information2 in varchar2 default hr_api.g_varchar2
712 ,p_per_information3 in varchar2 default hr_api.g_varchar2
713 ,p_per_information4 in varchar2 default hr_api.g_varchar2
714 ,p_per_information5 in varchar2 default hr_api.g_varchar2
715 ,p_per_information6 in varchar2 default hr_api.g_varchar2
716 ,p_per_information7 in varchar2 default hr_api.g_varchar2
717 ,p_per_information8 in varchar2 default hr_api.g_varchar2
718 ,p_per_information9 in varchar2 default hr_api.g_varchar2
719 ,p_per_information10 in varchar2 default hr_api.g_varchar2
720 ,p_per_information11 in varchar2 default hr_api.g_varchar2
721 ,p_per_information12 in varchar2 default hr_api.g_varchar2
722 ,p_per_information13 in varchar2 default hr_api.g_varchar2
723 ,p_per_information14 in varchar2 default hr_api.g_varchar2
724 ,p_per_information15 in varchar2 default hr_api.g_varchar2
725 ,p_per_information16 in varchar2 default hr_api.g_varchar2
726 ,p_per_information17 in varchar2 default hr_api.g_varchar2
727 ,p_per_information18 in varchar2 default hr_api.g_varchar2
728 ,p_per_information19 in varchar2 default hr_api.g_varchar2
729 ,p_per_information20 in varchar2 default hr_api.g_varchar2
730 ,p_per_information21 in varchar2 default hr_api.g_varchar2
731 ,p_per_information22 in varchar2 default hr_api.g_varchar2
732 ,p_per_information23 in varchar2 default hr_api.g_varchar2
733 ,p_per_information24 in varchar2 default hr_api.g_varchar2
734 ,p_per_information25 in varchar2 default hr_api.g_varchar2
735 ,p_per_information26 in varchar2 default hr_api.g_varchar2
736 ,p_per_information27 in varchar2 default hr_api.g_varchar2
737 ,p_per_information28 in varchar2 default hr_api.g_varchar2
738 ,p_per_information29 in varchar2 default hr_api.g_varchar2
739 ,p_per_information30 in varchar2 default hr_api.g_varchar2
740 ,p_person_ovn out nocopy number
741 ,p_return_status out nocopy varchar2
742 ) is
743 --
744 -- Variables for API Boolean parameters
745 l_validate boolean;
746 --
747 -- Variables for IN/OUT parameters
748 --
749 -- Other variables
750 l_proc varchar2(72) := g_package ||'update_registered_user';
751 --
752 Begin
753 hr_utility.set_location(' Entering:' || l_proc,10);
754 --
755 -- Issue a savepoint
756 --
757 savepoint update_registered_user_swi;
758 --
759 -- Initialise Multiple Message Detection
760 --
761 hr_multi_message.enable_message_list;
762 --
763 -- Remember IN OUT parameter IN values
764 --
765 --
766 -- Convert constant values to their corresponding boolean value
767 --
768 l_validate :=
769 hr_api.constant_to_boolean
770 (p_constant_value => p_validate);
771 --
772 -- Register Surrogate ID or user key values
773 --
774 --
775 -- Set the person_id global
776 --
777 irc_party_api.g_person_id := p_person_id;
778 --
779 --
780 -- Call API
781 --
782 irc_party_api.update_registered_user
783 (p_validate => l_validate
784 ,p_effective_date => p_effective_date
785 ,p_person_id => p_person_id
786 ,p_first_name => p_first_name
787 ,p_last_name => p_last_name
788 ,p_date_of_birth => p_date_of_birth
789 ,p_title => p_title
790 ,p_gender => p_gender
791 ,p_marital_status => p_marital_status
792 ,p_previous_last_name => p_previous_last_name
793 ,p_middle_name => p_middle_name
794 ,p_name_suffix => p_name_suffix
795 ,p_known_as => p_known_as
796 ,p_first_name_phonetic => p_first_name_phonetic
797 ,p_last_name_phonetic => p_last_name_phonetic
798 ,p_attribute_category => p_attribute_category
799 ,p_attribute1 => p_attribute1
800 ,p_attribute2 => p_attribute2
801 ,p_attribute3 => p_attribute3
802 ,p_attribute4 => p_attribute4
803 ,p_attribute5 => p_attribute5
804 ,p_attribute6 => p_attribute6
805 ,p_attribute7 => p_attribute7
806 ,p_attribute8 => p_attribute8
807 ,p_attribute9 => p_attribute9
808 ,p_attribute10 => p_attribute10
809 ,p_attribute11 => p_attribute11
810 ,p_attribute12 => p_attribute12
811 ,p_attribute13 => p_attribute13
812 ,p_attribute14 => p_attribute14
813 ,p_attribute15 => p_attribute15
814 ,p_attribute16 => p_attribute16
815 ,p_attribute17 => p_attribute17
816 ,p_attribute18 => p_attribute18
817 ,p_attribute19 => p_attribute19
818 ,p_attribute20 => p_attribute20
819 ,p_attribute21 => p_attribute21
820 ,p_attribute22 => p_attribute22
821 ,p_attribute23 => p_attribute23
822 ,p_attribute24 => p_attribute24
823 ,p_attribute25 => p_attribute25
824 ,p_attribute26 => p_attribute26
825 ,p_attribute27 => p_attribute27
826 ,p_attribute28 => p_attribute28
827 ,p_attribute29 => p_attribute29
828 ,p_attribute30 => p_attribute30
829 ,p_per_information_category => p_per_information_category
830 ,p_per_information1 => p_per_information1
831 ,p_per_information2 => p_per_information2
832 ,p_per_information3 => p_per_information3
833 ,p_per_information4 => p_per_information4
834 ,p_per_information5 => p_per_information5
835 ,p_per_information6 => p_per_information6
836 ,p_per_information7 => p_per_information7
837 ,p_per_information8 => p_per_information8
838 ,p_per_information9 => p_per_information9
839 ,p_per_information10 => p_per_information10
840 ,p_per_information11 => p_per_information11
841 ,p_per_information12 => p_per_information12
842 ,p_per_information13 => p_per_information13
843 ,p_per_information14 => p_per_information14
844 ,p_per_information15 => p_per_information15
845 ,p_per_information16 => p_per_information16
846 ,p_per_information17 => p_per_information17
847 ,p_per_information18 => p_per_information18
848 ,p_per_information19 => p_per_information19
849 ,p_per_information20 => p_per_information20
850 ,p_per_information21 => p_per_information21
851 ,p_per_information22 => p_per_information22
852 ,p_per_information23 => p_per_information23
853 ,p_per_information24 => p_per_information24
854 ,p_per_information25 => p_per_information25
855 ,p_per_information26 => p_per_information26
856 ,p_per_information27 => p_per_information27
857 ,p_per_information28 => p_per_information28
858 ,p_per_information29 => p_per_information29
859 ,p_per_information30 => p_per_information30
860 );
861 --
862 -- Set the person_ovn out parameter
863 --
864 p_person_ovn := irc_party_api.g_ovn_for_person;
865 --
866 -- Convert API warning boolean parameter values to specific
867 -- messages and add them to Multiple Message List
868 --
869 --
870 -- Convert API non-warning boolean parameter values
871 --
872 --
873 -- Derive the API return status value based on whether
874 -- messages of any type exist in the Multiple Message List.
875 -- Also disable Multiple Message Detection.
876 --
877 p_return_status := hr_multi_message.get_return_status_disable;
878 hr_utility.set_location(' Leaving:' || l_proc,20);
879 --
880 exception
881 when hr_multi_message.error_message_exist then
882 --
883 -- Catch the Multiple Message List exception which
884 -- indicates API processing has been aborted because
885 -- at least one message exists in the list.
886 --
887 rollback to update_registered_user_swi;
888 --
889 -- Reset IN OUT parameters and set OUT parameters
890 --
891 p_return_status := hr_multi_message.get_return_status_disable;
892 hr_utility.set_location(' Leaving:' || l_proc, 30);
893 when others then
894 --
895 -- When Multiple Message Detection is enabled catch
896 -- any Application specific or other unexpected
897 -- exceptions. Adding appropriate details to the
898 -- Multiple Message List. Otherwise re-raise the
899 -- error.
900 --
901 rollback to update_registered_user_swi;
902 if hr_multi_message.unexpected_error_add(l_proc) then
903 hr_utility.set_location(' Leaving:' || l_proc,40);
904 raise;
905 end if;
906 --
907 -- Reset IN OUT and set OUT parameters
908 --
909 p_return_status := hr_multi_message.get_return_status_disable;
910 hr_utility.set_location(' Leaving:' || l_proc,50);
911 end update_registered_user;
912 -- ----------------------------------------------------------------------------
913 -- |------------------------< create_user >-----------------------------------|
914 -- ----------------------------------------------------------------------------
915 PROCEDURE create_user
916 (p_user_name IN varchar2
917 ,p_password IN varchar2
918 ,p_start_date IN date
919 ,p_responsibility_id IN number
920 ,p_resp_appl_id IN number
921 ,p_security_group_id IN number
922 ,p_email IN varchar2 default null
923 ,p_language IN varchar2 default null
924 ,p_last_name in varchar2 default null
925 ,p_first_name in varchar2 default null
926 ,p_per_information_category in varchar2 default null
927 ,p_per_information1 in varchar2 default null
928 ,p_per_information2 in varchar2 default null
929 ,p_per_information3 in varchar2 default null
930 ,p_per_information4 in varchar2 default null
931 ,p_per_information5 in varchar2 default null
932 ,p_per_information6 in varchar2 default null
933 ,p_per_information7 in varchar2 default null
934 ,p_per_information8 in varchar2 default null
935 ,p_per_information9 in varchar2 default null
936 ,p_per_information10 in varchar2 default null
937 ,p_per_information11 in varchar2 default null
938 ,p_per_information12 in varchar2 default null
939 ,p_per_information13 in varchar2 default null
940 ,p_per_information14 in varchar2 default null
941 ,p_per_information15 in varchar2 default null
942 ,p_per_information16 in varchar2 default null
943 ,p_per_information17 in varchar2 default null
944 ,p_per_information18 in varchar2 default null
945 ,p_per_information19 in varchar2 default null
946 ,p_per_information20 in varchar2 default null
947 ,p_per_information21 in varchar2 default null
948 ,p_per_information22 in varchar2 default null
949 ,p_per_information23 in varchar2 default null
950 ,p_per_information24 in varchar2 default null
951 ,p_per_information25 in varchar2 default null
952 ,p_per_information26 in varchar2 default null
953 ,p_per_information27 in varchar2 default null
954 ,p_per_information28 in varchar2 default null
955 ,p_per_information29 in varchar2 default null
956 ,p_per_information30 in varchar2 default null
957 ,p_return_status OUT nocopy varchar2
958 ) is
959 --
960 -- Variables for API Boolean parameters
961 --
962 -- Variables for IN/OUT parameters
963 --
964 -- Other variables
965 l_proc varchar2(72) := g_package ||'create_user';
966 Begin
967 hr_utility.set_location(' Entering:' || l_proc,10);
968 --
969 -- Issue a savepoint
970 --
971 savepoint create_user_swi;
972 --
973 -- Initialise Multiple Message Detection
974 --
975 hr_multi_message.enable_message_list;
976 --
977 -- Remember IN OUT parameter IN values
978 --
979 --
980 -- Convert constant values to their corresponding boolean value
981 --
982 -- Register Surrogate ID or user key values
983 --
984 --
985 -- Call API
986 --
987 irc_party_api.create_user
988 (p_user_name => p_user_name
989 ,p_password => p_password
990 ,p_start_date => p_start_date
991 ,p_responsibility_id => p_responsibility_id
992 ,p_resp_appl_id => p_resp_appl_id
993 ,p_security_group_id => p_security_group_id
994 ,p_email => p_email
995 ,p_language => p_language
996 ,p_last_name => p_last_name
997 ,p_first_name => p_first_name
998 ,p_per_information_category => p_per_information_category
999 ,p_per_information1 => p_per_information1
1000 ,p_per_information2 => p_per_information2
1001 ,p_per_information3 => p_per_information3
1002 ,p_per_information4 => p_per_information4
1003 ,p_per_information5 => p_per_information5
1004 ,p_per_information6 => p_per_information6
1005 ,p_per_information7 => p_per_information7
1006 ,p_per_information8 => p_per_information8
1007 ,p_per_information9 => p_per_information9
1008 ,p_per_information10 => p_per_information10
1009 ,p_per_information11 => p_per_information11
1010 ,p_per_information12 => p_per_information12
1011 ,p_per_information13 => p_per_information13
1012 ,p_per_information14 => p_per_information14
1013 ,p_per_information15 => p_per_information15
1014 ,p_per_information16 => p_per_information16
1015 ,p_per_information17 => p_per_information17
1016 ,p_per_information18 => p_per_information18
1017 ,p_per_information19 => p_per_information19
1018 ,p_per_information20 => p_per_information20
1019 ,p_per_information21 => p_per_information21
1020 ,p_per_information22 => p_per_information22
1021 ,p_per_information23 => p_per_information23
1022 ,p_per_information24 => p_per_information24
1023 ,p_per_information25 => p_per_information25
1024 ,p_per_information26 => p_per_information26
1025 ,p_per_information27 => p_per_information27
1026 ,p_per_information28 => p_per_information28
1027 ,p_per_information29 => p_per_information29
1028 ,p_per_information30 => p_per_information30
1029 );
1030 --
1031 -- Convert API warning boolean parameter values to specific
1032 -- messages and add them to Multiple Message List
1033 --
1034 --
1035 -- Convert API non-warning boolean parameter values
1036 --
1037 --
1038 -- Derive the API return status value based on whether
1039 -- messages of any type exist in the Multiple Message List.
1040 -- Also disable Multiple Message Detection.
1041 --
1042 p_return_status := hr_multi_message.get_return_status_disable;
1043 hr_utility.set_location(' Leaving:' || l_proc,20);
1044 --
1045 exception
1046 when hr_multi_message.error_message_exist then
1047 --
1048 -- Catch the Multiple Message List exception which
1049 -- indicates API processing has been aborted because
1050 -- at least one message exists in the list.
1051 --
1052 rollback to create_user_swi;
1053 --
1054 -- Reset IN OUT parameters and set OUT parameters
1055 --
1056 p_return_status := hr_multi_message.get_return_status_disable;
1057 hr_utility.set_location(' Leaving:' || l_proc, 30);
1058 when others then
1059 --
1060 -- When Multiple Message Detection is enabled catch
1061 -- any Application specific or other unexpected
1062 -- exceptions. Adding appropriate details to the
1063 -- Multiple Message List. Otherwise re-raise the
1064 -- error.
1065 --
1066 rollback to create_user_swi;
1067 if hr_multi_message.unexpected_error_add(l_proc) then
1068 hr_utility.set_location(' Leaving:' || l_proc,40);
1069 raise;
1070 end if;
1071 --
1072 -- Reset IN OUT and set OUT parameters
1073 --
1074 p_return_status := hr_multi_message.get_return_status_disable;
1075 hr_utility.set_location(' Leaving:' || l_proc,50);
1076 end create_user;
1077 -- ---------------------------------------------------------------------------
1078 -- |------------------------< self_register_user >---------------------------|
1079 -- ---------------------------------------------------------------------------
1080 procedure self_register_user
1081 (p_validate IN number default hr_api.g_false_num
1082 ,p_current_email_address IN varchar2
1083 ,p_responsibility_id IN number
1084 ,p_resp_appl_id IN number
1085 ,p_security_group_id IN number
1086 ,p_first_name IN varchar2 default null
1087 ,p_last_name IN varchar2 default null
1088 ,p_middle_names IN varchar2 default null
1089 ,p_previous_last_name IN varchar2 default null
1090 ,p_employee_number IN varchar2 default null
1091 ,p_national_identifier IN varchar2 default null
1092 ,p_date_of_birth IN date default null
1093 ,p_email_address IN varchar2 default null
1094 ,p_home_phone_number IN varchar2 default null
1095 ,p_work_phone_number IN varchar2 default null
1096 ,p_address_line_1 IN varchar2 default null
1097 ,p_manager_last_name IN varchar2 default null
1098 ,p_allow_access IN varchar2 default 'N'
1099 ,p_language IN varchar2 default null
1100 ,p_user_name IN varchar2 default null
1101 ,p_return_status OUT nocopy varchar2
1102 ) is
1103 --
1104 -- Variables for API Boolean parameters
1105 --
1106 l_validate boolean;
1107 --
1108 -- Variables for IN/OUT parameters
1109 --
1110 -- Other variables
1111 l_proc varchar2(72) := g_package ||'self_register_user';
1112 Begin
1113 hr_utility.set_location(' Entering:' || l_proc,10);
1114 --
1115 -- Issue a savepoint
1116 --
1117 savepoint self_register_user_swi;
1118 --
1119 -- Initialise Multiple Message Detection
1120 --
1121 hr_multi_message.enable_message_list;
1122 --
1123 -- Remember IN OUT parameter IN values
1124 --
1125 --
1126 -- Convert constant values to their corresponding boolean value
1127 l_validate :=
1128 hr_api.constant_to_boolean
1129 (p_constant_value => p_validate);
1130 --
1131 -- Register Surrogate ID or user key values
1132 --
1133 --
1134 -- Call API
1135 --
1136 IRC_PARTY_API.SELF_REGISTER_USER
1137 (p_validate => l_validate
1138 ,p_current_email_address => p_current_email_address
1139 ,p_responsibility_id => p_responsibility_id
1140 ,p_resp_appl_id => p_resp_appl_id
1141 ,p_security_group_id => p_security_group_id
1142 ,p_first_name => p_first_name
1143 ,p_last_name => p_last_name
1144 ,p_middle_names => p_middle_names
1145 ,p_previous_last_name => p_previous_last_name
1146 ,p_employee_number => p_employee_number
1147 ,p_national_identifier => p_national_identifier
1148 ,p_date_of_birth => p_date_of_birth
1149 ,p_email_address => p_email_address
1150 ,p_home_phone_number => p_home_phone_number
1151 ,p_work_phone_number => p_work_phone_number
1152 ,p_address_line_1 => p_address_line_1
1153 ,p_manager_last_name => p_manager_last_name
1154 ,p_allow_access => p_allow_access
1155 ,p_language => p_language
1156 ,p_user_name => p_user_name
1157 );
1158 --
1159 -- Convert API warning boolean parameter values to specific
1160 -- messages and add them to Multiple Message List
1161 --
1162 --
1163 -- Convert API non-warning boolean parameter values
1164 --
1165 --
1166 -- Derive the API return status value based on whether
1167 -- messages of any type exist in the Multiple Message List.
1168 -- Also disable Multiple Message Detection.
1169 --
1170 p_return_status := hr_multi_message.get_return_status_disable;
1171 hr_utility.set_location(' Leaving:' || l_proc,20);
1172 --
1173 exception
1174 when hr_multi_message.error_message_exist then
1175 --
1176 -- Catch the Multiple Message List exception which
1177 -- indicates API processing has been aborted because
1178 -- at least one message exists in the list.
1179 --
1180 rollback to self_register_user_swi;
1181 --
1182 -- Reset IN OUT parameters and set OUT parameters
1183 --
1184 p_return_status := hr_multi_message.get_return_status_disable;
1185 hr_utility.set_location(' Leaving:' || l_proc, 30);
1186 when others then
1187 --
1188 -- When Multiple Message Detection is enabled catch
1189 -- any Application specific or other unexpected
1190 -- exceptions. Adding appropriate details to the
1191 -- Multiple Message List. Otherwise re-raise the
1192 -- error.
1193 --
1194 rollback to self_register_user_swi;
1195 if hr_multi_message.unexpected_error_add(l_proc) then
1196 hr_utility.set_location(' Leaving:' || l_proc,40);
1197 raise;
1198 end if;
1199 --
1200 -- Reset IN OUT and set OUT parameters
1201 --
1202 p_return_status := hr_multi_message.get_return_status_disable;
1203 hr_utility.set_location(' Leaving:' || l_proc,50);
1204 end self_register_user;
1205 -- -------------------------------------------------------------------
1206 -- |------------------------< get_first_page >-----------------------|
1207 -- -------------------------------------------------------------------
1208 procedure get_first_page(p_responsibility_key in varchar2
1209 ,p_oasf out nocopy varchar2
1210 ,p_oahp out nocopy varchar2) is
1211 --
1212 cursor get_function_id is
1213 select fe.function_id
1214 from fnd_menu_entries fe
1215 where fe.function_id is not null
1216 start with fe.menu_id=
1217 (select resp.menu_id from fnd_responsibility resp
1218 where resp.responsibility_key=p_responsibility_key)
1219 connect by prior fe.sub_menu_id= fe.menu_id
1220 and fe.grant_flag='Y'
1221 order by level,fe.entry_sequence;
1222 --
1223 cursor get_function_info(p_function_id number) is
1224 select fff.function_name
1225 from fnd_form_functions fff
1226 where fff.function_id=p_function_id;
1227 --
1228 cursor get_homepage is
1229 select fe.menu_id
1230 from fnd_menu_entries fe
1231 where 'HOMEPAGE'=(select fm.type from fnd_menus fm
1232 where fm.menu_id=fe.menu_id)
1233 start with fe.menu_id=
1234 (select resp.menu_id from fnd_responsibility resp
1235 where resp.responsibility_key=p_responsibility_key)
1236 connect by prior fe.sub_menu_id= fe.menu_id
1237 and fe.grant_flag='Y'
1238 order by level,fe.entry_sequence;
1239 --
1240 cursor get_menu_info(p_menu_id number) is
1241 select fm.menu_name
1242 from fnd_menus fm
1243 where fm.menu_id=p_menu_id;
1244 --
1245 l_function_id fnd_menu_entries.function_id%type;
1246 l_function_name fnd_form_functions.function_name%type;
1247 l_menu_id fnd_menu_entries.menu_id%type;
1248 l_menu_name fnd_menus.menu_name%type;
1249 --
1250 begin
1251 open get_function_id;
1252 fetch get_function_id into l_function_id;
1253 if get_function_id%notfound then
1254 close get_function_id;
1255 else
1256 close get_function_id;
1257 open get_function_info(l_function_id);
1258 fetch get_function_info into l_function_name;
1259 close get_function_info;
1260 end if;
1261 --
1262 open get_homepage;
1263 fetch get_homepage into l_menu_id;
1264 if get_homepage%notfound then
1265 close get_homepage;
1266 else
1267 close get_homepage;
1268 open get_menu_info(l_menu_id);
1269 fetch get_menu_info into l_menu_name;
1270 close get_menu_info;
1271 end if;
1272 p_oasf:=l_function_name;
1273 p_oahp:=l_menu_name;
1274 end get_first_page;
1275 -- ---------------------------------------------------------------------------
1276 -- |------------------------< create_partial_user >--------------------------|
1277 -- ---------------------------------------------------------------------------
1278 PROCEDURE create_partial_user
1279 (p_user_name IN varchar2
1280 ,p_start_date IN date default null
1281 ,p_email IN varchar2 default null
1282 ,p_language IN varchar2 default null
1283 ,p_last_name IN varchar2 default null
1284 ,p_first_name IN varchar2 default null
1285 ,p_reg_bg_id IN number
1286 ,p_responsibility_id IN number
1287 ,p_resp_appl_id IN number
1288 ,p_security_group_id IN number
1289 ,p_allow_access IN varchar2 default null
1290 ,p_return_status OUT nocopy varchar2
1291 ) is
1292 --
1293 -- Variables for API Boolean parameters
1294 --
1295 -- Variables for IN/OUT parameters
1296 --
1297 -- Other variables
1298 l_proc varchar2(72) := g_package ||'create_partial_user';
1299 Begin
1300 hr_utility.set_location(' Entering:' || l_proc,10);
1301 --
1302 -- Issue a savepoint
1303 --
1304 savepoint create_partial_user_swi;
1305 --
1306 -- Initialise Multiple Message Detection
1307 --
1308 hr_multi_message.enable_message_list;
1309 --
1310 -- Remember IN OUT parameter IN values
1311 --
1312 --
1313 -- Convert constant values to their corresponding boolean value
1314 --
1315 -- Register Surrogate ID or user key values
1316 --
1317 --
1318 -- Call API
1319 --
1320 irc_party_api.create_partial_user
1321 (p_user_name => p_user_name
1322 ,p_start_date => p_start_date
1323 ,p_email => p_email
1324 ,p_language => p_language
1325 ,p_last_name => p_last_name
1326 ,p_first_name => p_first_name
1327 ,p_reg_bg_id => p_reg_bg_id
1328 ,p_responsibility_id => p_responsibility_id
1329 ,p_resp_appl_id => p_resp_appl_id
1330 ,p_security_group_id => p_security_group_id
1331 ,p_allow_access => p_allow_access
1332 );
1333 --
1334 -- Convert API warning boolean parameter values to specific
1335 -- messages and add them to Multiple Message List
1336 --
1337 --
1338 -- Convert API non-warning boolean parameter values
1339 --
1340 --
1341 -- Derive the API return status value based on whether
1342 -- messages of any type exist in the Multiple Message List.
1343 -- Also disable Multiple Message Detection.
1344 --
1345 p_return_status := hr_multi_message.get_return_status_disable;
1346 hr_utility.set_location(' Leaving:' || l_proc,20);
1347 --
1348 exception
1349 when hr_multi_message.error_message_exist then
1350 --
1351 -- Catch the Multiple Message List exception which
1352 -- indicates API processing has been aborted because
1353 -- at least one message exists in the list.
1354 --
1355 rollback to create_partial_user_swi;
1356 --
1357 -- Reset IN OUT parameters and set OUT parameters
1358 --
1359 p_return_status := hr_multi_message.get_return_status_disable;
1360 hr_utility.set_location(' Leaving:' || l_proc, 30);
1361 when others then
1362 --
1363 -- When Multiple Message Detection is enabled catch
1364 -- any Application specific or other unexpected
1365 -- exceptions. Adding appropriate details to the
1366 -- Multiple Message List. Otherwise re-raise the
1367 -- error.
1368 --
1369 rollback to create_partial_user_swi;
1370 if hr_multi_message.unexpected_error_add(l_proc) then
1371 hr_utility.set_location(' Leaving:' || l_proc,40);
1372 raise;
1373 end if;
1374 --
1375 -- Reset IN OUT and set OUT parameters
1376 --
1377 p_return_status := hr_multi_message.get_return_status_disable;
1378 hr_utility.set_location(' Leaving:' || l_proc,50);
1379 end create_partial_user;
1380 --
1381 --
1382 -- ----------------------------------------------------------------------------
1383 -- |------------------------< create_user_byReferral >-----------------------------------|
1384 -- ----------------------------------------------------------------------------
1385 PROCEDURE create_user_byReferral
1386 (p_user_name IN varchar2
1387 ,p_password IN varchar2
1388 ,p_start_date IN date
1389 ,p_responsibility_id IN number
1390 ,p_resp_appl_id IN number
1391 ,p_security_group_id IN number
1392 ,p_email IN varchar2 default null
1393 ,p_language IN varchar2 default null
1394 ,p_last_name in varchar2 default null
1395 ,p_first_name in varchar2 default null
1396 ,p_per_information_category in varchar2 default null
1397 ,p_per_information1 in varchar2 default null
1398 ,p_per_information2 in varchar2 default null
1399 ,p_per_information3 in varchar2 default null
1400 ,p_per_information4 in varchar2 default null
1401 ,p_per_information5 in varchar2 default null
1402 ,p_per_information6 in varchar2 default null
1403 ,p_per_information7 in varchar2 default null
1404 ,p_per_information8 in varchar2 default null
1405 ,p_per_information9 in varchar2 default null
1406 ,p_per_information10 in varchar2 default null
1407 ,p_per_information11 in varchar2 default null
1408 ,p_per_information12 in varchar2 default null
1409 ,p_per_information13 in varchar2 default null
1410 ,p_per_information14 in varchar2 default null
1411 ,p_per_information15 in varchar2 default null
1412 ,p_per_information16 in varchar2 default null
1413 ,p_per_information17 in varchar2 default null
1414 ,p_per_information18 in varchar2 default null
1415 ,p_per_information19 in varchar2 default null
1416 ,p_per_information20 in varchar2 default null
1417 ,p_per_information21 in varchar2 default null
1418 ,p_per_information22 in varchar2 default null
1419 ,p_per_information23 in varchar2 default null
1420 ,p_per_information24 in varchar2 default null
1421 ,p_per_information25 in varchar2 default null
1422 ,p_per_information26 in varchar2 default null
1423 ,p_per_information27 in varchar2 default null
1424 ,p_per_information28 in varchar2 default null
1425 ,p_per_information29 in varchar2 default null
1426 ,p_per_information30 in varchar2 default null
1427 ,p_person_id in number default null
1428 ,p_return_status OUT nocopy varchar2
1429 ) is
1430 --
1431 -- Variables for API Boolean parameters
1432 --
1433 -- Variables for IN/OUT parameters
1434 --
1435 -- Other variables
1436 l_proc varchar2(72) := g_package ||'create_user_byReferral';
1437 Begin
1438 --hr_utility.trace_on(null,'VMUMMIDI');
1439 hr_utility.set_location(' Entering:' || l_proc,10);
1440 --
1441 -- Issue a savepoint
1442 --
1443 savepoint create_user_swi;
1444 --
1445 -- Initialise Multiple Message Detection
1446 --
1447 hr_multi_message.enable_message_list;
1448 --
1449 -- Remember IN OUT parameter IN values
1450 --
1451 --
1452 -- Convert constant values to their corresponding boolean value
1453 --
1454 -- Register Surrogate ID or user key values
1455 --
1456 --
1457 -- Call API
1458 --
1459 irc_party_api.create_user_byReferral
1460 (p_user_name => p_user_name
1461 ,p_password => p_password
1462 ,p_start_date => p_start_date
1463 ,p_responsibility_id => p_responsibility_id
1464 ,p_resp_appl_id => p_resp_appl_id
1465 ,p_security_group_id => p_security_group_id
1466 ,p_email => p_email
1467 ,p_language => p_language
1468 ,p_last_name => p_last_name
1469 ,p_first_name => p_first_name
1470 ,p_per_information_category => p_per_information_category
1471 ,p_per_information1 => p_per_information1
1472 ,p_per_information2 => p_per_information2
1473 ,p_per_information3 => p_per_information3
1474 ,p_per_information4 => p_per_information4
1475 ,p_per_information5 => p_per_information5
1476 ,p_per_information6 => p_per_information6
1477 ,p_per_information7 => p_per_information7
1478 ,p_per_information8 => p_per_information8
1479 ,p_per_information9 => p_per_information9
1480 ,p_per_information10 => p_per_information10
1481 ,p_per_information11 => p_per_information11
1482 ,p_per_information12 => p_per_information12
1483 ,p_per_information13 => p_per_information13
1484 ,p_per_information14 => p_per_information14
1485 ,p_per_information15 => p_per_information15
1486 ,p_per_information16 => p_per_information16
1487 ,p_per_information17 => p_per_information17
1488 ,p_per_information18 => p_per_information18
1489 ,p_per_information19 => p_per_information19
1490 ,p_per_information20 => p_per_information20
1491 ,p_per_information21 => p_per_information21
1492 ,p_per_information22 => p_per_information22
1493 ,p_per_information23 => p_per_information23
1494 ,p_per_information24 => p_per_information24
1495 ,p_per_information25 => p_per_information25
1496 ,p_per_information26 => p_per_information26
1497 ,p_per_information27 => p_per_information27
1498 ,p_per_information28 => p_per_information28
1499 ,p_per_information29 => p_per_information29
1500 ,p_per_information30 => p_per_information30
1501 ,p_person_id => p_person_id
1502 );
1503 --
1504 -- Convert API warning boolean parameter values to specific
1505 -- messages and add them to Multiple Message List
1506 --
1507 --
1508 -- Convert API non-warning boolean parameter values
1509 --
1510 --
1511 -- Derive the API return status value based on whether
1512 -- messages of any type exist in the Multiple Message List.
1513 -- Also disable Multiple Message Detection.
1514 --
1515 p_return_status := hr_multi_message.get_return_status_disable;
1516 hr_utility.set_location(' Leaving:' || l_proc,20);
1517 --
1518 exception
1519 when hr_multi_message.error_message_exist then
1520 --
1521 -- Catch the Multiple Message List exception which
1522 -- indicates API processing has been aborted because
1523 -- at least one message exists in the list.
1524 --
1525 rollback to create_user_swi;
1526 --
1527 -- Reset IN OUT parameters and set OUT parameters
1528 --
1529 p_return_status := hr_multi_message.get_return_status_disable;
1530 hr_utility.set_location(' Leaving:' || l_proc, 30);
1531 when others then
1532 --
1533 -- When Multiple Message Detection is enabled catch
1534 -- any Application specific or other unexpected
1535 -- exceptions. Adding appropriate details to the
1536 -- Multiple Message List. Otherwise re-raise the
1537 -- error.
1538 --
1539 rollback to create_user_swi;
1540 if hr_multi_message.unexpected_error_add(l_proc) then
1541 hr_utility.set_location(' Leaving:' || l_proc,40);
1542 raise;
1543 end if;
1544 --
1545 -- Reset IN OUT and set OUT parameters
1546 --
1547 p_return_status := hr_multi_message.get_return_status_disable;
1548 hr_utility.set_location(' Leaving:' || l_proc,50);
1549 end create_user_byReferral;
1550 --
1551 end irc_party_swi;