DBA Data[Home] [Help]

PACKAGE BODY: APPS.OTA_FINANCE_LINE_SWI

Source


1 Package Body ota_finance_line_swi As
2 /* $Header: ottflswi.pkb 120.0 2005/05/29 07:43 appldev noship $ */
3 --
4 -- Package variables
5 --
6 g_package  varchar2(33) := 'ota_finance_line_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< create_finance_line >-------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_finance_line
12   (p_finance_line_id              in  number
13   ,p_finance_header_id            in     number
14   ,p_cancelled_flag               in     varchar2
15   ,p_date_raised                  in out nocopy date
16   ,p_line_type                    in     varchar2
17   ,p_object_version_number           out nocopy number
18   ,p_sequence_number              in out nocopy number
19   ,p_transfer_status              in     varchar2
20   ,p_comments                     in     varchar2
21   ,p_currency_code                in     varchar2
22   ,p_money_amount                 in     number
23   ,p_standard_amount              in     number
24   ,p_trans_information_category   in     varchar2
25   ,p_trans_information1           in     varchar2
26   ,p_trans_information10          in     varchar2
27   ,p_trans_information11          in     varchar2
28   ,p_trans_information12          in     varchar2
29   ,p_trans_information13          in     varchar2
30   ,p_trans_information14          in     varchar2
31   ,p_trans_information15          in     varchar2
32   ,p_trans_information16          in     varchar2
33   ,p_trans_information17          in     varchar2
34   ,p_trans_information18          in     varchar2
35   ,p_trans_information19          in     varchar2
36   ,p_trans_information2           in     varchar2
37   ,p_trans_information20          in     varchar2
38   ,p_trans_information3           in     varchar2
39   ,p_trans_information4           in     varchar2
40   ,p_trans_information5           in     varchar2
41   ,p_trans_information6           in     varchar2
42   ,p_trans_information7           in     varchar2
43   ,p_trans_information8           in     varchar2
44   ,p_trans_information9           in     varchar2
45   ,p_transfer_date                in     date
46   ,p_transfer_message             in     varchar2
47   ,p_unitary_amount               in     number
48   ,p_booking_deal_id              in     number
49   ,p_booking_id                   in     number
50   ,p_resource_allocation_id       in     number
51   ,p_resource_booking_id          in     number
52   ,p_last_update_date             in     date
53   ,p_last_updated_by              in     number
54   ,p_last_update_login            in     number
55   ,p_created_by                   in     number
56   ,p_creation_date                in     date
57   ,p_tfl_information_category     in     varchar2
58   ,p_tfl_information1             in     varchar2
59   ,p_tfl_information2             in     varchar2
60   ,p_tfl_information3             in     varchar2
61   ,p_tfl_information4             in     varchar2
62   ,p_tfl_information5             in     varchar2
63   ,p_tfl_information6             in     varchar2
64   ,p_tfl_information7             in     varchar2
65   ,p_tfl_information8             in     varchar2
66   ,p_tfl_information9             in     varchar2
67   ,p_tfl_information10            in     varchar2
68   ,p_tfl_information11            in     varchar2
69   ,p_tfl_information12            in     varchar2
70   ,p_tfl_information13            in     varchar2
71   ,p_tfl_information14            in     varchar2
72   ,p_tfl_information15            in     varchar2
73   ,p_tfl_information16            in     varchar2
74   ,p_tfl_information17            in     varchar2
75   ,p_tfl_information18            in     varchar2
76   ,p_tfl_information19            in     varchar2
77   ,p_tfl_information20            in     varchar2
78   ,p_validate                     in     number    default hr_api.g_false_num
79   ,p_effective_date               in     date
80   ,p_return_status                   out nocopy varchar2
81   ) is
82   --
83   -- Variables for API Boolean parameters
84   l_validate                      boolean;
85   --
86   -- Variables for IN/OUT parameters
87   l_finance_line_id  number;
88   l_date_raised                   date;
89   l_sequence_number               number;
90   --
91   -- Other variables
92   l_proc    varchar2(72) := g_package ||'create_finance_line';
93 Begin
94   hr_utility.set_location(' Entering:' || l_proc,10);
95   --
96   -- Issue a savepoint
97   --
98   savepoint create_finance_line_swi;
99   --
100   -- Initialise Multiple Message Detection
101   --
102   hr_multi_message.enable_message_list;
103   --
104   -- Remember IN OUT parameter IN values
105   --
106   l_date_raised                   := p_date_raised;
107   l_sequence_number               := p_sequence_number;
108   --
109   -- Convert constant values to their corresponding boolean value
110   --
111   l_validate :=
112     hr_api.constant_to_boolean
113       (p_constant_value => p_validate);
114   --
115   -- Register Surrogate ID or user key values
116   --
117     ota_tfl_api_ins.set_base_key_value(finance_line_id => p_finance_line_id  );
118   --
119   -- Call API
120   --
121   ota_finance_line_api.create_finance_line
122     (p_finance_line_id              => l_finance_line_id
123     ,p_finance_header_id            => p_finance_header_id
124     ,p_cancelled_flag               => p_cancelled_flag
125     ,p_date_raised                  => p_date_raised
126     ,p_line_type                    => p_line_type
127     ,p_object_version_number        => p_object_version_number
128     ,p_sequence_number              => p_sequence_number
129     ,p_transfer_status              => p_transfer_status
130     ,p_comments                     => p_comments
131     ,p_currency_code                => p_currency_code
132     ,p_money_amount                 => p_money_amount
133     ,p_standard_amount              => p_standard_amount
137     ,p_trans_information11          => p_trans_information11
134     ,p_trans_information_category   => p_trans_information_category
135     ,p_trans_information1           => p_trans_information1
136     ,p_trans_information10          => p_trans_information10
138     ,p_trans_information12          => p_trans_information12
139     ,p_trans_information13          => p_trans_information13
140     ,p_trans_information14          => p_trans_information14
141     ,p_trans_information15          => p_trans_information15
142     ,p_trans_information16          => p_trans_information16
143     ,p_trans_information17          => p_trans_information17
144     ,p_trans_information18          => p_trans_information18
145     ,p_trans_information19          => p_trans_information19
146     ,p_trans_information2           => p_trans_information2
147     ,p_trans_information20          => p_trans_information20
148     ,p_trans_information3           => p_trans_information3
149     ,p_trans_information4           => p_trans_information4
150     ,p_trans_information5           => p_trans_information5
151     ,p_trans_information6           => p_trans_information6
152     ,p_trans_information7           => p_trans_information7
153     ,p_trans_information8           => p_trans_information8
154     ,p_trans_information9           => p_trans_information9
155     ,p_transfer_date                => p_transfer_date
156     ,p_transfer_message             => p_transfer_message
157     ,p_unitary_amount               => p_unitary_amount
158     ,p_booking_deal_id              => p_booking_deal_id
159     ,p_booking_id                   => p_booking_id
160     ,p_resource_allocation_id       => p_resource_allocation_id
161     ,p_resource_booking_id          => p_resource_booking_id
165     ,p_created_by                   => p_created_by
162     ,p_last_update_date             => p_last_update_date
163     ,p_last_updated_by              => p_last_updated_by
164     ,p_last_update_login            => p_last_update_login
166     ,p_creation_date                => p_creation_date
167     ,p_tfl_information_category     => p_tfl_information_category
168     ,p_tfl_information1             => p_tfl_information1
169     ,p_tfl_information2             => p_tfl_information2
170     ,p_tfl_information3             => p_tfl_information3
171     ,p_tfl_information4             => p_tfl_information4
172     ,p_tfl_information5             => p_tfl_information5
173     ,p_tfl_information6             => p_tfl_information6
174     ,p_tfl_information7             => p_tfl_information7
175     ,p_tfl_information8             => p_tfl_information8
176     ,p_tfl_information9             => p_tfl_information9
177     ,p_tfl_information10            => p_tfl_information10
178     ,p_tfl_information11            => p_tfl_information11
179     ,p_tfl_information12            => p_tfl_information12
180     ,p_tfl_information13            => p_tfl_information13
181     ,p_tfl_information14            => p_tfl_information14
182     ,p_tfl_information15            => p_tfl_information15
183     ,p_tfl_information16            => p_tfl_information16
184     ,p_tfl_information17            => p_tfl_information17
185     ,p_tfl_information18            => p_tfl_information18
186     ,p_tfl_information19            => p_tfl_information19
187     ,p_tfl_information20            => p_tfl_information20
188     ,p_validate                     => l_validate
189     ,p_effective_date               => p_effective_date
190     );
191   --
192   -- Convert API warning boolean parameter values to specific
193   -- messages and add them to Multiple Message List
194   --
195   --
196   -- Convert API non-warning boolean parameter values
197   --
198   --
199   -- Derive the API return status value based on whether
200   -- messages of any type exist in the Multiple Message List.
201   -- Also disable Multiple Message Detection.
202   --
203   p_return_status := hr_multi_message.get_return_status_disable;
204   hr_utility.set_location(' Leaving:' || l_proc,20);
205   --
206 exception
207   when hr_multi_message.error_message_exist then
208     --
209     -- Catch the Multiple Message List exception which
210     -- indicates API processing has been aborted because
211     -- at least one message exists in the list.
212     --
213     rollback to create_finance_line_swi;
214     --
215     -- Reset IN OUT parameters and set OUT parameters
216     --
217     p_date_raised                  := l_date_raised;
218     p_object_version_number        := null;
219     p_sequence_number              := l_sequence_number;
220     p_return_status := hr_multi_message.get_return_status_disable;
221     hr_utility.set_location(' Leaving:' || l_proc, 30);
222   when others then
223     --
224     -- When Multiple Message Detection is enabled catch
225     -- any Application specific or other unexpected
229     --
226     -- exceptions.  Adding appropriate details to the
227     -- Multiple Message List.  Otherwise re-raise the
228     -- error.
230     rollback to create_finance_line_swi;
231     if hr_multi_message.unexpected_error_add(l_proc) then
232        hr_utility.set_location(' Leaving:' || l_proc,40);
233        raise;
234     end if;
235     --
236     -- Reset IN OUT and set OUT parameters
237     --
238     p_date_raised                  := l_date_raised;
239     p_object_version_number        := null;
240     p_sequence_number              := l_sequence_number;
241     p_return_status := hr_multi_message.get_return_status_disable;
242     hr_utility.set_location(' Leaving:' || l_proc,50);
243 end create_finance_line;
244 
245 -- ----------------------------------------------------------------------------
246 -- |--------------------------< update_finance_line >-------------------------|
247 -- ----------------------------------------------------------------------------
248 PROCEDURE update_finance_line
249   (p_finance_line_id              in     number
250   ,p_object_version_number        in out nocopy number
251   ,p_new_object_version_number       out nocopy number
252   ,p_finance_header_id            in     number
253   ,p_cancelled_flag               in     varchar2
254   ,p_date_raised                  in out nocopy date
255   ,p_line_type                    in     varchar2
256   ,p_sequence_number              in out nocopy number
257   ,p_transfer_status              in     varchar2
258   ,p_comments                     in     varchar2
259   ,p_currency_code                in     varchar2
260   ,p_money_amount                 in     number
261   ,p_standard_amount              in     number
262   ,p_trans_information_category   in     varchar2
263   ,p_trans_information1           in     varchar2
264   ,p_trans_information10          in     varchar2
265   ,p_trans_information11          in     varchar2
266   ,p_trans_information12          in     varchar2
267   ,p_trans_information13          in     varchar2
268   ,p_trans_information14          in     varchar2
269   ,p_trans_information15          in     varchar2
270   ,p_trans_information16          in     varchar2
271   ,p_trans_information17          in     varchar2
272   ,p_trans_information18          in     varchar2
273   ,p_trans_information19          in     varchar2
274   ,p_trans_information2           in     varchar2
275   ,p_trans_information20          in     varchar2
276   ,p_trans_information3           in     varchar2
277   ,p_trans_information4           in     varchar2
278   ,p_trans_information5           in     varchar2
279   ,p_trans_information6           in     varchar2
280   ,p_trans_information7           in     varchar2
281   ,p_trans_information8           in     varchar2
282   ,p_trans_information9           in     varchar2
283   ,p_transfer_date                in     date
284   ,p_transfer_message             in     varchar2
285   ,p_unitary_amount               in     number
286   ,p_booking_deal_id              in     number
287   ,p_booking_id                   in     number
288   ,p_resource_allocation_id       in     number
289   ,p_resource_booking_id          in     number
290   ,p_last_update_date             in     date
291   ,p_last_updated_by              in     number
292   ,p_last_update_login            in     number
293   ,p_created_by                   in     number
294   ,p_creation_date                in     date
295   ,p_tfl_information_category     in     varchar2
296   ,p_tfl_information1             in     varchar2
297   ,p_tfl_information2             in     varchar2
298   ,p_tfl_information3             in     varchar2
299   ,p_tfl_information4             in     varchar2
300   ,p_tfl_information5             in     varchar2
301   ,p_tfl_information6             in     varchar2
302   ,p_tfl_information7             in     varchar2
303   ,p_tfl_information8             in     varchar2
304   ,p_tfl_information9             in     varchar2
305   ,p_tfl_information10            in     varchar2
306   ,p_tfl_information11            in     varchar2
307   ,p_tfl_information12            in     varchar2
308   ,p_tfl_information13            in     varchar2
309   ,p_tfl_information14            in     varchar2
310   ,p_tfl_information15            in     varchar2
311   ,p_tfl_information16            in     varchar2
312   ,p_tfl_information17            in     varchar2
313   ,p_tfl_information18            in     varchar2
314   ,p_tfl_information19            in     varchar2
315   ,p_tfl_information20            in     varchar2
316   ,p_validate                     in     number    default hr_api.g_false_num
317   ,p_effective_date               in     date
318   ,p_transaction_type             in     varchar2
319   ,p_return_status                   out nocopy varchar2
320   ) is
321   --
322   -- Variables for API Boolean parameters
323   l_validate                      boolean;
324   --
325   -- Variables for IN/OUT parameters
326   l_object_version_number         number;
327   l_date_raised                   date;
328   l_sequence_number               number;
329   --
330   -- Other variables
331   l_proc    varchar2(72) := g_package ||'update_finance_line';
332 Begin
333   hr_utility.set_location(' Entering:' || l_proc,10);
334   --
335   -- Issue a savepoint
336   --
337   savepoint update_finance_line_swi;
338   --
339   -- Initialise Multiple Message Detection
340   --
341   hr_multi_message.enable_message_list;
342   --
343   -- Remember IN OUT parameter IN values
344   --
345   l_object_version_number         := p_object_version_number;
346   l_date_raised                   := p_date_raised;
347   l_sequence_number               := p_sequence_number;
348   --
349   -- Convert constant values to their corresponding boolean value
350   --
351   l_validate :=
355   -- Register Surrogate ID or user key values
352     hr_api.constant_to_boolean
353       (p_constant_value => p_validate);
354   --
356   --
357   --
358   -- Call API
359   --
360   ota_finance_line_api.update_finance_line
361     (p_finance_line_id              => p_finance_line_id
362     ,p_object_version_number        => p_object_version_number
363     ,p_new_object_version_number    => p_new_object_version_number
364     ,p_finance_header_id            => p_finance_header_id
365     ,p_cancelled_flag               => p_cancelled_flag
366     ,p_date_raised                  => p_date_raised
367     ,p_line_type                    => p_line_type
368     ,p_sequence_number              => p_sequence_number
369     ,p_transfer_status              => p_transfer_status
370     ,p_comments                     => p_comments
371     ,p_currency_code                => p_currency_code
372     ,p_money_amount                 => p_money_amount
373     ,p_standard_amount              => p_standard_amount
374     ,p_trans_information_category   => p_trans_information_category
375     ,p_trans_information1           => p_trans_information1
376     ,p_trans_information10          => p_trans_information10
377     ,p_trans_information11          => p_trans_information11
378     ,p_trans_information12          => p_trans_information12
379     ,p_trans_information13          => p_trans_information13
380     ,p_trans_information14          => p_trans_information14
381     ,p_trans_information15          => p_trans_information15
382     ,p_trans_information16          => p_trans_information16
383     ,p_trans_information17          => p_trans_information17
384     ,p_trans_information18          => p_trans_information18
385     ,p_trans_information19          => p_trans_information19
386     ,p_trans_information2           => p_trans_information2
387     ,p_trans_information20          => p_trans_information20
388     ,p_trans_information3           => p_trans_information3
389     ,p_trans_information4           => p_trans_information4
390     ,p_trans_information5           => p_trans_information5
391     ,p_trans_information6           => p_trans_information6
392     ,p_trans_information7           => p_trans_information7
393     ,p_trans_information8           => p_trans_information8
394     ,p_trans_information9           => p_trans_information9
395     ,p_transfer_date                => p_transfer_date
396     ,p_transfer_message             => p_transfer_message
397     ,p_unitary_amount               => p_unitary_amount
398     ,p_booking_deal_id              => p_booking_deal_id
399     ,p_booking_id                   => p_booking_id
400     ,p_resource_allocation_id       => p_resource_allocation_id
401     ,p_resource_booking_id          => p_resource_booking_id
402     ,p_last_update_date             => p_last_update_date
403     ,p_last_updated_by              => p_last_updated_by
404     ,p_last_update_login            => p_last_update_login
405     ,p_created_by                   => p_created_by
406     ,p_creation_date                => p_creation_date
407     ,p_tfl_information_category     => p_tfl_information_category
408     ,p_tfl_information1             => p_tfl_information1
409     ,p_tfl_information2             => p_tfl_information2
410     ,p_tfl_information3             => p_tfl_information3
411     ,p_tfl_information4             => p_tfl_information4
412     ,p_tfl_information5             => p_tfl_information5
413     ,p_tfl_information6             => p_tfl_information6
414     ,p_tfl_information7             => p_tfl_information7
415     ,p_tfl_information8             => p_tfl_information8
416     ,p_tfl_information9             => p_tfl_information9
417     ,p_tfl_information10            => p_tfl_information10
418     ,p_tfl_information11            => p_tfl_information11
419     ,p_tfl_information12            => p_tfl_information12
420     ,p_tfl_information13            => p_tfl_information13
421     ,p_tfl_information14            => p_tfl_information14
422     ,p_tfl_information15            => p_tfl_information15
423     ,p_tfl_information16            => p_tfl_information16
424     ,p_tfl_information17            => p_tfl_information17
425     ,p_tfl_information18            => p_tfl_information18
426     ,p_tfl_information19            => p_tfl_information19
427     ,p_tfl_information20            => p_tfl_information20
428     ,p_validate                     => l_validate
429     ,p_transaction_type             => p_transaction_type
430     ,p_effective_date               => p_effective_date
431     );
432   --
433   -- Convert API warning boolean parameter values to specific
434   -- messages and add them to Multiple Message List
435   --
436   --
437   -- Convert API non-warning boolean parameter values
438   --
439   --
440   -- Derive the API return status value based on whether
441   -- messages of any type exist in the Multiple Message List.
442   -- Also disable Multiple Message Detection.
443   --
444   p_return_status := hr_multi_message.get_return_status_disable;
445   hr_utility.set_location(' Leaving:' || l_proc,20);
446   --
447 exception
448   when hr_multi_message.error_message_exist then
449     --
450     -- Catch the Multiple Message List exception which
451     -- indicates API processing has been aborted because
452     -- at least one message exists in the list.
453     --
454     rollback to update_finance_line_swi;
455     --
456     -- Reset IN OUT parameters and set OUT parameters
457     --
458     p_object_version_number        := l_object_version_number;
459     p_new_object_version_number    := null;
460     p_date_raised                  := l_date_raised;
461     p_sequence_number              := l_sequence_number;
462     p_return_status := hr_multi_message.get_return_status_disable;
463     hr_utility.set_location(' Leaving:' || l_proc, 30);
464   when others then
465     --
466     -- When Multiple Message Detection is enabled catch
470     -- error.
467     -- any Application specific or other unexpected
468     -- exceptions.  Adding appropriate details to the
469     -- Multiple Message List.  Otherwise re-raise the
471     --
472     rollback to update_finance_line_swi;
473     if hr_multi_message.unexpected_error_add(l_proc) then
474        hr_utility.set_location(' Leaving:' || l_proc,40);
475        raise;
476     end if;
477     --
478     -- Reset IN OUT and set OUT parameters
479     --
480     p_object_version_number        := l_object_version_number;
481     p_new_object_version_number    := null;
482     p_date_raised                  := l_date_raised;
483     p_sequence_number              := l_sequence_number;
484     p_return_status := hr_multi_message.get_return_status_disable;
485     hr_utility.set_location(' Leaving:' || l_proc,50);
486 end update_finance_line;
487 -- ----------------------------------------------------------------------------
488 -- |--------------------------< delete_finance_line >-------------------------|
489 -- ----------------------------------------------------------------------------
490 PROCEDURE delete_finance_line
491   (p_validate                     in     number    default hr_api.g_false_num
492   ,p_finance_line_id              in     number
493   ,p_object_version_number        in     number
494   ,p_return_status                   out nocopy varchar2
495   ) is
496   --
497   -- Variables for API Boolean parameters
498   l_validate                      boolean;
499   --
500   -- Variables for IN/OUT parameters
501   --
502   -- Other variables
503   l_proc    varchar2(72) := g_package ||'delete_finance_line';
504 Begin
505   hr_utility.set_location(' Entering:' || l_proc,10);
506   --
507   -- Issue a savepoint
508   --
509   savepoint delete_finance_line_swi;
510   --
511   -- Initialise Multiple Message Detection
512   --
513   hr_multi_message.enable_message_list;
514   --
515   -- Remember IN OUT parameter IN values
516   --
517   --
518   -- Convert constant values to their corresponding boolean value
519   --
520   l_validate :=
521     hr_api.constant_to_boolean
522       (p_constant_value => p_validate);
523   --
524   -- Register Surrogate ID or user key values
525   --
526   --
527   -- Call API
528   --
529   ota_finance_line_api.delete_finance_line
530     (p_validate                     => l_validate
531     ,p_finance_line_id              => p_finance_line_id
532     ,p_object_version_number        => p_object_version_number
533     );
534   --
535   -- Convert API warning boolean parameter values to specific
536   -- messages and add them to Multiple Message List
537   --
538   --
539   -- Convert API non-warning boolean parameter values
540   --
541   --
542   -- Derive the API return status value based on whether
543   -- messages of any type exist in the Multiple Message List.
544   -- Also disable Multiple Message Detection.
545   --
546   p_return_status := hr_multi_message.get_return_status_disable;
547   hr_utility.set_location(' Leaving:' || l_proc,20);
548   --
549 exception
550   when hr_multi_message.error_message_exist then
551     --
552     -- Catch the Multiple Message List exception which
553     -- indicates API processing has been aborted because
554     -- at least one message exists in the list.
555     --
556     rollback to delete_finance_line_swi;
557     --
558     -- Reset IN OUT parameters and set OUT parameters
559     --
560     p_return_status := hr_multi_message.get_return_status_disable;
561     hr_utility.set_location(' Leaving:' || l_proc, 30);
562   when others then
563     --
564     -- When Multiple Message Detection is enabled catch
565     -- any Application specific or other unexpected
566     -- exceptions.  Adding appropriate details to the
567     -- Multiple Message List.  Otherwise re-raise the
568     -- error.
569     --
570     rollback to delete_finance_line_swi;
571     if hr_multi_message.unexpected_error_add(l_proc) then
572        hr_utility.set_location(' Leaving:' || l_proc,40);
573        raise;
574     end if;
575     --
576     -- Reset IN OUT and set OUT parameters
577     --
578     p_return_status := hr_multi_message.get_return_status_disable;
579     hr_utility.set_location(' Leaving:' || l_proc,50);
580 end delete_finance_line;
581 end ota_finance_line_swi;