DBA Data[Home] [Help]

PACKAGE BODY: APPS.PQP_VEHICLE_ALLOCATIONS_SWI

Source


1 Package Body pqp_vehicle_allocations_swi As
2 /* $Header: pqvalswi.pkb 120.0 2005/05/29 02:17:45 appldev noship $ */
3 --
4 -- Package variables
5 --
6 g_package  varchar2(33) := 'pqp_vehicle_allocations_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-----------------------< create_vehicle_allocation >----------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_vehicle_allocation
12   (p_validate                     in     number    default hr_api.g_false_num
13   ,p_effective_date               in     date
14   ,p_assignment_id                in     number
15   ,p_business_group_id            in     number
16   ,p_vehicle_repository_id        in     number    default null
17   ,p_across_assignments           in     varchar2  default null
18   ,p_usage_type                   in     varchar2  default null
19   ,p_capital_contribution         in     number    default null
20   ,p_private_contribution         in     number    default null
21   ,p_default_vehicle              in     varchar2  default null
22   ,p_fuel_card                    in     varchar2  default null
23   ,p_fuel_card_number             in     varchar2  default null
24   ,p_calculation_method           in     varchar2  default null
25   ,p_rates_table_id               in     number    default null
26   ,p_element_type_id              in     number    default null
27   ,p_private_use_flag		  in     varchar2 default null
28   ,p_insurance_number		  in     varchar2 default null
29   ,p_insurance_expiry_date		  in     date	    default null
30   ,p_val_attribute_category       in     varchar2  default null
31   ,p_val_attribute1               in     varchar2  default null
32   ,p_val_attribute2               in     varchar2  default null
33   ,p_val_attribute3               in     varchar2  default null
34   ,p_val_attribute4               in     varchar2  default null
35   ,p_val_attribute5               in     varchar2  default null
36   ,p_val_attribute6               in     varchar2  default null
37   ,p_val_attribute7               in     varchar2  default null
38   ,p_val_attribute8               in     varchar2  default null
39   ,p_val_attribute9               in     varchar2  default null
40   ,p_val_attribute10              in     varchar2  default null
41   ,p_val_attribute11              in     varchar2  default null
42   ,p_val_attribute12              in     varchar2  default null
43   ,p_val_attribute13              in     varchar2  default null
44   ,p_val_attribute14              in     varchar2  default null
45   ,p_val_attribute15              in     varchar2  default null
46   ,p_val_attribute16              in     varchar2  default null
47   ,p_val_attribute17              in     varchar2  default null
48   ,p_val_attribute18              in     varchar2  default null
49   ,p_val_attribute19              in     varchar2  default null
50   ,p_val_attribute20              in     varchar2  default null
51   ,p_val_information_category     in     varchar2  default null
52   ,p_val_information1             in     varchar2  default null
53   ,p_val_information2             in     varchar2  default null
54   ,p_val_information3             in     varchar2  default null
55   ,p_val_information4             in     varchar2  default null
56   ,p_val_information5             in     varchar2  default null
57   ,p_val_information6             in     varchar2  default null
58   ,p_val_information7             in     varchar2  default null
59   ,p_val_information8             in     varchar2  default null
60   ,p_val_information9             in     varchar2  default null
61   ,p_val_information10            in     varchar2  default null
62   ,p_val_information11            in     varchar2  default null
63   ,p_val_information12            in     varchar2  default null
64   ,p_val_information13            in     varchar2  default null
65   ,p_val_information14            in     varchar2  default null
66   ,p_val_information15            in     varchar2  default null
67   ,p_val_information16            in     varchar2  default null
68   ,p_val_information17            in     varchar2  default null
69   ,p_val_information18            in     varchar2  default null
70   ,p_val_information19            in     varchar2  default null
71   ,p_val_information20            in     varchar2  default null
72   ,p_fuel_benefit                 in     varchar2  default null
73   ,p_sliding_rates_info		  in     varchar2 default null
74   ,p_vehicle_allocation_id        in     number
75   ,p_object_version_number           out nocopy number
76   ,p_effective_start_date            out nocopy date
77   ,p_effective_end_date              out nocopy date
78   ,p_return_status                   out nocopy varchar2
79   ) is
80   --
81   -- Variables for API Boolean parameters
82   l_validate                      boolean;
83   --
84   -- Variables for IN/OUT parameters
85   --
86   -- Other variables
87   l_vehicle_allocation_id        number;
88   l_proc    varchar2(72) := g_package ||'create_vehicle_allocation';
89 Begin
90   hr_utility.set_location(' Entering:' || l_proc,10);
91   --
92   -- Issue a savepoint
93   --
94   savepoint create_vehicle_allocation_swi;
95   --
96   -- Initialise Multiple Message Detection
97   --
98   hr_multi_message.enable_message_list;
99   --
100   -- Remember IN OUT parameter IN values
101   --
102   --
103   -- Convert constant values to their corresponding boolean value
104   --
105   l_validate :=
106     hr_api.constant_to_boolean
107       (p_constant_value => p_validate);
108   --
109   -- Register Surrogate ID or user key values
110   --
111   pqp_val_ins.set_base_key_value
112     (p_vehicle_allocation_id => p_vehicle_allocation_id
113     );
114   --
115   -- Call API
116   --
117   pqp_vehicle_allocations_api.create_vehicle_allocation
118     (p_validate                     => l_validate
119     ,p_effective_date               => p_effective_date
120     ,p_assignment_id                => p_assignment_id
121     ,p_business_group_id            => p_business_group_id
122     ,p_vehicle_repository_id        => p_vehicle_repository_id
123     ,p_across_assignments           => p_across_assignments
124     ,p_usage_type                   => p_usage_type
125     ,p_capital_contribution         => p_capital_contribution
126     ,p_private_contribution         => p_private_contribution
127     ,p_default_vehicle              => p_default_vehicle
128     ,p_fuel_card                    => p_fuel_card
129     ,p_fuel_card_number             => p_fuel_card_number
130     ,p_calculation_method           => p_calculation_method
131     ,p_rates_table_id               => p_rates_table_id
132     ,p_element_type_id              => p_element_type_id
133     ,p_private_use_flag		    => p_private_use_flag
134     ,p_insurance_number		    => p_insurance_number
135     ,p_insurance_expiry_date	    => p_insurance_expiry_date
136     ,p_val_attribute_category       => p_val_attribute_category
137     ,p_val_attribute1               => p_val_attribute1
138     ,p_val_attribute2               => p_val_attribute2
139     ,p_val_attribute3               => p_val_attribute3
140     ,p_val_attribute4               => p_val_attribute4
141     ,p_val_attribute5               => p_val_attribute5
142     ,p_val_attribute6               => p_val_attribute6
143     ,p_val_attribute7               => p_val_attribute7
144     ,p_val_attribute8               => p_val_attribute8
145     ,p_val_attribute9               => p_val_attribute9
146     ,p_val_attribute10              => p_val_attribute10
147     ,p_val_attribute11              => p_val_attribute11
148     ,p_val_attribute12              => p_val_attribute12
149     ,p_val_attribute13              => p_val_attribute13
150     ,p_val_attribute14              => p_val_attribute14
151     ,p_val_attribute15              => p_val_attribute15
152     ,p_val_attribute16              => p_val_attribute16
153     ,p_val_attribute17              => p_val_attribute17
154     ,p_val_attribute18              => p_val_attribute18
155     ,p_val_attribute19              => p_val_attribute19
156     ,p_val_attribute20              => p_val_attribute20
157     ,p_val_information_category     => p_val_information_category
158     ,p_val_information1             => p_val_information1
159     ,p_val_information2             => p_val_information2
160     ,p_val_information3             => p_val_information3
161     ,p_val_information4             => p_val_information4
162     ,p_val_information5             => p_val_information5
163     ,p_val_information6             => p_val_information6
164     ,p_val_information7             => p_val_information7
165     ,p_val_information8             => p_val_information8
166     ,p_val_information9             => p_val_information9
167     ,p_val_information10            => p_val_information10
168     ,p_val_information11            => p_val_information11
169     ,p_val_information12            => p_val_information12
170     ,p_val_information13            => p_val_information13
171     ,p_val_information14            => p_val_information14
172     ,p_val_information15            => p_val_information15
173     ,p_val_information16            => p_val_information16
174     ,p_val_information17            => p_val_information17
175     ,p_val_information18            => p_val_information18
176     ,p_val_information19            => p_val_information19
177     ,p_val_information20            => p_val_information20
178     ,p_fuel_benefit                 => p_fuel_benefit
179     ,p_sliding_rates_info	    => p_sliding_rates_info
180     ,p_vehicle_allocation_id        => l_vehicle_allocation_id
181     ,p_object_version_number        => p_object_version_number
182     ,p_effective_start_date         => p_effective_start_date
183     ,p_effective_end_date           => p_effective_end_date
184     );
185   --
186   -- Convert API warning boolean parameter values to specific
187   -- messages and add them to Multiple Message List
188   --
189   --
190   -- Convert API non-warning boolean parameter values
191   --
192   --
193   -- Derive the API return status value based on whether
194   -- messages of any type exist in the Multiple Message List.
195   -- Also disable Multiple Message Detection.
196   --
197   p_return_status := hr_multi_message.get_return_status_disable;
198   hr_utility.set_location(' Leaving:' || l_proc,20);
199   --
200 exception
201   when hr_multi_message.error_message_exist then
202     --
203     -- Catch the Multiple Message List exception which
204     -- indicates API processing has been aborted because
205     -- at least one message exists in the list.
206     --
207     rollback to create_vehicle_allocation_swi;
208     --
209     -- Reset IN OUT parameters and set OUT parameters
210     --
211     p_object_version_number        := null;
212     p_effective_start_date         := null;
213     p_effective_end_date           := null;
214     p_return_status := hr_multi_message.get_return_status_disable;
215     hr_utility.set_location(' Leaving:' || l_proc, 30);
216   when others then
217     --
218     -- When Multiple Message Detection is enabled catch
219     -- any Application specific or other unexpected
220     -- exceptions.  Adding appropriate details to the
221     -- Multiple Message List.  Otherwise re-raise the
222     -- error.
223     --
224     rollback to create_vehicle_allocation_swi;
225     if hr_multi_message.unexpected_error_add(l_proc) then
226        hr_utility.set_location(' Leaving:' || l_proc,40);
227        raise;
228     end if;
229     --
230     -- Reset IN OUT and set OUT parameters
231     --
232     p_object_version_number        := null;
233     p_effective_start_date         := null;
234     p_effective_end_date           := null;
235     p_return_status := hr_multi_message.get_return_status_disable;
236     hr_utility.set_location(' Leaving:' || l_proc,50);
237 end create_vehicle_allocation;
238 -- ----------------------------------------------------------------------------
239 -- |-----------------------< delete_vehicle_allocation >----------------------|
240 -- ----------------------------------------------------------------------------
241 PROCEDURE delete_vehicle_allocation
242   (p_validate                     in     number    default hr_api.g_false_num
243   ,p_effective_date               in     date
244   ,p_datetrack_mode               in     varchar2
245   ,p_vehicle_allocation_id        in     number
246   ,p_object_version_number        in out nocopy number
247   ,p_effective_start_date            out nocopy date
248   ,p_effective_end_date              out nocopy date
249   ,p_return_status                   out nocopy varchar2
250   ) is
251   --
252   -- Variables for API Boolean parameters
253   l_validate                      boolean;
254   --
255   -- Variables for IN/OUT parameters
256   l_object_version_number         number;
257   --
258   -- Other variables
259   l_proc    varchar2(72) := g_package ||'delete_vehicle_allocation';
260 Begin
261   hr_utility.set_location(' Entering:' || l_proc,10);
262   --
263   -- Issue a savepoint
264   --
265   savepoint delete_vehicle_allocation_swi;
266   --
267   -- Initialise Multiple Message Detection
268   --
269   hr_multi_message.enable_message_list;
270   --
271   -- Remember IN OUT parameter IN values
272   --
273   l_object_version_number         := p_object_version_number;
274   --
275   -- Convert constant values to their corresponding boolean value
276   --
277   l_validate :=
278     hr_api.constant_to_boolean
279       (p_constant_value => p_validate);
280   --
281   -- Register Surrogate ID or user key values
282   --
283   --
284   -- Call API
285   --
286   pqp_vehicle_allocations_api.delete_vehicle_allocation
287     (p_validate                     => l_validate
288     ,p_effective_date               => p_effective_date
289     ,p_datetrack_mode               => p_datetrack_mode
290     ,p_vehicle_allocation_id        => p_vehicle_allocation_id
291     ,p_object_version_number        => p_object_version_number
292     ,p_effective_start_date         => p_effective_start_date
293     ,p_effective_end_date           => p_effective_end_date
294     );
295   --
296   -- Convert API warning boolean parameter values to specific
297   -- messages and add them to Multiple Message List
298   --
299   --
300   -- Convert API non-warning boolean parameter values
301   --
302   --
303   -- Derive the API return status value based on whether
304   -- messages of any type exist in the Multiple Message List.
305   -- Also disable Multiple Message Detection.
306   --
307   p_return_status := hr_multi_message.get_return_status_disable;
308   hr_utility.set_location(' Leaving:' || l_proc,20);
309   --
310 exception
311   when hr_multi_message.error_message_exist then
312     --
313     -- Catch the Multiple Message List exception which
314     -- indicates API processing has been aborted because
315     -- at least one message exists in the list.
316     --
317     rollback to delete_vehicle_allocation_swi;
318     --
319     -- Reset IN OUT parameters and set OUT parameters
320     --
321     p_object_version_number        := l_object_version_number;
322     p_effective_start_date         := null;
323     p_effective_end_date           := null;
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_vehicle_allocation_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_effective_start_date         := null;
344     p_effective_end_date           := null;
345     p_return_status := hr_multi_message.get_return_status_disable;
346     hr_utility.set_location(' Leaving:' || l_proc,50);
347     raise;
348 end delete_vehicle_allocation;
349 -- ----------------------------------------------------------------------------
350 -- |-----------------------< update_vehicle_allocation >----------------------|
351 -- ----------------------------------------------------------------------------
352 PROCEDURE update_vehicle_allocation
353   (p_validate                     in     number    default hr_api.g_false_num
354   ,p_effective_date               in     date
355   ,p_datetrack_mode               in     varchar2
356   ,p_vehicle_allocation_id        in     number
357   ,p_object_version_number        in out nocopy number
358   ,p_assignment_id                in     number    default hr_api.g_number
359   ,p_business_group_id            in     number    default hr_api.g_number
360   ,p_vehicle_repository_id        in     number    default hr_api.g_number
361   ,p_across_assignments           in     varchar2  default hr_api.g_varchar2
362   ,p_usage_type                   in     varchar2  default hr_api.g_varchar2
363   ,p_capital_contribution         in     number    default hr_api.g_number
364   ,p_private_contribution         in     number    default hr_api.g_number
365   ,p_default_vehicle              in     varchar2  default hr_api.g_varchar2
366   ,p_fuel_card                    in     varchar2  default hr_api.g_varchar2
367   ,p_fuel_card_number             in     varchar2  default hr_api.g_varchar2
368   ,p_calculation_method           in     varchar2  default hr_api.g_varchar2
369   ,p_rates_table_id               in     number    default hr_api.g_number
370   ,p_element_type_id              in     number    default hr_api.g_number
371   ,p_private_use_flag		  in     varchar2 default hr_api.g_varchar2
372   ,p_insurance_number		  in     varchar2 default hr_api.g_varchar2
373   ,p_insurance_expiry_date		  in     date	    default hr_api.g_date
374   ,p_val_attribute_category       in     varchar2  default hr_api.g_varchar2
375   ,p_val_attribute1               in     varchar2  default hr_api.g_varchar2
376   ,p_val_attribute2               in     varchar2  default hr_api.g_varchar2
377   ,p_val_attribute3               in     varchar2  default hr_api.g_varchar2
378   ,p_val_attribute4               in     varchar2  default hr_api.g_varchar2
379   ,p_val_attribute5               in     varchar2  default hr_api.g_varchar2
380   ,p_val_attribute6               in     varchar2  default hr_api.g_varchar2
381   ,p_val_attribute7               in     varchar2  default hr_api.g_varchar2
382   ,p_val_attribute8               in     varchar2  default hr_api.g_varchar2
383   ,p_val_attribute9               in     varchar2  default hr_api.g_varchar2
384   ,p_val_attribute10              in     varchar2  default hr_api.g_varchar2
385   ,p_val_attribute11              in     varchar2  default hr_api.g_varchar2
386   ,p_val_attribute12              in     varchar2  default hr_api.g_varchar2
387   ,p_val_attribute13              in     varchar2  default hr_api.g_varchar2
388   ,p_val_attribute14              in     varchar2  default hr_api.g_varchar2
389   ,p_val_attribute15              in     varchar2  default hr_api.g_varchar2
390   ,p_val_attribute16              in     varchar2  default hr_api.g_varchar2
391   ,p_val_attribute17              in     varchar2  default hr_api.g_varchar2
392   ,p_val_attribute18              in     varchar2  default hr_api.g_varchar2
393   ,p_val_attribute19              in     varchar2  default hr_api.g_varchar2
394   ,p_val_attribute20              in     varchar2  default hr_api.g_varchar2
395   ,p_val_information_category     in     varchar2  default hr_api.g_varchar2
396   ,p_val_information1             in     varchar2  default hr_api.g_varchar2
397   ,p_val_information2             in     varchar2  default hr_api.g_varchar2
398   ,p_val_information3             in     varchar2  default hr_api.g_varchar2
399   ,p_val_information4             in     varchar2  default hr_api.g_varchar2
400   ,p_val_information5             in     varchar2  default hr_api.g_varchar2
401   ,p_val_information6             in     varchar2  default hr_api.g_varchar2
402   ,p_val_information7             in     varchar2  default hr_api.g_varchar2
403   ,p_val_information8             in     varchar2  default hr_api.g_varchar2
404   ,p_val_information9             in     varchar2  default hr_api.g_varchar2
405   ,p_val_information10            in     varchar2  default hr_api.g_varchar2
406   ,p_val_information11            in     varchar2  default hr_api.g_varchar2
407   ,p_val_information12            in     varchar2  default hr_api.g_varchar2
408   ,p_val_information13            in     varchar2  default hr_api.g_varchar2
409   ,p_val_information14            in     varchar2  default hr_api.g_varchar2
410   ,p_val_information15            in     varchar2  default hr_api.g_varchar2
411   ,p_val_information16            in     varchar2  default hr_api.g_varchar2
412   ,p_val_information17            in     varchar2  default hr_api.g_varchar2
413   ,p_val_information18            in     varchar2  default hr_api.g_varchar2
414   ,p_val_information19            in     varchar2  default hr_api.g_varchar2
415   ,p_val_information20            in     varchar2  default hr_api.g_varchar2
416   ,p_fuel_benefit                 in     varchar2  default hr_api.g_varchar2
417   ,p_sliding_rates_info		  in     varchar2 default hr_api.g_varchar2
418   ,p_effective_start_date            out nocopy date
419   ,p_effective_end_date              out nocopy date
420   ,p_return_status                   out nocopy varchar2
421   ) is
422   --
423   -- Variables for API Boolean parameters
424   l_validate                      boolean;
425   --
426   -- Variables for IN/OUT parameters
427   l_object_version_number         number;
428   --
429   -- Other variables
430   l_proc    varchar2(72) := g_package ||'update_vehicle_allocation';
431 Begin
432   hr_utility.set_location(' Entering:' || l_proc,10);
433   --
434   -- Issue a savepoint
435   --
436   savepoint update_vehicle_allocation_swi;
437   --
438   -- Initialise Multiple Message Detection
439   --
440   hr_multi_message.enable_message_list;
441   --
442   -- Remember IN OUT parameter IN values
443   --
444   l_object_version_number         := p_object_version_number;
445   --
446   -- Convert constant values to their corresponding boolean value
447   --
448   l_validate :=
449     hr_api.constant_to_boolean
450       (p_constant_value => p_validate);
451   --
452   -- Register Surrogate ID or user key values
453   --
454   --
455   -- Call API
456   --
457   pqp_vehicle_allocations_api.update_vehicle_allocation
458     (p_validate                     => l_validate
459     ,p_effective_date               => p_effective_date
460     ,p_datetrack_mode               => p_datetrack_mode
461     ,p_vehicle_allocation_id        => p_vehicle_allocation_id
462     ,p_object_version_number        => p_object_version_number
463     ,p_assignment_id                => p_assignment_id
464     ,p_business_group_id            => p_business_group_id
465     ,p_vehicle_repository_id        => p_vehicle_repository_id
466     ,p_across_assignments           => p_across_assignments
467     ,p_usage_type                   => p_usage_type
468     ,p_capital_contribution         => p_capital_contribution
469     ,p_private_contribution         => p_private_contribution
470     ,p_default_vehicle              => p_default_vehicle
471     ,p_fuel_card                    => p_fuel_card
472     ,p_fuel_card_number             => p_fuel_card_number
473     ,p_calculation_method           => p_calculation_method
474     ,p_rates_table_id               => p_rates_table_id
475     ,p_element_type_id              => p_element_type_id
476     ,p_private_use_flag		    => p_private_use_flag
477     ,p_insurance_number		    => p_insurance_number
478     ,p_insurance_expiry_date	    => p_insurance_expiry_date
479     ,p_val_attribute_category       => p_val_attribute_category
480     ,p_val_attribute1               => p_val_attribute1
481     ,p_val_attribute2               => p_val_attribute2
482     ,p_val_attribute3               => p_val_attribute3
483     ,p_val_attribute4               => p_val_attribute4
484     ,p_val_attribute5               => p_val_attribute5
485     ,p_val_attribute6               => p_val_attribute6
486     ,p_val_attribute7               => p_val_attribute7
487     ,p_val_attribute8               => p_val_attribute8
488     ,p_val_attribute9               => p_val_attribute9
489     ,p_val_attribute10              => p_val_attribute10
490     ,p_val_attribute11              => p_val_attribute11
491     ,p_val_attribute12              => p_val_attribute12
492     ,p_val_attribute13              => p_val_attribute13
493     ,p_val_attribute14              => p_val_attribute14
494     ,p_val_attribute15              => p_val_attribute15
495     ,p_val_attribute16              => p_val_attribute16
496     ,p_val_attribute17              => p_val_attribute17
497     ,p_val_attribute18              => p_val_attribute18
498     ,p_val_attribute19              => p_val_attribute19
499     ,p_val_attribute20              => p_val_attribute20
500     ,p_val_information_category     => p_val_information_category
501     ,p_val_information1             => p_val_information1
502     ,p_val_information2             => p_val_information2
503     ,p_val_information3             => p_val_information3
504     ,p_val_information4             => p_val_information4
505     ,p_val_information5             => p_val_information5
506     ,p_val_information6             => p_val_information6
507     ,p_val_information7             => p_val_information7
508     ,p_val_information8             => p_val_information8
509     ,p_val_information9             => p_val_information9
510     ,p_val_information10            => p_val_information10
511     ,p_val_information11            => p_val_information11
512     ,p_val_information12            => p_val_information12
513     ,p_val_information13            => p_val_information13
514     ,p_val_information14            => p_val_information14
515     ,p_val_information15            => p_val_information15
516     ,p_val_information16            => p_val_information16
517     ,p_val_information17            => p_val_information17
518     ,p_val_information18            => p_val_information18
519     ,p_val_information19            => p_val_information19
520     ,p_val_information20            => p_val_information20
521     ,p_fuel_benefit                 => p_fuel_benefit
522     ,p_sliding_rates_info           =>p_sliding_rates_info
523     ,p_effective_start_date         => p_effective_start_date
524     ,p_effective_end_date           => p_effective_end_date
525     );
526   --
527   -- Convert API warning boolean parameter values to specific
528   -- messages and add them to Multiple Message List
529   --
530   --
531   -- Convert API non-warning boolean parameter values
532   --
533   --
534   -- Derive the API return status value based on whether
535   -- messages of any type exist in the Multiple Message List.
536   -- Also disable Multiple Message Detection.
537   --
538   p_return_status := hr_multi_message.get_return_status_disable;
539   hr_utility.set_location(' Leaving:' || l_proc,20);
540   --
541 exception
542   when hr_multi_message.error_message_exist then
543     --
544     -- Catch the Multiple Message List exception which
545     -- indicates API processing has been aborted because
546     -- at least one message exists in the list.
547     --
548     rollback to update_vehicle_allocation_swi;
549     --
550     -- Reset IN OUT parameters and set OUT parameters
551     --
552     p_object_version_number        := l_object_version_number;
553     p_effective_start_date         := null;
554     p_effective_end_date           := null;
555     p_return_status := hr_multi_message.get_return_status_disable;
556     hr_utility.set_location(' Leaving:' || l_proc, 30);
557   when others then
558     --
559     -- When Multiple Message Detection is enabled catch
560     -- any Application specific or other unexpected
561     -- exceptions.  Adding appropriate details to the
562     -- Multiple Message List.  Otherwise re-raise the
563     -- error.
564     --
565     rollback to update_vehicle_allocation_swi;
566     if hr_multi_message.unexpected_error_add(l_proc) then
567        hr_utility.set_location(' Leaving:' || l_proc,40);
568        raise;
569     end if;
570     --
571     -- Reset IN OUT and set OUT parameters
572     --
573     p_object_version_number        := l_object_version_number;
574     p_effective_start_date         := null;
575     p_effective_end_date           := null;
576     p_return_status := hr_multi_message.get_return_status_disable;
577     hr_utility.set_location(' Leaving:' || l_proc,50);
578 end update_vehicle_allocation;
579 end pqp_vehicle_allocations_swi;