DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_PHONE_SWI

Source


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