[Home] [Help]
PACKAGE BODY: APPS.HR_PREVIOUS_EMPLOYMENT_SWI
Source
1 Package Body hr_previous_employment_swi As
2 /* $Header: hrpemswi.pkb 115.6 2003/11/17 23:42:05 jvembuna ship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'hr_previous_employment_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-----------------------< create_previous_employer >-----------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_previous_employer
12 (p_effective_date in date
13 ,p_validate in number default hr_api.g_false_num
14 ,p_business_group_id in number
15 ,p_person_id in number
16 ,p_party_id in number
17 ,p_start_date in date default null
18 ,p_end_date in date default null
19 ,p_period_years in number default null
20 ,p_period_months in number default null
21 ,p_period_days in number default null
22 ,p_employer_name in varchar2 default null
23 ,p_employer_country in varchar2 default null
24 ,p_employer_address in varchar2 default null
25 ,p_employer_type in varchar2 default null
26 ,p_employer_subtype in varchar2 default null
27 ,p_description in varchar2 default null
28 ,p_all_assignments in varchar2 default null
29 ,p_pem_attribute_category in varchar2 default null
30 ,p_pem_attribute1 in varchar2 default null
31 ,p_pem_attribute2 in varchar2 default null
32 ,p_pem_attribute3 in varchar2 default null
33 ,p_pem_attribute4 in varchar2 default null
34 ,p_pem_attribute5 in varchar2 default null
35 ,p_pem_attribute6 in varchar2 default null
36 ,p_pem_attribute7 in varchar2 default null
37 ,p_pem_attribute8 in varchar2 default null
38 ,p_pem_attribute9 in varchar2 default null
39 ,p_pem_attribute10 in varchar2 default null
40 ,p_pem_attribute11 in varchar2 default null
41 ,p_pem_attribute12 in varchar2 default null
42 ,p_pem_attribute13 in varchar2 default null
43 ,p_pem_attribute14 in varchar2 default null
44 ,p_pem_attribute15 in varchar2 default null
45 ,p_pem_attribute16 in varchar2 default null
46 ,p_pem_attribute17 in varchar2 default null
47 ,p_pem_attribute18 in varchar2 default null
48 ,p_pem_attribute19 in varchar2 default null
49 ,p_pem_attribute20 in varchar2 default null
50 ,p_pem_attribute21 in varchar2 default null
51 ,p_pem_attribute22 in varchar2 default null
52 ,p_pem_attribute23 in varchar2 default null
53 ,p_pem_attribute24 in varchar2 default null
54 ,p_pem_attribute25 in varchar2 default null
55 ,p_pem_attribute26 in varchar2 default null
56 ,p_pem_attribute27 in varchar2 default null
57 ,p_pem_attribute28 in varchar2 default null
58 ,p_pem_attribute29 in varchar2 default null
59 ,p_pem_attribute30 in varchar2 default null
60 ,p_pem_information_category in varchar2 default null
61 ,p_pem_information1 in varchar2 default null
62 ,p_pem_information2 in varchar2 default null
63 ,p_pem_information3 in varchar2 default null
64 ,p_pem_information4 in varchar2 default null
65 ,p_pem_information5 in varchar2 default null
66 ,p_pem_information6 in varchar2 default null
67 ,p_pem_information7 in varchar2 default null
68 ,p_pem_information8 in varchar2 default null
69 ,p_pem_information9 in varchar2 default null
70 ,p_pem_information10 in varchar2 default null
71 ,p_pem_information11 in varchar2 default null
72 ,p_pem_information12 in varchar2 default null
73 ,p_pem_information13 in varchar2 default null
74 ,p_pem_information14 in varchar2 default null
75 ,p_pem_information15 in varchar2 default null
76 ,p_pem_information16 in varchar2 default null
77 ,p_pem_information17 in varchar2 default null
78 ,p_pem_information18 in varchar2 default null
79 ,p_pem_information19 in varchar2 default null
80 ,p_pem_information20 in varchar2 default null
81 ,p_pem_information21 in varchar2 default null
82 ,p_pem_information22 in varchar2 default null
83 ,p_pem_information23 in varchar2 default null
84 ,p_pem_information24 in varchar2 default null
85 ,p_pem_information25 in varchar2 default null
86 ,p_pem_information26 in varchar2 default null
87 ,p_pem_information27 in varchar2 default null
88 ,p_pem_information28 in varchar2 default null
89 ,p_pem_information29 in varchar2 default null
90 ,p_pem_information30 in varchar2 default null
91 ,p_previous_employer_id in number
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 -- Variables for IN/OUT parameters
100 --
101 -- Other variables
102 l_previous_employer_id number;
103 l_proc varchar2(72) := g_package ||'create_previous_employer';
104 l_party_id per_all_people_f.party_id%type := p_party_id;
105 --
106 cursor csr_get_party_id is
107 select party_id
108 from per_all_people_f per
109 where per.person_id = p_person_id
110 and trunc(p_effective_date)
111 between per.effective_start_date
112 and per.effective_end_date;
113 Begin
114 hr_utility.set_location(' Entering:' || l_proc,10);
115 --
116 -- Issue a savepoint
117 --
118 savepoint create_previous_employer_swi;
119 --
120 -- Initialise Multiple Message Detection
121 --
122 hr_multi_message.enable_message_list;
123 --
124 -- Remember IN OUT parameter IN values
125 --
126 --
127 -- Convert constant values to their corresponding boolean value
128 --
129 l_validate :=
130 hr_api.constant_to_boolean
131 (p_constant_value => p_validate);
132 --
133 -- Register Surrogate ID or user key values
134 --
135 per_pem_ins.set_base_key_value
136 (p_previous_employer_id => p_previous_employer_id
137 );
138 --
139 -- Workaround to set the party id if it is not passed in
140 -- till the bug 3261173 is fixed
141 --
142 if (l_party_id is null) then
143 open csr_get_party_id;
144 fetch csr_get_party_id into l_party_id;
145 close csr_get_party_id;
146 end if;
147 --
148 -- Call API
149 --
150 hr_previous_employment_api.create_previous_employer
151 (p_effective_date => p_effective_date
152 ,p_validate => l_validate
153 ,p_business_group_id => p_business_group_id
154 ,p_person_id => p_person_id
155 ,p_party_id => l_party_id
156 ,p_start_date => p_start_date
157 ,p_end_date => p_end_date
158 ,p_period_years => p_period_years
159 ,p_period_months => p_period_months
160 ,p_period_days => p_period_days
161 ,p_employer_name => p_employer_name
162 ,p_employer_country => p_employer_country
163 ,p_employer_address => p_employer_address
164 ,p_employer_type => p_employer_type
165 ,p_employer_subtype => p_employer_subtype
166 ,p_description => p_description
167 ,p_all_assignments => p_all_assignments
168 ,p_pem_attribute_category => p_pem_attribute_category
169 ,p_pem_attribute1 => p_pem_attribute1
170 ,p_pem_attribute2 => p_pem_attribute2
171 ,p_pem_attribute3 => p_pem_attribute3
172 ,p_pem_attribute4 => p_pem_attribute4
173 ,p_pem_attribute5 => p_pem_attribute5
174 ,p_pem_attribute6 => p_pem_attribute6
175 ,p_pem_attribute7 => p_pem_attribute7
176 ,p_pem_attribute8 => p_pem_attribute8
177 ,p_pem_attribute9 => p_pem_attribute9
178 ,p_pem_attribute10 => p_pem_attribute10
179 ,p_pem_attribute11 => p_pem_attribute11
180 ,p_pem_attribute12 => p_pem_attribute12
181 ,p_pem_attribute13 => p_pem_attribute13
182 ,p_pem_attribute14 => p_pem_attribute14
183 ,p_pem_attribute15 => p_pem_attribute15
184 ,p_pem_attribute16 => p_pem_attribute16
185 ,p_pem_attribute17 => p_pem_attribute17
186 ,p_pem_attribute18 => p_pem_attribute18
187 ,p_pem_attribute19 => p_pem_attribute19
188 ,p_pem_attribute20 => p_pem_attribute20
189 ,p_pem_attribute21 => p_pem_attribute21
190 ,p_pem_attribute22 => p_pem_attribute22
191 ,p_pem_attribute23 => p_pem_attribute23
192 ,p_pem_attribute24 => p_pem_attribute24
193 ,p_pem_attribute25 => p_pem_attribute25
194 ,p_pem_attribute26 => p_pem_attribute26
195 ,p_pem_attribute27 => p_pem_attribute27
196 ,p_pem_attribute28 => p_pem_attribute28
197 ,p_pem_attribute29 => p_pem_attribute29
198 ,p_pem_attribute30 => p_pem_attribute30
199 ,p_pem_information_category => p_pem_information_category
200 ,p_pem_information1 => p_pem_information1
201 ,p_pem_information2 => p_pem_information2
202 ,p_pem_information3 => p_pem_information3
203 ,p_pem_information4 => p_pem_information4
204 ,p_pem_information5 => p_pem_information5
205 ,p_pem_information6 => p_pem_information6
206 ,p_pem_information7 => p_pem_information7
207 ,p_pem_information8 => p_pem_information8
208 ,p_pem_information9 => p_pem_information9
209 ,p_pem_information10 => p_pem_information10
210 ,p_pem_information11 => p_pem_information11
211 ,p_pem_information12 => p_pem_information12
212 ,p_pem_information13 => p_pem_information13
213 ,p_pem_information14 => p_pem_information14
214 ,p_pem_information15 => p_pem_information15
215 ,p_pem_information16 => p_pem_information16
216 ,p_pem_information17 => p_pem_information17
217 ,p_pem_information18 => p_pem_information18
218 ,p_pem_information19 => p_pem_information19
219 ,p_pem_information20 => p_pem_information20
220 ,p_pem_information21 => p_pem_information21
221 ,p_pem_information22 => p_pem_information22
222 ,p_pem_information23 => p_pem_information23
223 ,p_pem_information24 => p_pem_information24
224 ,p_pem_information25 => p_pem_information25
225 ,p_pem_information26 => p_pem_information26
226 ,p_pem_information27 => p_pem_information27
227 ,p_pem_information28 => p_pem_information28
228 ,p_pem_information29 => p_pem_information29
229 ,p_pem_information30 => p_pem_information30
230 ,p_previous_employer_id => l_previous_employer_id
231 ,p_object_version_number => p_object_version_number
232 );
233 --
234 -- Convert API warning boolean parameter values to specific
235 -- messages and add them to Multiple Message List
236 --
237 --
238 -- Convert API non-warning boolean parameter values
239 --
240 --
241 -- Derive the API return status value based on whether
242 -- messages of any type exist in the Multiple Message List.
243 -- Also disable Multiple Message Detection.
244 --
245 p_return_status := hr_multi_message.get_return_status_disable;
246 hr_utility.set_location(' Leaving:' || l_proc,20);
247 --
248 exception
249 when hr_multi_message.error_message_exist then
250 --
251 -- Catch the Multiple Message List exception which
252 -- indicates API processing has been aborted because
253 -- at least one message exists in the list.
254 --
255 rollback to create_previous_employer_swi;
256 --
257 -- Reset IN OUT parameters and set OUT parameters
258 --
259 p_object_version_number := null;
260 p_return_status := hr_multi_message.get_return_status_disable;
261 hr_utility.set_location(' Leaving:' || l_proc, 30);
262 when others then
263 --
264 -- When Multiple Message Detection is enabled catch
265 -- any Application specific or other unexpected
266 -- exceptions. Adding appropriate details to the
267 -- Multiple Message List. Otherwise re-raise the
268 -- error.
269 --
270 rollback to create_previous_employer_swi;
271 if hr_multi_message.unexpected_error_add(l_proc) then
272 hr_utility.set_location(' Leaving:' || l_proc,40);
273 raise;
274 end if;
275 --
276 -- Reset IN OUT and set OUT parameters
277 --
278 p_object_version_number := null;
279 p_return_status := hr_multi_message.get_return_status_disable;
280 hr_utility.set_location(' Leaving:' || l_proc,50);
281 end create_previous_employer;
282 -- ----------------------------------------------------------------------------
283 -- |-----------------------< delete_previous_employer >-----------------------|
284 -- ----------------------------------------------------------------------------
285 PROCEDURE delete_previous_employer
286 (p_validate in number default hr_api.g_false_num
287 ,p_previous_employer_id in number
288 ,p_object_version_number in out nocopy number
289 ,p_return_status out nocopy varchar2
290 ) is
291 --
292 -- Variables for API Boolean parameters
293 l_validate boolean;
294 --
295 -- Variables for IN/OUT parameters
296 l_object_version_number number;
297 --
298 -- Other variables
299 l_proc varchar2(72) := g_package ||'delete_previous_employer';
300 Begin
301 hr_utility.set_location(' Entering:' || l_proc,10);
302 --
303 -- Issue a savepoint
304 --
305 savepoint delete_previous_employer_swi;
306 --
307 -- Initialise Multiple Message Detection
308 --
309 hr_multi_message.enable_message_list;
310 --
311 -- Remember IN OUT parameter IN values
312 --
313 l_object_version_number := p_object_version_number;
314 --
315 -- Convert constant values to their corresponding boolean value
316 --
317 l_validate :=
318 hr_api.constant_to_boolean
319 (p_constant_value => p_validate);
320 --
321 -- Register Surrogate ID or user key values
322 --
323 --
324 -- Call API
325 --
326 hr_previous_employment_api.delete_previous_employer
327 (p_validate => l_validate
328 ,p_previous_employer_id => p_previous_employer_id
329 ,p_object_version_number => l_object_version_number
330 );
331 --
332 -- Convert API warning boolean parameter values to specific
333 -- messages and add them to Multiple Message List
334 --
335 --
336 -- Convert API non-warning boolean parameter values
337 --
338 --
339 -- Derive the API return status value based on whether
340 -- messages of any type exist in the Multiple Message List.
341 -- Also disable Multiple Message Detection.
342 --
343 p_return_status := hr_multi_message.get_return_status_disable;
344 hr_utility.set_location(' Leaving:' || l_proc,20);
345 --
346 exception
347 when hr_multi_message.error_message_exist then
348 --
349 -- Catch the Multiple Message List exception which
350 -- indicates API processing has been aborted because
351 -- at least one message exists in the list.
352 --
353 rollback to delete_previous_employer_swi;
354 --
355 -- Reset IN OUT parameters and set OUT parameters
356 --
357 p_object_version_number := l_object_version_number;
358 p_return_status := hr_multi_message.get_return_status_disable;
359 hr_utility.set_location(' Leaving:' || l_proc, 30);
360 when others then
361 --
362 -- When Multiple Message Detection is enabled catch
363 -- any Application specific or other unexpected
364 -- exceptions. Adding appropriate details to the
365 -- Multiple Message List. Otherwise re-raise the
366 -- error.
367 --
368 rollback to delete_previous_employer_swi;
369 if hr_multi_message.unexpected_error_add(l_proc) then
370 hr_utility.set_location(' Leaving:' || l_proc,40);
371 raise;
372 end if;
373 --
374 -- Reset IN OUT and set OUT parameters
375 --
376 p_object_version_number := l_object_version_number;
377 p_return_status := hr_multi_message.get_return_status_disable;
378 hr_utility.set_location(' Leaving:' || l_proc,50);
379 end delete_previous_employer;
380 -- ----------------------------------------------------------------------------
381 -- |-----------------------< update_previous_employer >-----------------------|
382 -- ----------------------------------------------------------------------------
383 PROCEDURE update_previous_employer
384 (p_effective_date in date
385 ,p_validate in number default hr_api.g_false_num
386 ,p_previous_employer_id in number
387 ,p_start_date in date default hr_api.g_date
388 ,p_end_date in date default hr_api.g_date
389 ,p_period_years in number default hr_api.g_number
390 ,p_period_months in number default hr_api.g_number
391 ,p_period_days in number default hr_api.g_number
392 ,p_employer_name in varchar2 default hr_api.g_varchar2
393 ,p_employer_country in varchar2 default hr_api.g_varchar2
394 ,p_employer_address in varchar2 default hr_api.g_varchar2
395 ,p_employer_type in varchar2 default hr_api.g_varchar2
396 ,p_employer_subtype in varchar2 default hr_api.g_varchar2
397 ,p_description in varchar2 default hr_api.g_varchar2
398 ,p_all_assignments in varchar2 default hr_api.g_varchar2
399 ,p_pem_attribute_category in varchar2 default hr_api.g_varchar2
400 ,p_pem_attribute1 in varchar2 default hr_api.g_varchar2
401 ,p_pem_attribute2 in varchar2 default hr_api.g_varchar2
402 ,p_pem_attribute3 in varchar2 default hr_api.g_varchar2
403 ,p_pem_attribute4 in varchar2 default hr_api.g_varchar2
404 ,p_pem_attribute5 in varchar2 default hr_api.g_varchar2
405 ,p_pem_attribute6 in varchar2 default hr_api.g_varchar2
406 ,p_pem_attribute7 in varchar2 default hr_api.g_varchar2
407 ,p_pem_attribute8 in varchar2 default hr_api.g_varchar2
408 ,p_pem_attribute9 in varchar2 default hr_api.g_varchar2
409 ,p_pem_attribute10 in varchar2 default hr_api.g_varchar2
410 ,p_pem_attribute11 in varchar2 default hr_api.g_varchar2
411 ,p_pem_attribute12 in varchar2 default hr_api.g_varchar2
412 ,p_pem_attribute13 in varchar2 default hr_api.g_varchar2
413 ,p_pem_attribute14 in varchar2 default hr_api.g_varchar2
414 ,p_pem_attribute15 in varchar2 default hr_api.g_varchar2
415 ,p_pem_attribute16 in varchar2 default hr_api.g_varchar2
416 ,p_pem_attribute17 in varchar2 default hr_api.g_varchar2
417 ,p_pem_attribute18 in varchar2 default hr_api.g_varchar2
418 ,p_pem_attribute19 in varchar2 default hr_api.g_varchar2
419 ,p_pem_attribute20 in varchar2 default hr_api.g_varchar2
420 ,p_pem_attribute21 in varchar2 default hr_api.g_varchar2
421 ,p_pem_attribute22 in varchar2 default hr_api.g_varchar2
422 ,p_pem_attribute23 in varchar2 default hr_api.g_varchar2
423 ,p_pem_attribute24 in varchar2 default hr_api.g_varchar2
424 ,p_pem_attribute25 in varchar2 default hr_api.g_varchar2
425 ,p_pem_attribute26 in varchar2 default hr_api.g_varchar2
426 ,p_pem_attribute27 in varchar2 default hr_api.g_varchar2
427 ,p_pem_attribute28 in varchar2 default hr_api.g_varchar2
428 ,p_pem_attribute29 in varchar2 default hr_api.g_varchar2
429 ,p_pem_attribute30 in varchar2 default hr_api.g_varchar2
430 ,p_pem_information_category in varchar2 default hr_api.g_varchar2
431 ,p_pem_information1 in varchar2 default hr_api.g_varchar2
432 ,p_pem_information2 in varchar2 default hr_api.g_varchar2
433 ,p_pem_information3 in varchar2 default hr_api.g_varchar2
434 ,p_pem_information4 in varchar2 default hr_api.g_varchar2
435 ,p_pem_information5 in varchar2 default hr_api.g_varchar2
436 ,p_pem_information6 in varchar2 default hr_api.g_varchar2
437 ,p_pem_information7 in varchar2 default hr_api.g_varchar2
438 ,p_pem_information8 in varchar2 default hr_api.g_varchar2
439 ,p_pem_information9 in varchar2 default hr_api.g_varchar2
440 ,p_pem_information10 in varchar2 default hr_api.g_varchar2
441 ,p_pem_information11 in varchar2 default hr_api.g_varchar2
442 ,p_pem_information12 in varchar2 default hr_api.g_varchar2
443 ,p_pem_information13 in varchar2 default hr_api.g_varchar2
444 ,p_pem_information14 in varchar2 default hr_api.g_varchar2
445 ,p_pem_information15 in varchar2 default hr_api.g_varchar2
446 ,p_pem_information16 in varchar2 default hr_api.g_varchar2
447 ,p_pem_information17 in varchar2 default hr_api.g_varchar2
448 ,p_pem_information18 in varchar2 default hr_api.g_varchar2
449 ,p_pem_information19 in varchar2 default hr_api.g_varchar2
450 ,p_pem_information20 in varchar2 default hr_api.g_varchar2
451 ,p_pem_information21 in varchar2 default hr_api.g_varchar2
452 ,p_pem_information22 in varchar2 default hr_api.g_varchar2
453 ,p_pem_information23 in varchar2 default hr_api.g_varchar2
454 ,p_pem_information24 in varchar2 default hr_api.g_varchar2
455 ,p_pem_information25 in varchar2 default hr_api.g_varchar2
456 ,p_pem_information26 in varchar2 default hr_api.g_varchar2
457 ,p_pem_information27 in varchar2 default hr_api.g_varchar2
458 ,p_pem_information28 in varchar2 default hr_api.g_varchar2
459 ,p_pem_information29 in varchar2 default hr_api.g_varchar2
460 ,p_pem_information30 in varchar2 default hr_api.g_varchar2
461 ,p_object_version_number in out nocopy number
462 ,p_return_status out nocopy varchar2
463 ) is
464 --
465 -- Variables for API Boolean parameters
466 l_validate boolean;
467 --
468 -- Variables for IN/OUT parameters
469 l_object_version_number number;
470 --
471 -- Other variables
472 l_proc varchar2(72) := g_package ||'update_previous_employer';
473 Begin
474 hr_utility.set_location(' Entering:' || l_proc,10);
475 --
476 -- Issue a savepoint
477 --
478 savepoint update_previous_employer_swi;
479 --
480 -- Initialise Multiple Message Detection
481 --
482 hr_multi_message.enable_message_list;
483 --
484 -- Remember IN OUT parameter IN values
485 --
486 l_object_version_number := p_object_version_number;
487 --
488 -- Convert constant values to their corresponding boolean value
489 --
490 l_validate :=
491 hr_api.constant_to_boolean
492 (p_constant_value => p_validate);
493 --
494 -- Register Surrogate ID or user key values
495 --
496 --
497 -- Call API
498 --
499 hr_previous_employment_api.update_previous_employer
500 (p_effective_date => p_effective_date
501 ,p_validate => l_validate
502 ,p_previous_employer_id => p_previous_employer_id
503 ,p_start_date => p_start_date
504 ,p_end_date => p_end_date
505 ,p_period_years => p_period_years
506 ,p_period_months => p_period_months
507 ,p_period_days => p_period_days
508 ,p_employer_name => p_employer_name
509 ,p_employer_country => p_employer_country
510 ,p_employer_address => p_employer_address
511 ,p_employer_type => p_employer_type
512 ,p_employer_subtype => p_employer_subtype
513 ,p_description => p_description
514 ,p_all_assignments => p_all_assignments
515 ,p_pem_attribute_category => p_pem_attribute_category
516 ,p_pem_attribute1 => p_pem_attribute1
517 ,p_pem_attribute2 => p_pem_attribute2
518 ,p_pem_attribute3 => p_pem_attribute3
519 ,p_pem_attribute4 => p_pem_attribute4
520 ,p_pem_attribute5 => p_pem_attribute5
521 ,p_pem_attribute6 => p_pem_attribute6
522 ,p_pem_attribute7 => p_pem_attribute7
523 ,p_pem_attribute8 => p_pem_attribute8
524 ,p_pem_attribute9 => p_pem_attribute9
525 ,p_pem_attribute10 => p_pem_attribute10
526 ,p_pem_attribute11 => p_pem_attribute11
527 ,p_pem_attribute12 => p_pem_attribute12
528 ,p_pem_attribute13 => p_pem_attribute13
529 ,p_pem_attribute14 => p_pem_attribute14
530 ,p_pem_attribute15 => p_pem_attribute15
531 ,p_pem_attribute16 => p_pem_attribute16
532 ,p_pem_attribute17 => p_pem_attribute17
533 ,p_pem_attribute18 => p_pem_attribute18
534 ,p_pem_attribute19 => p_pem_attribute19
535 ,p_pem_attribute20 => p_pem_attribute20
536 ,p_pem_attribute21 => p_pem_attribute21
537 ,p_pem_attribute22 => p_pem_attribute22
538 ,p_pem_attribute23 => p_pem_attribute23
539 ,p_pem_attribute24 => p_pem_attribute24
540 ,p_pem_attribute25 => p_pem_attribute25
541 ,p_pem_attribute26 => p_pem_attribute26
542 ,p_pem_attribute27 => p_pem_attribute27
543 ,p_pem_attribute28 => p_pem_attribute28
544 ,p_pem_attribute29 => p_pem_attribute29
545 ,p_pem_attribute30 => p_pem_attribute30
546 ,p_pem_information_category => p_pem_information_category
547 ,p_pem_information1 => p_pem_information1
548 ,p_pem_information2 => p_pem_information2
549 ,p_pem_information3 => p_pem_information3
550 ,p_pem_information4 => p_pem_information4
551 ,p_pem_information5 => p_pem_information5
552 ,p_pem_information6 => p_pem_information6
553 ,p_pem_information7 => p_pem_information7
554 ,p_pem_information8 => p_pem_information8
555 ,p_pem_information9 => p_pem_information9
556 ,p_pem_information10 => p_pem_information10
557 ,p_pem_information11 => p_pem_information11
558 ,p_pem_information12 => p_pem_information12
559 ,p_pem_information13 => p_pem_information13
560 ,p_pem_information14 => p_pem_information14
561 ,p_pem_information15 => p_pem_information15
562 ,p_pem_information16 => p_pem_information16
563 ,p_pem_information17 => p_pem_information17
564 ,p_pem_information18 => p_pem_information18
565 ,p_pem_information19 => p_pem_information19
566 ,p_pem_information20 => p_pem_information20
567 ,p_pem_information21 => p_pem_information21
568 ,p_pem_information22 => p_pem_information22
569 ,p_pem_information23 => p_pem_information23
570 ,p_pem_information24 => p_pem_information24
571 ,p_pem_information25 => p_pem_information25
572 ,p_pem_information26 => p_pem_information26
573 ,p_pem_information27 => p_pem_information27
574 ,p_pem_information28 => p_pem_information28
575 ,p_pem_information29 => p_pem_information29
576 ,p_pem_information30 => p_pem_information30
577 ,p_object_version_number => p_object_version_number
578 );
579 --
580 -- Convert API warning boolean parameter values to specific
581 -- messages and add them to Multiple Message List
582 --
583 --
584 -- Convert API non-warning boolean parameter values
585 --
586 --
587 -- Derive the API return status value based on whether
588 -- messages of any type exist in the Multiple Message List.
589 -- Also disable Multiple Message Detection.
590 --
591 p_return_status := hr_multi_message.get_return_status_disable;
592 hr_utility.set_location(' Leaving:' || l_proc,20);
593 --
594 exception
595 when hr_multi_message.error_message_exist then
596 --
597 -- Catch the Multiple Message List exception which
598 -- indicates API processing has been aborted because
599 -- at least one message exists in the list.
600 --
601 rollback to update_previous_employer_swi;
602 --
603 -- Reset IN OUT parameters and set OUT parameters
604 --
605 p_object_version_number := l_object_version_number;
606 p_return_status := hr_multi_message.get_return_status_disable;
607 hr_utility.set_location(' Leaving:' || l_proc, 30);
608 when others then
609 --
610 -- When Multiple Message Detection is enabled catch
611 -- any Application specific or other unexpected
612 -- exceptions. Adding appropriate details to the
613 -- Multiple Message List. Otherwise re-raise the
614 -- error.
615 --
616 rollback to update_previous_employer_swi;
617 if hr_multi_message.unexpected_error_add(l_proc) then
618 hr_utility.set_location(' Leaving:' || l_proc,40);
619 raise;
620 end if;
621 --
622 -- Reset IN OUT and set OUT parameters
623 --
624 p_object_version_number := l_object_version_number;
625 p_return_status := hr_multi_message.get_return_status_disable;
626 hr_utility.set_location(' Leaving:' || l_proc,50);
627 end update_previous_employer;
628 -- ----------------------------------------------------------------------------
629 -- |--------------------------< create_previous_job >-------------------------|
630 -- ----------------------------------------------------------------------------
631 PROCEDURE create_previous_job
632 (p_effective_date in date
633 ,p_validate in number default hr_api.g_false_num
634 ,p_previous_employer_id in number
635 ,p_start_date in date default null
636 ,p_end_date in date default null
637 ,p_period_years in number default null
638 ,p_period_months in number default null
639 ,p_period_days in number default null
640 ,p_job_name in varchar2 default null
641 ,p_employment_category in varchar2 default null
642 ,p_description in varchar2 default null
643 ,p_all_assignments in varchar2 default null
644 ,p_pjo_attribute_category in varchar2 default null
645 ,p_pjo_attribute1 in varchar2 default null
646 ,p_pjo_attribute2 in varchar2 default null
647 ,p_pjo_attribute3 in varchar2 default null
648 ,p_pjo_attribute4 in varchar2 default null
649 ,p_pjo_attribute5 in varchar2 default null
650 ,p_pjo_attribute6 in varchar2 default null
651 ,p_pjo_attribute7 in varchar2 default null
652 ,p_pjo_attribute8 in varchar2 default null
653 ,p_pjo_attribute9 in varchar2 default null
654 ,p_pjo_attribute10 in varchar2 default null
655 ,p_pjo_attribute11 in varchar2 default null
656 ,p_pjo_attribute12 in varchar2 default null
657 ,p_pjo_attribute13 in varchar2 default null
658 ,p_pjo_attribute14 in varchar2 default null
659 ,p_pjo_attribute15 in varchar2 default null
660 ,p_pjo_attribute16 in varchar2 default null
661 ,p_pjo_attribute17 in varchar2 default null
662 ,p_pjo_attribute18 in varchar2 default null
663 ,p_pjo_attribute19 in varchar2 default null
664 ,p_pjo_attribute20 in varchar2 default null
665 ,p_pjo_attribute21 in varchar2 default null
666 ,p_pjo_attribute22 in varchar2 default null
667 ,p_pjo_attribute23 in varchar2 default null
668 ,p_pjo_attribute24 in varchar2 default null
669 ,p_pjo_attribute25 in varchar2 default null
670 ,p_pjo_attribute26 in varchar2 default null
671 ,p_pjo_attribute27 in varchar2 default null
672 ,p_pjo_attribute28 in varchar2 default null
673 ,p_pjo_attribute29 in varchar2 default null
674 ,p_pjo_attribute30 in varchar2 default null
675 ,p_pjo_information_category in varchar2 default null
676 ,p_pjo_information1 in varchar2 default null
677 ,p_pjo_information2 in varchar2 default null
678 ,p_pjo_information3 in varchar2 default null
679 ,p_pjo_information4 in varchar2 default null
680 ,p_pjo_information5 in varchar2 default null
681 ,p_pjo_information6 in varchar2 default null
682 ,p_pjo_information7 in varchar2 default null
683 ,p_pjo_information8 in varchar2 default null
684 ,p_pjo_information9 in varchar2 default null
685 ,p_pjo_information10 in varchar2 default null
686 ,p_pjo_information11 in varchar2 default null
687 ,p_pjo_information12 in varchar2 default null
688 ,p_pjo_information13 in varchar2 default null
689 ,p_pjo_information14 in varchar2 default null
690 ,p_pjo_information15 in varchar2 default null
691 ,p_pjo_information16 in varchar2 default null
692 ,p_pjo_information17 in varchar2 default null
693 ,p_pjo_information18 in varchar2 default null
694 ,p_pjo_information19 in varchar2 default null
695 ,p_pjo_information20 in varchar2 default null
696 ,p_pjo_information21 in varchar2 default null
697 ,p_pjo_information22 in varchar2 default null
698 ,p_pjo_information23 in varchar2 default null
699 ,p_pjo_information24 in varchar2 default null
700 ,p_pjo_information25 in varchar2 default null
701 ,p_pjo_information26 in varchar2 default null
702 ,p_pjo_information27 in varchar2 default null
703 ,p_pjo_information28 in varchar2 default null
704 ,p_pjo_information29 in varchar2 default null
705 ,p_pjo_information30 in varchar2 default null
706 ,p_previous_job_id in number
707 ,p_object_version_number out nocopy number
708 ,p_return_status out nocopy varchar2
709 ) is
710 --
711 -- Variables for API Boolean parameters
712 l_validate boolean;
713 --
714 -- Variables for IN/OUT parameters
715 --
716 -- Other variables
717 l_previous_job_id number;
718 l_proc varchar2(72) := g_package ||'create_previous_job';
719 Begin
720 hr_utility.set_location(' Entering:' || l_proc,10);
721 --
722 -- Issue a savepoint
723 --
724 savepoint create_previous_job_swi;
725 --
726 -- Initialise Multiple Message Detection
727 --
728 hr_multi_message.enable_message_list;
729 --
730 -- Remember IN OUT parameter IN values
731 --
732 --
733 -- Convert constant values to their corresponding boolean value
734 --
735 l_validate :=
736 hr_api.constant_to_boolean
737 (p_constant_value => p_validate);
738 --
739 -- Register Surrogate ID or user key values
740 --
741 per_pjo_ins.set_base_key_value
742 (p_previous_job_id => p_previous_job_id
743 );
744 --
745 -- Call API
746 --
747 hr_previous_employment_api.create_previous_job
748 (p_effective_date => p_effective_date
749 ,p_validate => l_validate
750 ,p_previous_employer_id => p_previous_employer_id
751 ,p_start_date => p_start_date
752 ,p_end_date => p_end_date
753 ,p_period_years => p_period_years
754 ,p_period_months => p_period_months
755 ,p_period_days => p_period_days
756 ,p_job_name => p_job_name
757 ,p_employment_category => p_employment_category
758 ,p_description => p_description
759 ,p_all_assignments => p_all_assignments
760 ,p_pjo_attribute_category => p_pjo_attribute_category
761 ,p_pjo_attribute1 => p_pjo_attribute1
762 ,p_pjo_attribute2 => p_pjo_attribute2
763 ,p_pjo_attribute3 => p_pjo_attribute3
764 ,p_pjo_attribute4 => p_pjo_attribute4
765 ,p_pjo_attribute5 => p_pjo_attribute5
766 ,p_pjo_attribute6 => p_pjo_attribute6
767 ,p_pjo_attribute7 => p_pjo_attribute7
768 ,p_pjo_attribute8 => p_pjo_attribute8
769 ,p_pjo_attribute9 => p_pjo_attribute9
770 ,p_pjo_attribute10 => p_pjo_attribute10
771 ,p_pjo_attribute11 => p_pjo_attribute11
772 ,p_pjo_attribute12 => p_pjo_attribute12
773 ,p_pjo_attribute13 => p_pjo_attribute13
774 ,p_pjo_attribute14 => p_pjo_attribute14
775 ,p_pjo_attribute15 => p_pjo_attribute15
776 ,p_pjo_attribute16 => p_pjo_attribute16
777 ,p_pjo_attribute17 => p_pjo_attribute17
778 ,p_pjo_attribute18 => p_pjo_attribute18
779 ,p_pjo_attribute19 => p_pjo_attribute19
780 ,p_pjo_attribute20 => p_pjo_attribute20
781 ,p_pjo_attribute21 => p_pjo_attribute21
782 ,p_pjo_attribute22 => p_pjo_attribute22
783 ,p_pjo_attribute23 => p_pjo_attribute23
784 ,p_pjo_attribute24 => p_pjo_attribute24
785 ,p_pjo_attribute25 => p_pjo_attribute25
786 ,p_pjo_attribute26 => p_pjo_attribute26
787 ,p_pjo_attribute27 => p_pjo_attribute27
788 ,p_pjo_attribute28 => p_pjo_attribute28
789 ,p_pjo_attribute29 => p_pjo_attribute29
790 ,p_pjo_attribute30 => p_pjo_attribute30
791 ,p_pjo_information_category => p_pjo_information_category
792 ,p_pjo_information1 => p_pjo_information1
793 ,p_pjo_information2 => p_pjo_information2
794 ,p_pjo_information3 => p_pjo_information3
795 ,p_pjo_information4 => p_pjo_information4
796 ,p_pjo_information5 => p_pjo_information5
797 ,p_pjo_information6 => p_pjo_information6
798 ,p_pjo_information7 => p_pjo_information7
799 ,p_pjo_information8 => p_pjo_information8
800 ,p_pjo_information9 => p_pjo_information9
801 ,p_pjo_information10 => p_pjo_information10
802 ,p_pjo_information11 => p_pjo_information11
803 ,p_pjo_information12 => p_pjo_information12
804 ,p_pjo_information13 => p_pjo_information13
805 ,p_pjo_information14 => p_pjo_information14
806 ,p_pjo_information15 => p_pjo_information15
807 ,p_pjo_information16 => p_pjo_information16
808 ,p_pjo_information17 => p_pjo_information17
809 ,p_pjo_information18 => p_pjo_information18
810 ,p_pjo_information19 => p_pjo_information19
811 ,p_pjo_information20 => p_pjo_information20
812 ,p_pjo_information21 => p_pjo_information21
813 ,p_pjo_information22 => p_pjo_information22
814 ,p_pjo_information23 => p_pjo_information23
815 ,p_pjo_information24 => p_pjo_information24
816 ,p_pjo_information25 => p_pjo_information25
817 ,p_pjo_information26 => p_pjo_information26
818 ,p_pjo_information27 => p_pjo_information27
819 ,p_pjo_information28 => p_pjo_information28
820 ,p_pjo_information29 => p_pjo_information29
821 ,p_pjo_information30 => p_pjo_information30
822 ,p_previous_job_id => l_previous_job_id
823 ,p_object_version_number => p_object_version_number
824 );
825 --
826 -- Convert API warning boolean parameter values to specific
827 -- messages and add them to Multiple Message List
828 --
829 --
830 -- Convert API non-warning boolean parameter values
831 --
832 --
833 -- Derive the API return status value based on whether
834 -- messages of any type exist in the Multiple Message List.
835 -- Also disable Multiple Message Detection.
836 --
837 p_return_status := hr_multi_message.get_return_status_disable;
838 hr_utility.set_location(' Leaving:' || l_proc,20);
839 --
840 exception
841 when hr_multi_message.error_message_exist then
842 --
843 -- Catch the Multiple Message List exception which
844 -- indicates API processing has been aborted because
845 -- at least one message exists in the list.
846 --
847 rollback to create_previous_job_swi;
848 --
849 -- Reset IN OUT parameters and set OUT parameters
850 --
851 p_object_version_number := null;
852 p_return_status := hr_multi_message.get_return_status_disable;
853 hr_utility.set_location(' Leaving:' || l_proc, 30);
854 when others then
855 --
856 -- When Multiple Message Detection is enabled catch
857 -- any Application specific or other unexpected
858 -- exceptions. Adding appropriate details to the
859 -- Multiple Message List. Otherwise re-raise the
860 -- error.
861 --
862 rollback to create_previous_job_swi;
863 if hr_multi_message.unexpected_error_add(l_proc) then
864 hr_utility.set_location(' Leaving:' || l_proc,40);
865 raise;
866 end if;
867 --
868 -- Reset IN OUT and set OUT parameters
869 --
870 p_object_version_number := null;
871 p_return_status := hr_multi_message.get_return_status_disable;
872 hr_utility.set_location(' Leaving:' || l_proc,50);
873 end create_previous_job;
874 -- ----------------------------------------------------------------------------
875 -- |--------------------------< delete_previous_job >-------------------------|
876 -- ----------------------------------------------------------------------------
877 PROCEDURE delete_previous_job
878 (p_validate in number default hr_api.g_false_num
879 ,p_previous_job_id in number
880 ,p_object_version_number in out nocopy number
881 ,p_return_status out nocopy varchar2
882 ) is
883 --
884 -- Variables for API Boolean parameters
885 l_validate boolean;
886 --
887 -- Variables for IN/OUT parameters
888 l_object_version_number number;
889 --
890 -- Other variables
891 l_proc varchar2(72) := g_package ||'delete_previous_job';
892 Begin
893 hr_utility.set_location(' Entering:' || l_proc,10);
894 --
895 -- Issue a savepoint
896 --
897 savepoint delete_previous_job_swi;
898 --
899 -- Initialise Multiple Message Detection
900 --
901 hr_multi_message.enable_message_list;
902 --
903 -- Remember IN OUT parameter IN values
904 --
905 l_object_version_number := p_object_version_number;
906 --
907 -- Convert constant values to their corresponding boolean value
908 --
909 l_validate :=
910 hr_api.constant_to_boolean
911 (p_constant_value => p_validate);
912 --
913 -- Register Surrogate ID or user key values
914 --
915 --
916 -- Call API
917 --
918 hr_previous_employment_api.delete_previous_job
919 (p_validate => l_validate
920 ,p_previous_job_id => p_previous_job_id
921 ,p_object_version_number => l_object_version_number
922 );
923 --
924 -- Convert API warning boolean parameter values to specific
925 -- messages and add them to Multiple Message List
926 --
927 --
928 -- Convert API non-warning boolean parameter values
929 --
930 --
931 -- Derive the API return status value based on whether
932 -- messages of any type exist in the Multiple Message List.
933 -- Also disable Multiple Message Detection.
934 --
935 p_return_status := hr_multi_message.get_return_status_disable;
936 hr_utility.set_location(' Leaving:' || l_proc,20);
937 --
938 exception
939 when hr_multi_message.error_message_exist then
940 --
941 -- Catch the Multiple Message List exception which
942 -- indicates API processing has been aborted because
943 -- at least one message exists in the list.
944 --
945 rollback to delete_previous_job_swi;
946 --
947 -- Reset IN OUT parameters and set OUT parameters
948 --
949 p_object_version_number := l_object_version_number;
950 p_return_status := hr_multi_message.get_return_status_disable;
951 hr_utility.set_location(' Leaving:' || l_proc, 30);
952 when others then
953 --
954 -- When Multiple Message Detection is enabled catch
955 -- any Application specific or other unexpected
956 -- exceptions. Adding appropriate details to the
957 -- Multiple Message List. Otherwise re-raise the
958 -- error.
959 --
960 rollback to delete_previous_job_swi;
961 if hr_multi_message.unexpected_error_add(l_proc) then
962 hr_utility.set_location(' Leaving:' || l_proc,40);
963 raise;
964 end if;
965 --
966 -- Reset IN OUT and set OUT parameters
967 --
968 p_object_version_number := l_object_version_number;
969 p_return_status := hr_multi_message.get_return_status_disable;
970 hr_utility.set_location(' Leaving:' || l_proc,50);
971 end delete_previous_job;
972 -- ----------------------------------------------------------------------------
973 -- |--------------------------< update_previous_job >-------------------------|
974 -- ----------------------------------------------------------------------------
975 PROCEDURE update_previous_job
976 (p_effective_date in date
977 ,p_validate in number default hr_api.g_false_num
978 ,p_previous_job_id in number
979 ,p_start_date in date default hr_api.g_date
980 ,p_end_date in date default hr_api.g_date
981 ,p_period_years in number default hr_api.g_number
982 ,p_period_months in number default hr_api.g_number
983 ,p_period_days in number default hr_api.g_number
984 ,p_job_name in varchar2 default hr_api.g_varchar2
985 ,p_employment_category in varchar2 default hr_api.g_varchar2
986 ,p_description in varchar2 default hr_api.g_varchar2
987 ,p_all_assignments in varchar2 default hr_api.g_varchar2
988 ,p_pjo_attribute_category in varchar2 default hr_api.g_varchar2
989 ,p_pjo_attribute1 in varchar2 default hr_api.g_varchar2
990 ,p_pjo_attribute2 in varchar2 default hr_api.g_varchar2
991 ,p_pjo_attribute3 in varchar2 default hr_api.g_varchar2
992 ,p_pjo_attribute4 in varchar2 default hr_api.g_varchar2
993 ,p_pjo_attribute5 in varchar2 default hr_api.g_varchar2
994 ,p_pjo_attribute6 in varchar2 default hr_api.g_varchar2
995 ,p_pjo_attribute7 in varchar2 default hr_api.g_varchar2
996 ,p_pjo_attribute8 in varchar2 default hr_api.g_varchar2
997 ,p_pjo_attribute9 in varchar2 default hr_api.g_varchar2
998 ,p_pjo_attribute10 in varchar2 default hr_api.g_varchar2
999 ,p_pjo_attribute11 in varchar2 default hr_api.g_varchar2
1000 ,p_pjo_attribute12 in varchar2 default hr_api.g_varchar2
1001 ,p_pjo_attribute13 in varchar2 default hr_api.g_varchar2
1002 ,p_pjo_attribute14 in varchar2 default hr_api.g_varchar2
1003 ,p_pjo_attribute15 in varchar2 default hr_api.g_varchar2
1004 ,p_pjo_attribute16 in varchar2 default hr_api.g_varchar2
1005 ,p_pjo_attribute17 in varchar2 default hr_api.g_varchar2
1006 ,p_pjo_attribute18 in varchar2 default hr_api.g_varchar2
1007 ,p_pjo_attribute19 in varchar2 default hr_api.g_varchar2
1008 ,p_pjo_attribute20 in varchar2 default hr_api.g_varchar2
1009 ,p_pjo_attribute21 in varchar2 default hr_api.g_varchar2
1010 ,p_pjo_attribute22 in varchar2 default hr_api.g_varchar2
1011 ,p_pjo_attribute23 in varchar2 default hr_api.g_varchar2
1012 ,p_pjo_attribute24 in varchar2 default hr_api.g_varchar2
1013 ,p_pjo_attribute25 in varchar2 default hr_api.g_varchar2
1014 ,p_pjo_attribute26 in varchar2 default hr_api.g_varchar2
1015 ,p_pjo_attribute27 in varchar2 default hr_api.g_varchar2
1016 ,p_pjo_attribute28 in varchar2 default hr_api.g_varchar2
1017 ,p_pjo_attribute29 in varchar2 default hr_api.g_varchar2
1018 ,p_pjo_attribute30 in varchar2 default hr_api.g_varchar2
1019 ,p_pjo_information_category in varchar2 default hr_api.g_varchar2
1020 ,p_pjo_information1 in varchar2 default hr_api.g_varchar2
1021 ,p_pjo_information2 in varchar2 default hr_api.g_varchar2
1022 ,p_pjo_information3 in varchar2 default hr_api.g_varchar2
1023 ,p_pjo_information4 in varchar2 default hr_api.g_varchar2
1024 ,p_pjo_information5 in varchar2 default hr_api.g_varchar2
1025 ,p_pjo_information6 in varchar2 default hr_api.g_varchar2
1026 ,p_pjo_information7 in varchar2 default hr_api.g_varchar2
1027 ,p_pjo_information8 in varchar2 default hr_api.g_varchar2
1028 ,p_pjo_information9 in varchar2 default hr_api.g_varchar2
1029 ,p_pjo_information10 in varchar2 default hr_api.g_varchar2
1030 ,p_pjo_information11 in varchar2 default hr_api.g_varchar2
1031 ,p_pjo_information12 in varchar2 default hr_api.g_varchar2
1032 ,p_pjo_information13 in varchar2 default hr_api.g_varchar2
1033 ,p_pjo_information14 in varchar2 default hr_api.g_varchar2
1034 ,p_pjo_information15 in varchar2 default hr_api.g_varchar2
1035 ,p_pjo_information16 in varchar2 default hr_api.g_varchar2
1036 ,p_pjo_information17 in varchar2 default hr_api.g_varchar2
1037 ,p_pjo_information18 in varchar2 default hr_api.g_varchar2
1038 ,p_pjo_information19 in varchar2 default hr_api.g_varchar2
1039 ,p_pjo_information20 in varchar2 default hr_api.g_varchar2
1040 ,p_pjo_information21 in varchar2 default hr_api.g_varchar2
1041 ,p_pjo_information22 in varchar2 default hr_api.g_varchar2
1042 ,p_pjo_information23 in varchar2 default hr_api.g_varchar2
1043 ,p_pjo_information24 in varchar2 default hr_api.g_varchar2
1044 ,p_pjo_information25 in varchar2 default hr_api.g_varchar2
1045 ,p_pjo_information26 in varchar2 default hr_api.g_varchar2
1046 ,p_pjo_information27 in varchar2 default hr_api.g_varchar2
1047 ,p_pjo_information28 in varchar2 default hr_api.g_varchar2
1048 ,p_pjo_information29 in varchar2 default hr_api.g_varchar2
1049 ,p_pjo_information30 in varchar2 default hr_api.g_varchar2
1050 ,p_object_version_number in out nocopy number
1051 ,p_return_status out nocopy varchar2
1052 ) is
1053 --
1054 -- Variables for API Boolean parameters
1055 l_validate boolean;
1056 --
1057 -- Variables for IN/OUT parameters
1058 l_object_version_number number;
1059 --
1060 -- Other variables
1061 l_proc varchar2(72) := g_package ||'update_previous_job';
1062 Begin
1063 hr_utility.set_location(' Entering:' || l_proc,10);
1064 --
1065 -- Issue a savepoint
1066 --
1067 savepoint update_previous_job_swi;
1068 --
1069 -- Initialise Multiple Message Detection
1070 --
1071 hr_multi_message.enable_message_list;
1072 --
1073 -- Remember IN OUT parameter IN values
1074 --
1075 l_object_version_number := p_object_version_number;
1076 --
1077 -- Convert constant values to their corresponding boolean value
1078 --
1079 l_validate :=
1080 hr_api.constant_to_boolean
1081 (p_constant_value => p_validate);
1082 --
1083 -- Register Surrogate ID or user key values
1084 --
1085 --
1086 -- Call API
1087 --
1088 hr_previous_employment_api.update_previous_job
1089 (p_effective_date => p_effective_date
1090 ,p_validate => l_validate
1091 ,p_previous_job_id => p_previous_job_id
1092 ,p_start_date => p_start_date
1093 ,p_end_date => p_end_date
1094 ,p_period_years => p_period_years
1095 ,p_period_months => p_period_months
1096 ,p_period_days => p_period_days
1097 ,p_job_name => p_job_name
1098 ,p_employment_category => p_employment_category
1099 ,p_description => p_description
1100 ,p_all_assignments => p_all_assignments
1101 ,p_pjo_attribute_category => p_pjo_attribute_category
1102 ,p_pjo_attribute1 => p_pjo_attribute1
1103 ,p_pjo_attribute2 => p_pjo_attribute2
1104 ,p_pjo_attribute3 => p_pjo_attribute3
1105 ,p_pjo_attribute4 => p_pjo_attribute4
1106 ,p_pjo_attribute5 => p_pjo_attribute5
1107 ,p_pjo_attribute6 => p_pjo_attribute6
1108 ,p_pjo_attribute7 => p_pjo_attribute7
1109 ,p_pjo_attribute8 => p_pjo_attribute8
1110 ,p_pjo_attribute9 => p_pjo_attribute9
1111 ,p_pjo_attribute10 => p_pjo_attribute10
1112 ,p_pjo_attribute11 => p_pjo_attribute11
1113 ,p_pjo_attribute12 => p_pjo_attribute12
1114 ,p_pjo_attribute13 => p_pjo_attribute13
1115 ,p_pjo_attribute14 => p_pjo_attribute14
1116 ,p_pjo_attribute15 => p_pjo_attribute15
1117 ,p_pjo_attribute16 => p_pjo_attribute16
1118 ,p_pjo_attribute17 => p_pjo_attribute17
1119 ,p_pjo_attribute18 => p_pjo_attribute18
1120 ,p_pjo_attribute19 => p_pjo_attribute19
1121 ,p_pjo_attribute20 => p_pjo_attribute20
1122 ,p_pjo_attribute21 => p_pjo_attribute21
1123 ,p_pjo_attribute22 => p_pjo_attribute22
1124 ,p_pjo_attribute23 => p_pjo_attribute23
1125 ,p_pjo_attribute24 => p_pjo_attribute24
1126 ,p_pjo_attribute25 => p_pjo_attribute25
1127 ,p_pjo_attribute26 => p_pjo_attribute26
1128 ,p_pjo_attribute27 => p_pjo_attribute27
1129 ,p_pjo_attribute28 => p_pjo_attribute28
1130 ,p_pjo_attribute29 => p_pjo_attribute29
1131 ,p_pjo_attribute30 => p_pjo_attribute30
1132 ,p_pjo_information_category => p_pjo_information_category
1133 ,p_pjo_information1 => p_pjo_information1
1134 ,p_pjo_information2 => p_pjo_information2
1135 ,p_pjo_information3 => p_pjo_information3
1136 ,p_pjo_information4 => p_pjo_information4
1137 ,p_pjo_information5 => p_pjo_information5
1138 ,p_pjo_information6 => p_pjo_information6
1139 ,p_pjo_information7 => p_pjo_information7
1140 ,p_pjo_information8 => p_pjo_information8
1141 ,p_pjo_information9 => p_pjo_information9
1142 ,p_pjo_information10 => p_pjo_information10
1143 ,p_pjo_information11 => p_pjo_information11
1144 ,p_pjo_information12 => p_pjo_information12
1145 ,p_pjo_information13 => p_pjo_information13
1146 ,p_pjo_information14 => p_pjo_information14
1147 ,p_pjo_information15 => p_pjo_information15
1148 ,p_pjo_information16 => p_pjo_information16
1149 ,p_pjo_information17 => p_pjo_information17
1150 ,p_pjo_information18 => p_pjo_information18
1151 ,p_pjo_information19 => p_pjo_information19
1152 ,p_pjo_information20 => p_pjo_information20
1153 ,p_pjo_information21 => p_pjo_information21
1154 ,p_pjo_information22 => p_pjo_information22
1155 ,p_pjo_information23 => p_pjo_information23
1156 ,p_pjo_information24 => p_pjo_information24
1157 ,p_pjo_information25 => p_pjo_information25
1158 ,p_pjo_information26 => p_pjo_information26
1159 ,p_pjo_information27 => p_pjo_information27
1160 ,p_pjo_information28 => p_pjo_information28
1161 ,p_pjo_information29 => p_pjo_information29
1162 ,p_pjo_information30 => p_pjo_information30
1163 ,p_object_version_number => p_object_version_number
1164 );
1165 --
1166 -- Convert API warning boolean parameter values to specific
1167 -- messages and add them to Multiple Message List
1168 --
1169 --
1170 -- Convert API non-warning boolean parameter values
1171 --
1172 --
1173 -- Derive the API return status value based on whether
1174 -- messages of any type exist in the Multiple Message List.
1175 -- Also disable Multiple Message Detection.
1176 --
1177 p_return_status := hr_multi_message.get_return_status_disable;
1178 hr_utility.set_location(' Leaving:' || l_proc,20);
1179 --
1180 exception
1181 when hr_multi_message.error_message_exist then
1182 --
1183 -- Catch the Multiple Message List exception which
1184 -- indicates API processing has been aborted because
1185 -- at least one message exists in the list.
1186 --
1187 rollback to update_previous_job_swi;
1188 --
1189 -- Reset IN OUT parameters and set OUT parameters
1190 --
1191 p_object_version_number := l_object_version_number;
1192 p_return_status := hr_multi_message.get_return_status_disable;
1193 hr_utility.set_location(' Leaving:' || l_proc, 30);
1194 when others then
1195 --
1196 -- When Multiple Message Detection is enabled catch
1197 -- any Application specific or other unexpected
1198 -- exceptions. Adding appropriate details to the
1199 -- Multiple Message List. Otherwise re-raise the
1200 -- error.
1201 --
1202 rollback to update_previous_job_swi;
1203 if hr_multi_message.unexpected_error_add(l_proc) then
1204 hr_utility.set_location(' Leaving:' || l_proc,40);
1205 raise;
1206 end if;
1207 --
1208 -- Reset IN OUT and set OUT parameters
1209 --
1210 p_object_version_number := l_object_version_number;
1211 p_return_status := hr_multi_message.get_return_status_disable;
1212 hr_utility.set_location(' Leaving:' || l_proc,50);
1213 end update_previous_job;
1214 end hr_previous_employment_swi;