DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_DOCUMENT_EXTRA_INFO_SWI

Source


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