DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_HIERARCHY_SWI

Source


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