[Home] [Help]
PACKAGE BODY: APPS.HR_GRADE_SWI
Source
1 Package Body hr_grade_swi As
2 /* $Header: hrgrdswi.pkb 115.1 2002/12/31 01:57:29 ndorai noship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'hr_grade_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-----------------------------< create_grade >-----------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_grade
12 (p_validate in number default hr_api.g_false_num
13 ,p_business_group_id in number
14 ,p_date_from in date
15 ,p_sequence in number
16 ,p_effective_date in date default null
17 ,p_date_to in date default null
18 ,p_request_id in number default null
19 ,p_program_application_id in number default null
20 ,p_program_id in number default null
21 ,p_program_update_date in date default null
22 ,p_last_update_date in date default null
23 ,p_last_updated_by in number default null
24 ,p_last_update_login in number default null
25 ,p_created_by in number default null
26 ,p_creation_date in date default null
27 ,p_attribute_category in varchar2 default null
28 ,p_attribute1 in varchar2 default null
29 ,p_attribute2 in varchar2 default null
30 ,p_attribute3 in varchar2 default null
31 ,p_attribute4 in varchar2 default null
32 ,p_attribute5 in varchar2 default null
33 ,p_attribute6 in varchar2 default null
34 ,p_attribute7 in varchar2 default null
35 ,p_attribute8 in varchar2 default null
36 ,p_attribute9 in varchar2 default null
37 ,p_attribute10 in varchar2 default null
38 ,p_attribute11 in varchar2 default null
39 ,p_attribute12 in varchar2 default null
40 ,p_attribute13 in varchar2 default null
41 ,p_attribute14 in varchar2 default null
42 ,p_attribute15 in varchar2 default null
43 ,p_attribute16 in varchar2 default null
44 ,p_attribute17 in varchar2 default null
45 ,p_attribute18 in varchar2 default null
46 ,p_attribute19 in varchar2 default null
47 ,p_attribute20 in varchar2 default null
48 ,p_information_category in varchar2 default null
49 ,p_information1 in varchar2 default null
50 ,p_information2 in varchar2 default null
51 ,p_information3 in varchar2 default null
52 ,p_information4 in varchar2 default null
53 ,p_information5 in varchar2 default null
54 ,p_information6 in varchar2 default null
55 ,p_information7 in varchar2 default null
56 ,p_information8 in varchar2 default null
57 ,p_information9 in varchar2 default null
58 ,p_information10 in varchar2 default null
59 ,p_information11 in varchar2 default null
60 ,p_information12 in varchar2 default null
61 ,p_information13 in varchar2 default null
62 ,p_information14 in varchar2 default null
63 ,p_information15 in varchar2 default null
64 ,p_information16 in varchar2 default null
65 ,p_information17 in varchar2 default null
66 ,p_information18 in varchar2 default null
67 ,p_information19 in varchar2 default null
68 ,p_information20 in varchar2 default null
69 ,p_segment1 in varchar2 default null
70 ,p_segment2 in varchar2 default null
71 ,p_segment3 in varchar2 default null
72 ,p_segment4 in varchar2 default null
73 ,p_segment5 in varchar2 default null
74 ,p_segment6 in varchar2 default null
75 ,p_segment7 in varchar2 default null
76 ,p_segment8 in varchar2 default null
77 ,p_segment9 in varchar2 default null
78 ,p_segment10 in varchar2 default null
79 ,p_segment11 in varchar2 default null
80 ,p_segment12 in varchar2 default null
81 ,p_segment13 in varchar2 default null
82 ,p_segment14 in varchar2 default null
83 ,p_segment15 in varchar2 default null
84 ,p_segment16 in varchar2 default null
85 ,p_segment17 in varchar2 default null
86 ,p_segment18 in varchar2 default null
87 ,p_segment19 in varchar2 default null
88 ,p_segment20 in varchar2 default null
89 ,p_segment21 in varchar2 default null
90 ,p_segment22 in varchar2 default null
91 ,p_segment23 in varchar2 default null
92 ,p_segment24 in varchar2 default null
93 ,p_segment25 in varchar2 default null
94 ,p_segment26 in varchar2 default null
95 ,p_segment27 in varchar2 default null
96 ,p_segment28 in varchar2 default null
97 ,p_segment29 in varchar2 default null
98 ,p_segment30 in varchar2 default null
99 ,p_concat_segments in varchar2 default null
100 ,p_grade_id out nocopy number
101 ,p_object_version_number out nocopy number
102 ,p_grade_definition_id in out nocopy number
103 ,p_name in out nocopy varchar2
104 ,p_return_status out nocopy varchar2
105 ) is
106 --
107 -- Variables for API Boolean parameters
108 l_validate boolean;
109 --
110 -- Variables for IN/OUT parameters
111 l_grade_definition_id number;
112 l_name per_grades.name%type;
113 --
114 -- Other variables
115 l_proc varchar2(72) := g_package ||'create_grade';
116 Begin
117 hr_utility.set_location(' Entering:' || l_proc,10);
118 --
119 -- Issue a savepoint
120 --
121 savepoint create_grade_swi;
122 --
123 -- Initialise Multiple Message Detection
124 --
125 hr_multi_message.enable_message_list;
126 --
127 -- Remember IN OUT parameter IN values
128 --
129 l_grade_definition_id := p_grade_definition_id;
130 l_name := p_name;
131 --
132 -- Convert constant values to their corresponding boolean value
133 --
134 l_validate :=
135 hr_api.constant_to_boolean
136 (p_constant_value => p_validate);
137 --
138 -- Register Surrogate ID or user key values
139 --
140 --
141 -- Call API
142 --
143 hr_grade_api.create_grade
144 (p_validate => l_validate
145 ,p_business_group_id => p_business_group_id
146 ,p_date_from => p_date_from
147 ,p_sequence => p_sequence
148 ,p_effective_date => p_effective_date
149 ,p_date_to => p_date_to
150 ,p_request_id => p_request_id
151 ,p_program_application_id => p_program_application_id
152 ,p_program_id => p_program_id
153 ,p_program_update_date => p_program_update_date
154 ,p_last_update_date => p_last_update_date
155 ,p_last_updated_by => p_last_updated_by
156 ,p_last_update_login => p_last_update_login
157 ,p_created_by => p_created_by
158 ,p_creation_date => p_creation_date
159 ,p_attribute_category => p_attribute_category
160 ,p_attribute1 => p_attribute1
161 ,p_attribute2 => p_attribute2
162 ,p_attribute3 => p_attribute3
163 ,p_attribute4 => p_attribute4
164 ,p_attribute5 => p_attribute5
165 ,p_attribute6 => p_attribute6
166 ,p_attribute7 => p_attribute7
167 ,p_attribute8 => p_attribute8
168 ,p_attribute9 => p_attribute9
169 ,p_attribute10 => p_attribute10
170 ,p_attribute11 => p_attribute11
171 ,p_attribute12 => p_attribute12
172 ,p_attribute13 => p_attribute13
173 ,p_attribute14 => p_attribute14
174 ,p_attribute15 => p_attribute15
175 ,p_attribute16 => p_attribute16
176 ,p_attribute17 => p_attribute17
177 ,p_attribute18 => p_attribute18
178 ,p_attribute19 => p_attribute19
179 ,p_attribute20 => p_attribute20
180 ,p_information_category => p_information_category
181 ,p_information1 => p_information1
182 ,p_information2 => p_information2
183 ,p_information3 => p_information3
184 ,p_information4 => p_information4
185 ,p_information5 => p_information5
186 ,p_information6 => p_information6
187 ,p_information7 => p_information7
188 ,p_information8 => p_information8
189 ,p_information9 => p_information9
190 ,p_information10 => p_information10
191 ,p_information11 => p_information11
192 ,p_information12 => p_information12
193 ,p_information13 => p_information13
194 ,p_information14 => p_information14
195 ,p_information15 => p_information15
196 ,p_information16 => p_information16
197 ,p_information17 => p_information17
198 ,p_information18 => p_information18
199 ,p_information19 => p_information19
200 ,p_information20 => p_information20
201 ,p_segment1 => p_segment1
202 ,p_segment2 => p_segment2
203 ,p_segment3 => p_segment3
204 ,p_segment4 => p_segment4
205 ,p_segment5 => p_segment5
206 ,p_segment6 => p_segment6
207 ,p_segment7 => p_segment7
208 ,p_segment8 => p_segment8
209 ,p_segment9 => p_segment9
210 ,p_segment10 => p_segment10
211 ,p_segment11 => p_segment11
212 ,p_segment12 => p_segment12
213 ,p_segment13 => p_segment13
214 ,p_segment14 => p_segment14
215 ,p_segment15 => p_segment15
216 ,p_segment16 => p_segment16
217 ,p_segment17 => p_segment17
218 ,p_segment18 => p_segment18
219 ,p_segment19 => p_segment19
220 ,p_segment20 => p_segment20
221 ,p_segment21 => p_segment21
222 ,p_segment22 => p_segment22
223 ,p_segment23 => p_segment23
224 ,p_segment24 => p_segment24
225 ,p_segment25 => p_segment25
226 ,p_segment26 => p_segment26
227 ,p_segment27 => p_segment27
228 ,p_segment28 => p_segment28
229 ,p_segment29 => p_segment29
230 ,p_segment30 => p_segment30
231 ,p_concat_segments => p_concat_segments
232 ,p_grade_id => p_grade_id
233 ,p_object_version_number => p_object_version_number
234 ,p_grade_definition_id => p_grade_definition_id
235 ,p_name => p_name
236 );
237 --
238 -- Convert API warning boolean parameter values to specific
239 -- messages and add them to Multiple Message List
240 --
241 --
242 -- Convert API non-warning boolean parameter values
243 --
244 --
245 -- Derive the API return status value based on whether
246 -- messages of any type exist in the Multiple Message List.
247 -- Also disable Multiple Message Detection.
248 --
249 p_return_status := hr_multi_message.get_return_status_disable;
250 hr_utility.set_location(' Leaving:' || l_proc,20);
251 --
252 exception
253 when hr_multi_message.error_message_exist then
254 --
255 -- Catch the Multiple Message List exception which
256 -- indicates API processing has been aborted because
257 -- at least one message exists in the list.
258 --
259 rollback to create_grade_swi;
260 --
261 -- Reset IN OUT parameters and set OUT parameters
262 --
263 p_grade_id := null;
264 p_object_version_number := null;
265 p_grade_definition_id := l_grade_definition_id;
266 p_name := l_name;
267 p_return_status := hr_multi_message.get_return_status_disable;
268 hr_utility.set_location(' Leaving:' || l_proc, 30);
269 when others then
270 --
271 -- When Multiple Message Detection is enabled catch
272 -- any Application specific or other unexpected
273 -- exceptions. Adding appropriate details to the
274 -- Multiple Message List. Otherwise re-raise the
275 -- error.
276 --
277 rollback to create_grade_swi;
278 if hr_multi_message.unexpected_error_add(l_proc) then
279 hr_utility.set_location(' Leaving:' || l_proc,40);
280 raise;
281 end if;
282 --
283 -- Reset IN OUT and set OUT parameters
284 --
285 p_grade_id := null;
286 p_object_version_number := null;
287 p_grade_definition_id := l_grade_definition_id;
288 p_name := l_name;
289 p_return_status := hr_multi_message.get_return_status_disable;
290 hr_utility.set_location(' Leaving:' || l_proc,50);
291 end create_grade;
292 -- ----------------------------------------------------------------------------
293 -- |-----------------------------< delete_grade >-----------------------------|
294 -- ----------------------------------------------------------------------------
295 PROCEDURE delete_grade
296 (p_validate in number default hr_api.g_false_num
297 ,p_grade_id in number
298 ,p_object_version_number in out nocopy number
299 ,p_return_status out nocopy varchar2
300 ) is
301 --
302 -- Variables for API Boolean parameters
303 l_validate boolean;
304 --
305 -- Variables for IN/OUT parameters
306 l_object_version_number number;
307 --
308 -- Other variables
309 l_proc varchar2(72) := g_package ||'delete_grade';
310 Begin
311 hr_utility.set_location(' Entering:' || l_proc,10);
312 --
313 -- Issue a savepoint
314 --
315 savepoint delete_grade_swi;
316 --
317 -- Initialise Multiple Message Detection
318 --
319 hr_multi_message.enable_message_list;
320 --
321 -- Remember IN OUT parameter IN values
322 --
323 l_object_version_number := p_object_version_number;
324 --
325 -- Convert constant values to their corresponding boolean value
326 --
327 l_validate :=
328 hr_api.constant_to_boolean
329 (p_constant_value => p_validate);
330 --
331 -- Register Surrogate ID or user key values
332 --
333 --
334 -- Call API
335 --
336 hr_grade_api.delete_grade
337 (p_validate => l_validate
338 ,p_grade_id => p_grade_id
339 ,p_object_version_number => p_object_version_number
340 );
341 --
342 -- Convert API warning boolean parameter values to specific
343 -- messages and add them to Multiple Message List
344 --
345 --
346 -- Convert API non-warning boolean parameter values
347 --
348 --
349 -- Derive the API return status value based on whether
350 -- messages of any type exist in the Multiple Message List.
351 -- Also disable Multiple Message Detection.
352 --
353 p_return_status := hr_multi_message.get_return_status_disable;
354 hr_utility.set_location(' Leaving:' || l_proc,20);
355 --
356 exception
357 when hr_multi_message.error_message_exist then
358 --
359 -- Catch the Multiple Message List exception which
360 -- indicates API processing has been aborted because
361 -- at least one message exists in the list.
362 --
363 rollback to delete_grade_swi;
364 --
365 -- Reset IN OUT parameters and set OUT parameters
366 --
367 p_object_version_number := l_object_version_number;
368 p_return_status := hr_multi_message.get_return_status_disable;
369 hr_utility.set_location(' Leaving:' || l_proc, 30);
370 when others then
371 --
372 -- When Multiple Message Detection is enabled catch
373 -- any Application specific or other unexpected
374 -- exceptions. Adding appropriate details to the
375 -- Multiple Message List. Otherwise re-raise the
376 -- error.
377 --
378 rollback to delete_grade_swi;
379 if hr_multi_message.unexpected_error_add(l_proc) then
380 hr_utility.set_location(' Leaving:' || l_proc,40);
381 raise;
382 end if;
383 --
384 -- Reset IN OUT and set OUT parameters
385 --
386 p_object_version_number := l_object_version_number;
387 p_return_status := hr_multi_message.get_return_status_disable;
388 hr_utility.set_location(' Leaving:' || l_proc,50);
389 end delete_grade;
390 -- ----------------------------------------------------------------------------
391 -- |-----------------------------< update_grade >-----------------------------|
392 -- ----------------------------------------------------------------------------
393 PROCEDURE update_grade
394 (p_validate in number default hr_api.g_false_num
395 ,p_grade_id in number
396 ,p_sequence in number default hr_api.g_number
397 ,p_date_from in date default hr_api.g_date
398 ,p_effective_date in date default hr_api.g_date
399 ,p_date_to in date default hr_api.g_date
400 ,p_request_id in number default hr_api.g_number
401 ,p_program_application_id in number default hr_api.g_number
402 ,p_program_id in number default hr_api.g_number
403 ,p_program_update_date in date default hr_api.g_date
404 ,p_attribute_category in varchar2 default hr_api.g_varchar2
405 ,p_attribute1 in varchar2 default hr_api.g_varchar2
406 ,p_attribute2 in varchar2 default hr_api.g_varchar2
407 ,p_attribute3 in varchar2 default hr_api.g_varchar2
408 ,p_attribute4 in varchar2 default hr_api.g_varchar2
409 ,p_attribute5 in varchar2 default hr_api.g_varchar2
410 ,p_attribute6 in varchar2 default hr_api.g_varchar2
411 ,p_attribute7 in varchar2 default hr_api.g_varchar2
412 ,p_attribute8 in varchar2 default hr_api.g_varchar2
413 ,p_attribute9 in varchar2 default hr_api.g_varchar2
414 ,p_attribute10 in varchar2 default hr_api.g_varchar2
415 ,p_attribute11 in varchar2 default hr_api.g_varchar2
416 ,p_attribute12 in varchar2 default hr_api.g_varchar2
417 ,p_attribute13 in varchar2 default hr_api.g_varchar2
418 ,p_attribute14 in varchar2 default hr_api.g_varchar2
419 ,p_attribute15 in varchar2 default hr_api.g_varchar2
420 ,p_attribute16 in varchar2 default hr_api.g_varchar2
421 ,p_attribute17 in varchar2 default hr_api.g_varchar2
422 ,p_attribute18 in varchar2 default hr_api.g_varchar2
423 ,p_attribute19 in varchar2 default hr_api.g_varchar2
424 ,p_attribute20 in varchar2 default hr_api.g_varchar2
425 ,p_information_category in varchar2 default hr_api.g_varchar2
426 ,p_information1 in varchar2 default hr_api.g_varchar2
427 ,p_information2 in varchar2 default hr_api.g_varchar2
428 ,p_information3 in varchar2 default hr_api.g_varchar2
429 ,p_information4 in varchar2 default hr_api.g_varchar2
430 ,p_information5 in varchar2 default hr_api.g_varchar2
431 ,p_information6 in varchar2 default hr_api.g_varchar2
432 ,p_information7 in varchar2 default hr_api.g_varchar2
433 ,p_information8 in varchar2 default hr_api.g_varchar2
434 ,p_information9 in varchar2 default hr_api.g_varchar2
435 ,p_information10 in varchar2 default hr_api.g_varchar2
436 ,p_information11 in varchar2 default hr_api.g_varchar2
437 ,p_information12 in varchar2 default hr_api.g_varchar2
438 ,p_information13 in varchar2 default hr_api.g_varchar2
439 ,p_information14 in varchar2 default hr_api.g_varchar2
440 ,p_information15 in varchar2 default hr_api.g_varchar2
441 ,p_information16 in varchar2 default hr_api.g_varchar2
442 ,p_information17 in varchar2 default hr_api.g_varchar2
443 ,p_information18 in varchar2 default hr_api.g_varchar2
444 ,p_information19 in varchar2 default hr_api.g_varchar2
445 ,p_information20 in varchar2 default hr_api.g_varchar2
446 ,p_last_update_date in date default hr_api.g_date
447 ,p_last_updated_by in number default hr_api.g_number
448 ,p_last_update_login in number default hr_api.g_number
449 ,p_created_by in number default hr_api.g_number
450 ,p_creation_date in date default hr_api.g_date
451 ,p_segment1 in varchar2 default hr_api.g_varchar2
452 ,p_segment2 in varchar2 default hr_api.g_varchar2
453 ,p_segment3 in varchar2 default hr_api.g_varchar2
454 ,p_segment4 in varchar2 default hr_api.g_varchar2
455 ,p_segment5 in varchar2 default hr_api.g_varchar2
456 ,p_segment6 in varchar2 default hr_api.g_varchar2
457 ,p_segment7 in varchar2 default hr_api.g_varchar2
458 ,p_segment8 in varchar2 default hr_api.g_varchar2
459 ,p_segment9 in varchar2 default hr_api.g_varchar2
460 ,p_segment10 in varchar2 default hr_api.g_varchar2
461 ,p_segment11 in varchar2 default hr_api.g_varchar2
462 ,p_segment12 in varchar2 default hr_api.g_varchar2
463 ,p_segment13 in varchar2 default hr_api.g_varchar2
464 ,p_segment14 in varchar2 default hr_api.g_varchar2
465 ,p_segment15 in varchar2 default hr_api.g_varchar2
466 ,p_segment16 in varchar2 default hr_api.g_varchar2
467 ,p_segment17 in varchar2 default hr_api.g_varchar2
468 ,p_segment18 in varchar2 default hr_api.g_varchar2
469 ,p_segment19 in varchar2 default hr_api.g_varchar2
470 ,p_segment20 in varchar2 default hr_api.g_varchar2
471 ,p_segment21 in varchar2 default hr_api.g_varchar2
472 ,p_segment22 in varchar2 default hr_api.g_varchar2
473 ,p_segment23 in varchar2 default hr_api.g_varchar2
474 ,p_segment24 in varchar2 default hr_api.g_varchar2
475 ,p_segment25 in varchar2 default hr_api.g_varchar2
476 ,p_segment26 in varchar2 default hr_api.g_varchar2
477 ,p_segment27 in varchar2 default hr_api.g_varchar2
478 ,p_segment28 in varchar2 default hr_api.g_varchar2
479 ,p_segment29 in varchar2 default hr_api.g_varchar2
480 ,p_segment30 in varchar2 default hr_api.g_varchar2
481 ,p_concat_segments in out nocopy varchar2
482 ,p_name in out nocopy varchar2
483 ,p_object_version_number in out nocopy number
484 ,p_grade_definition_id in out nocopy number
485 ,p_return_status out nocopy varchar2
486 ) is
487 --
488 -- Variables for API Boolean parameters
489 l_validate boolean;
490 --
491 -- Variables for IN/OUT parameters
492 l_concat_segments varchar2(3000);
493 l_name per_grades.name%type;
494 l_object_version_number number;
495 l_grade_definition_id number;
496 --
497 -- Other variables
498 l_proc varchar2(72) := g_package ||'update_grade';
499 Begin
500 hr_utility.set_location(' Entering:' || l_proc,10);
501 --
502 -- Issue a savepoint
503 --
504 savepoint update_grade_swi;
505 --
506 -- Initialise Multiple Message Detection
507 --
508 hr_multi_message.enable_message_list;
509 --
510 -- Remember IN OUT parameter IN values
511 --
512 l_concat_segments := p_concat_segments;
513 l_name := p_name;
514 l_object_version_number := p_object_version_number;
515 l_grade_definition_id := p_grade_definition_id;
516 --
517 -- Convert constant values to their corresponding boolean value
518 --
519 l_validate :=
520 hr_api.constant_to_boolean
521 (p_constant_value => p_validate);
522 --
523 -- Register Surrogate ID or user key values
524 --
525 --
526 -- Call API
527 --
528 hr_grade_api.update_grade
529 (p_validate => l_validate
530 ,p_grade_id => p_grade_id
531 ,p_sequence => p_sequence
532 ,p_date_from => p_date_from
533 ,p_effective_date => p_effective_date
534 ,p_date_to => p_date_to
535 ,p_request_id => p_request_id
536 ,p_program_application_id => p_program_application_id
537 ,p_program_id => p_program_id
538 ,p_program_update_date => p_program_update_date
539 ,p_attribute_category => p_attribute_category
540 ,p_attribute1 => p_attribute1
541 ,p_attribute2 => p_attribute2
542 ,p_attribute3 => p_attribute3
543 ,p_attribute4 => p_attribute4
544 ,p_attribute5 => p_attribute5
545 ,p_attribute6 => p_attribute6
546 ,p_attribute7 => p_attribute7
547 ,p_attribute8 => p_attribute8
548 ,p_attribute9 => p_attribute9
549 ,p_attribute10 => p_attribute10
550 ,p_attribute11 => p_attribute11
551 ,p_attribute12 => p_attribute12
552 ,p_attribute13 => p_attribute13
553 ,p_attribute14 => p_attribute14
554 ,p_attribute15 => p_attribute15
555 ,p_attribute16 => p_attribute16
556 ,p_attribute17 => p_attribute17
557 ,p_attribute18 => p_attribute18
558 ,p_attribute19 => p_attribute19
559 ,p_attribute20 => p_attribute20
560 ,p_information_category => p_information_category
561 ,p_information1 => p_information1
562 ,p_information2 => p_information2
563 ,p_information3 => p_information3
564 ,p_information4 => p_information4
565 ,p_information5 => p_information5
566 ,p_information6 => p_information6
567 ,p_information7 => p_information7
568 ,p_information8 => p_information8
569 ,p_information9 => p_information9
570 ,p_information10 => p_information10
571 ,p_information11 => p_information11
572 ,p_information12 => p_information12
573 ,p_information13 => p_information13
574 ,p_information14 => p_information14
575 ,p_information15 => p_information15
576 ,p_information16 => p_information16
577 ,p_information17 => p_information17
578 ,p_information18 => p_information18
579 ,p_information19 => p_information19
580 ,p_information20 => p_information20
581 ,p_last_update_date => p_last_update_date
582 ,p_last_updated_by => p_last_updated_by
583 ,p_last_update_login => p_last_update_login
584 ,p_created_by => p_created_by
585 ,p_creation_date => p_creation_date
586 ,p_segment1 => p_segment1
587 ,p_segment2 => p_segment2
588 ,p_segment3 => p_segment3
589 ,p_segment4 => p_segment4
590 ,p_segment5 => p_segment5
591 ,p_segment6 => p_segment6
592 ,p_segment7 => p_segment7
593 ,p_segment8 => p_segment8
594 ,p_segment9 => p_segment9
595 ,p_segment10 => p_segment10
596 ,p_segment11 => p_segment11
597 ,p_segment12 => p_segment12
598 ,p_segment13 => p_segment13
599 ,p_segment14 => p_segment14
600 ,p_segment15 => p_segment15
601 ,p_segment16 => p_segment16
602 ,p_segment17 => p_segment17
603 ,p_segment18 => p_segment18
604 ,p_segment19 => p_segment19
605 ,p_segment20 => p_segment20
606 ,p_segment21 => p_segment21
607 ,p_segment22 => p_segment22
608 ,p_segment23 => p_segment23
609 ,p_segment24 => p_segment24
610 ,p_segment25 => p_segment25
611 ,p_segment26 => p_segment26
612 ,p_segment27 => p_segment27
613 ,p_segment28 => p_segment28
614 ,p_segment29 => p_segment29
615 ,p_segment30 => p_segment30
616 ,p_concat_segments => p_concat_segments
617 ,p_name => p_name
618 ,p_object_version_number => p_object_version_number
619 ,p_grade_definition_id => p_grade_definition_id
620 );
621 --
622 -- Convert API warning boolean parameter values to specific
623 -- messages and add them to Multiple Message List
624 --
625 --
626 -- Convert API non-warning boolean parameter values
627 --
628 --
629 -- Derive the API return status value based on whether
630 -- messages of any type exist in the Multiple Message List.
631 -- Also disable Multiple Message Detection.
632 --
633 p_return_status := hr_multi_message.get_return_status_disable;
634 hr_utility.set_location(' Leaving:' || l_proc,20);
635 --
636 exception
637 when hr_multi_message.error_message_exist then
638 --
639 -- Catch the Multiple Message List exception which
640 -- indicates API processing has been aborted because
641 -- at least one message exists in the list.
642 --
643 rollback to update_grade_swi;
644 --
645 -- Reset IN OUT parameters and set OUT parameters
646 --
647 p_concat_segments := l_concat_segments;
648 p_name := l_name;
649 p_object_version_number := l_object_version_number;
650 p_grade_definition_id := l_grade_definition_id;
651 p_return_status := hr_multi_message.get_return_status_disable;
652 hr_utility.set_location(' Leaving:' || l_proc, 30);
653 when others then
654 --
655 -- When Multiple Message Detection is enabled catch
656 -- any Application specific or other unexpected
657 -- exceptions. Adding appropriate details to the
658 -- Multiple Message List. Otherwise re-raise the
659 -- error.
660 --
661 rollback to update_grade_swi;
662 if hr_multi_message.unexpected_error_add(l_proc) then
663 hr_utility.set_location(' Leaving:' || l_proc,40);
664 raise;
665 end if;
666 --
667 -- Reset IN OUT and set OUT parameters
668 --
669 p_concat_segments := l_concat_segments;
670 p_name := l_name;
671 p_object_version_number := l_object_version_number;
672 p_grade_definition_id := l_grade_definition_id;
673 p_return_status := hr_multi_message.get_return_status_disable;
674 hr_utility.set_location(' Leaving:' || l_proc,50);
675 end update_grade;
676 end hr_grade_swi;