DBA Data[Home] [Help]

PACKAGE BODY: APPS.OTA_RESOURCE_BOOKING_SWI

Source


1 Package Body ota_resource_booking_swi As
2 /* $Header: ottrbswi.pkb 120.3 2006/03/06 02:31:50 rdola noship $ */
3 --
4 -- Package variables
5 --
6 g_package  varchar2(33) := 'ota_resource_booking_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_resource_booking >-----------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_resource_booking
12   (p_effective_date               in     date
13   ,p_supplied_resource_id         in     number
14   ,p_date_booking_placed          in     date
15   ,p_status                       in     varchar2
16   ,p_event_id                     in     number    default null
17   ,p_absolute_price               in     number    default null
18   ,p_booking_person_id            in     number    default null
19   ,p_comments                     in     varchar2  default null
20   ,p_contact_name                 in     varchar2  default null
21   ,p_contact_phone_number         in     varchar2  default null
22   ,p_delegates_per_unit           in     number    default null
23   ,p_quantity                     in     number    default null
24   ,p_required_date_from           in     date      default null
25   ,p_required_date_to             in     date      default null
26   ,p_required_end_time            in     varchar2  default null
27   ,p_required_start_time          in     varchar2  default null
28   ,p_deliver_to                   in     varchar2  default null
29   ,p_primary_venue_flag           in     varchar2  default null
30   ,p_role_to_play                 in     varchar2  default null
31   ,p_trb_information_category     in     varchar2  default null
32   ,p_trb_information1             in     varchar2  default null
33   ,p_trb_information2             in     varchar2  default null
34   ,p_trb_information3             in     varchar2  default null
35   ,p_trb_information4             in     varchar2  default null
36   ,p_trb_information5             in     varchar2  default null
37   ,p_trb_information6             in     varchar2  default null
38   ,p_trb_information7             in     varchar2  default null
39   ,p_trb_information8             in     varchar2  default null
40   ,p_trb_information9             in     varchar2  default null
41   ,p_trb_information10            in     varchar2  default null
42   ,p_trb_information11            in     varchar2  default null
43   ,p_trb_information12            in     varchar2  default null
44   ,p_trb_information13            in     varchar2  default null
45   ,p_trb_information14            in     varchar2  default null
46   ,p_trb_information15            in     varchar2  default null
47   ,p_trb_information16            in     varchar2  default null
48   ,p_trb_information17            in     varchar2  default null
49   ,p_trb_information18            in     varchar2  default null
50   ,p_trb_information19            in     varchar2  default null
51   ,p_trb_information20            in     varchar2  default null
52   ,p_display_to_learner_flag      in     varchar2  default null
53   ,p_book_entire_period_flag    in     varchar2  default null
54   --,p_unbook_request_flag    in     varchar2  default null
55   ,p_chat_id                      in number
56   ,p_forum_id                     in number
57   ,p_validate                     in     number
58   ,p_resource_booking_id          in     number
59   ,p_object_version_number           out nocopy number
60   ,p_return_status                   out nocopy varchar2
61   ,p_finance_header_id            in number           default null
62   ,p_currency_code                in varchar2         default null
63   ,p_money_amount                 in number           default null
64   ,p_finance_line_id              out nocopy number
65   ,p_finance_line_ovn             out nocopy NUMBER
66   ,p_timezone_code                IN VARCHAR2 DEFAULT NULL
67   ) is
68   --
69   -- Variables for API Boolean parameters
70   l_validate                      boolean;
71   --
72   -- Variables for IN/OUT parameters
73   --
74   -- Other variables
75   l_resource_booking_id          number;
76   l_finance_line_id number;
77   l_finance_line_ovn number;
78   l_proc    varchar2(72) := g_package ||'create_resource_booking';
79 Begin
80   hr_utility.set_location(' Entering:' || l_proc,10);
81   --
82   -- Issue a savepoint
83   --
84   savepoint create_resource_booking_swi;
85   --
86   -- Initialise Multiple Message Detection
87   --
88   hr_multi_message.enable_message_list;
89   --
90   -- Remember IN OUT parameter IN values
91   --
92   --
93   -- Convert constant values to their corresponding boolean value
94   --
95   l_validate :=
96     hr_api.constant_to_boolean
97       (p_constant_value => p_validate);
98   --
99   -- Register Surrogate ID or user key values
100   --
101   ota_trb_ins.set_base_key_value
102     (p_resource_booking_id => p_resource_booking_id
103     );
104   --
105   -- Call API
106   --
107   ota_resource_booking_api.create_resource_booking
108     (p_effective_date               => p_effective_date
109     ,p_supplied_resource_id         => p_supplied_resource_id
110     ,p_date_booking_placed          => p_date_booking_placed
111     ,p_status                       => p_status
112     ,p_event_id                     => p_event_id
113     ,p_absolute_price               => p_absolute_price
114     ,p_booking_person_id            => p_booking_person_id
115     ,p_comments                     => p_comments
116     ,p_contact_name                 => p_contact_name
117     ,p_contact_phone_number         => p_contact_phone_number
118     ,p_delegates_per_unit           => p_delegates_per_unit
119     ,p_quantity                     => p_quantity
120     ,p_required_date_from           => p_required_date_from
121     ,p_required_date_to             => p_required_date_to
122     ,p_required_end_time            => p_required_end_time
123     ,p_required_start_time          => p_required_start_time
124     ,p_deliver_to                   => p_deliver_to
125     ,p_primary_venue_flag           => p_primary_venue_flag
126     ,p_role_to_play                 => p_role_to_play
127     ,p_trb_information_category     => p_trb_information_category
128     ,p_trb_information1             => p_trb_information1
129     ,p_trb_information2             => p_trb_information2
130     ,p_trb_information3             => p_trb_information3
131     ,p_trb_information4             => p_trb_information4
132     ,p_trb_information5             => p_trb_information5
133     ,p_trb_information6             => p_trb_information6
134     ,p_trb_information7             => p_trb_information7
135     ,p_trb_information8             => p_trb_information8
136     ,p_trb_information9             => p_trb_information9
137     ,p_trb_information10            => p_trb_information10
138     ,p_trb_information11            => p_trb_information11
139     ,p_trb_information12            => p_trb_information12
140     ,p_trb_information13            => p_trb_information13
141     ,p_trb_information14            => p_trb_information14
142     ,p_trb_information15            => p_trb_information15
143     ,p_trb_information16            => p_trb_information16
144     ,p_trb_information17            => p_trb_information17
145     ,p_trb_information18            => p_trb_information18
146     ,p_trb_information19            => p_trb_information19
147     ,p_trb_information20            => p_trb_information20
148     ,p_display_to_learner_flag      => p_display_to_learner_flag
149     ,p_book_entire_period_flag    => p_book_entire_period_flag
150    -- ,p_unbook_request_flag    => p_unbook_request_flag
151     ,p_chat_id                      => p_chat_id
152     ,p_forum_id                     => p_forum_id
153     ,p_validate                     => l_validate
154     ,p_resource_booking_id          => l_resource_booking_id
155     ,p_object_version_number        => p_object_version_number
156     ,p_timezone_code                => p_timezone_code
157     );
158   --
159 
160    --
161    if p_money_amount is not null then
162       ota_finance.maintain_finance_line
163       ( p_finance_header_id    => p_finance_header_id
164       , p_currency_code        => p_currency_code
165       , p_money_amount         => p_money_amount
166       , p_resource_booking_id  => l_resource_booking_id
167       , p_finance_line_id      => l_finance_line_id
168       , p_object_version_number => l_finance_line_ovn
169       );
170    --
171    p_finance_line_id  := l_finance_line_id;
172    p_finance_line_ovn := l_finance_line_ovn;
173    --
174    end if;
175 
176 
177 
178   -- Convert API warning boolean parameter values to specific
179   -- messages and add them to Multiple Message List
180   --
181   --
182   -- Convert API non-warning boolean parameter values
183   --
184   --
185   -- Derive the API return status value based on whether
186   -- messages of any type exist in the Multiple Message List.
187   -- Also disable Multiple Message Detection.
188   --
189   p_return_status := hr_multi_message.get_return_status_disable;
190   hr_utility.set_location(' Leaving:' || l_proc,20);
191   --
192 exception
193   when hr_multi_message.error_message_exist then
194     --
195     -- Catch the Multiple Message List exception which
196     -- indicates API processing has been aborted because
197     -- at least one message exists in the list.
198     --
199     rollback to create_resource_booking_swi;
200     --
201     -- Reset IN OUT parameters and set OUT parameters
202     --
203     p_object_version_number        := null;
204     p_return_status := hr_multi_message.get_return_status_disable;
205     hr_utility.set_location(' Leaving:' || l_proc, 30);
206   when others then
207     --
208     -- When Multiple Message Detection is enabled catch
209     -- any Application specific or other unexpected
210     -- exceptions.  Adding appropriate details to the
211     -- Multiple Message List.  Otherwise re-raise the
212     -- error.
213     --
214     rollback to create_resource_booking_swi;
215     if hr_multi_message.unexpected_error_add(l_proc) then
216        hr_utility.set_location(' Leaving:' || l_proc,40);
217        raise;
218     end if;
219     --
220     -- Reset IN OUT and set OUT parameters
221     --
222     p_object_version_number        := null;
223     p_return_status := hr_multi_message.get_return_status_disable;
224     hr_utility.set_location(' Leaving:' || l_proc,50);
225 end create_resource_booking;
226 -- ----------------------------------------------------------------------------
227 -- |------------------------< delete_resource_booking >-----------------------|
228 -- ----------------------------------------------------------------------------
229 PROCEDURE delete_resource_booking
230   (p_resource_booking_id          in     number
231   ,p_object_version_number        in     number
232   ,p_validate                     in     number
233   ,p_return_status                   out nocopy varchar2
234   ) is
235   --
236   -- Variables for API Boolean parameters
237   l_validate                      boolean;
238   --
239   -- Variables for IN/OUT parameters
240   --
241   -- Other variables
242   l_proc    varchar2(72) := g_package ||'delete_resource_booking';
243 Begin
244   hr_utility.set_location(' Entering:' || l_proc,10);
245   --
246   -- Issue a savepoint
247   --
248   savepoint delete_resource_booking_swi;
249   --
250   -- Initialise Multiple Message Detection
251   --
252   hr_multi_message.enable_message_list;
253   --
254   -- Remember IN OUT parameter IN values
255   --
256   --
257   -- Convert constant values to their corresponding boolean value
258   --
259   l_validate :=
260     hr_api.constant_to_boolean
261       (p_constant_value => p_validate);
262   --
263   -- Register Surrogate ID or user key values
264   --
265   --
266   -- Call API
267   --
268   ota_resource_booking_api.delete_resource_booking
269     (p_resource_booking_id          => p_resource_booking_id
270     ,p_object_version_number        => p_object_version_number
271     ,p_validate                     => l_validate
272     );
273   --
274   -- Convert API warning boolean parameter values to specific
275   -- messages and add them to Multiple Message List
276   --
277   --
278   -- Convert API non-warning boolean parameter values
279   --
280   --
281   -- Derive the API return status value based on whether
282   -- messages of any type exist in the Multiple Message List.
283   -- Also disable Multiple Message Detection.
284   --
285   p_return_status := hr_multi_message.get_return_status_disable;
286   hr_utility.set_location(' Leaving:' || l_proc,20);
287   --
288 exception
289   when hr_multi_message.error_message_exist then
290     --
291     -- Catch the Multiple Message List exception which
292     -- indicates API processing has been aborted because
293     -- at least one message exists in the list.
294     --
295     rollback to delete_resource_booking_swi;
296     --
297     -- Reset IN OUT parameters and set OUT parameters
298     --
299     p_return_status := hr_multi_message.get_return_status_disable;
300     hr_utility.set_location(' Leaving:' || l_proc, 30);
301   when others then
302     --
303     -- When Multiple Message Detection is enabled catch
304     -- any Application specific or other unexpected
305     -- exceptions.  Adding appropriate details to the
306     -- Multiple Message List.  Otherwise re-raise the
307     -- error.
308     --
309     rollback to delete_resource_booking_swi;
310     if hr_multi_message.unexpected_error_add(l_proc) then
311        hr_utility.set_location(' Leaving:' || l_proc,40);
312        raise;
313     end if;
314     --
315     -- Reset IN OUT and set OUT parameters
316     --
317     p_return_status := hr_multi_message.get_return_status_disable;
318     hr_utility.set_location(' Leaving:' || l_proc,50);
319 end delete_resource_booking;
320 -- ----------------------------------------------------------------------------
321 -- |------------------------< update_resource_booking >-----------------------|
322 -- ----------------------------------------------------------------------------
323 PROCEDURE update_resource_booking
324   (p_effective_date               in     date
325   ,p_supplied_resource_id         in     number
326   ,p_date_booking_placed          in     date
327   ,p_status                       in     varchar2
328   ,p_event_id                     in     number    default hr_api.g_number
329   ,p_absolute_price               in     number    default hr_api.g_number
330   ,p_booking_person_id            in     number    default hr_api.g_number
331   ,p_comments                     in     varchar2  default hr_api.g_varchar2
332   ,p_contact_name                 in     varchar2  default hr_api.g_varchar2
333   ,p_contact_phone_number         in     varchar2  default hr_api.g_varchar2
334   ,p_delegates_per_unit           in     number    default hr_api.g_number
335   ,p_quantity                     in     number    default hr_api.g_number
336   ,p_required_date_from           in     date      default hr_api.g_date
337   ,p_required_date_to             in     date      default hr_api.g_date
338   ,p_required_end_time            in     varchar2  default hr_api.g_varchar2
339   ,p_required_start_time          in     varchar2  default hr_api.g_varchar2
340   ,p_deliver_to                   in     varchar2  default hr_api.g_varchar2
341   ,p_primary_venue_flag           in     varchar2  default hr_api.g_varchar2
342   ,p_role_to_play                 in     varchar2  default hr_api.g_varchar2
343   ,p_trb_information_category     in     varchar2  default hr_api.g_varchar2
344   ,p_trb_information1             in     varchar2  default hr_api.g_varchar2
345   ,p_trb_information2             in     varchar2  default hr_api.g_varchar2
346   ,p_trb_information3             in     varchar2  default hr_api.g_varchar2
347   ,p_trb_information4             in     varchar2  default hr_api.g_varchar2
348   ,p_trb_information5             in     varchar2  default hr_api.g_varchar2
349   ,p_trb_information6             in     varchar2  default hr_api.g_varchar2
350   ,p_trb_information7             in     varchar2  default hr_api.g_varchar2
351   ,p_trb_information8             in     varchar2  default hr_api.g_varchar2
352   ,p_trb_information9             in     varchar2  default hr_api.g_varchar2
353   ,p_trb_information10            in     varchar2  default hr_api.g_varchar2
354   ,p_trb_information11            in     varchar2  default hr_api.g_varchar2
355   ,p_trb_information12            in     varchar2  default hr_api.g_varchar2
356   ,p_trb_information13            in     varchar2  default hr_api.g_varchar2
357   ,p_trb_information14            in     varchar2  default hr_api.g_varchar2
358   ,p_trb_information15            in     varchar2  default hr_api.g_varchar2
359   ,p_trb_information16            in     varchar2  default hr_api.g_varchar2
360   ,p_trb_information17            in     varchar2  default hr_api.g_varchar2
361   ,p_trb_information18            in     varchar2  default hr_api.g_varchar2
362   ,p_trb_information19            in     varchar2  default hr_api.g_varchar2
363   ,p_trb_information20            in     varchar2  default hr_api.g_varchar2
364   ,p_display_to_learner_flag      in     varchar2  default hr_api.g_varchar2
365   ,p_book_entire_period_flag    in     varchar2  default hr_api.g_varchar2
366  -- ,p_unbook_request_flag    in     varchar2  default hr_api.g_varchar2
367   ,p_chat_id                      in     number
368   ,p_forum_id                     in     number
369   ,p_validate                     in     number
370   ,p_resource_booking_id          in     number
371   ,p_object_version_number        in   out nocopy number
372   ,p_return_status                   out nocopy varchar2
373   ,p_finance_header_id            in number           default null
374   ,p_currency_code                in varchar2         default null
375   ,p_money_amount                 in number           default null
376   ,p_finance_line_id              in out nocopy number
377   ,p_finance_line_transfer        in varchar2         default null
378   ,p_finance_line_ovn             in out nocopy number
379   ,p_cancel_finance_line          in varchar2         default null
380   ,p_finance_change_flag          in varchar2         default 'N'
381   ,p_timezone_code                IN VARCHAR2     DEFAULT hr_api.g_varchar2
382   ) is
383   --
384   -- Variables for API Boolean parameters
385   l_validate                      boolean;
386   --
387   -- Variables for IN/OUT parameters
388   l_finance_line_id number;
389   l_finance_function varchar2(1);
390   l_cancelled_flag   varchar2(1);
391   --
392   -- Other variables
393   l_proc    varchar2(72) := g_package ||'update_resource_booking';
394 Begin
395   hr_utility.set_location(' Entering:' || l_proc,10);
396   --
397   -- Issue a savepoint
398   --
399   savepoint update_resource_booking_swi;
400   --
401   -- Initialise Multiple Message Detection
402   --
403   hr_multi_message.enable_message_list;
404   --
405   -- Remember IN OUT parameter IN values
406   --
407   --
408   -- Convert constant values to their corresponding boolean value
409   --
410   l_validate :=
411     hr_api.constant_to_boolean
412       (p_constant_value => p_validate);
413   --
414   -- Register Surrogate ID or user key values
415   --
416   --
417   -- Call API
418   --
419   ota_resource_booking_api.update_resource_booking
420     (p_effective_date               => p_effective_date
421     ,p_supplied_resource_id         => p_supplied_resource_id
422     ,p_date_booking_placed          => p_date_booking_placed
423     ,p_status                       => p_status
424     ,p_event_id                     => p_event_id
425     ,p_absolute_price               => p_absolute_price
426     ,p_booking_person_id            => p_booking_person_id
427     ,p_comments                     => p_comments
428     ,p_contact_name                 => p_contact_name
429     ,p_contact_phone_number         => p_contact_phone_number
430     ,p_delegates_per_unit           => p_delegates_per_unit
431     ,p_quantity                     => p_quantity
432     ,p_required_date_from           => p_required_date_from
433     ,p_required_date_to             => p_required_date_to
434     ,p_required_end_time            => p_required_end_time
435     ,p_required_start_time          => p_required_start_time
436     ,p_deliver_to                   => p_deliver_to
437     ,p_primary_venue_flag           => p_primary_venue_flag
438     ,p_role_to_play                 => p_role_to_play
439     ,p_trb_information_category     => p_trb_information_category
440     ,p_trb_information1             => p_trb_information1
441     ,p_trb_information2             => p_trb_information2
442     ,p_trb_information3             => p_trb_information3
443     ,p_trb_information4             => p_trb_information4
444     ,p_trb_information5             => p_trb_information5
445     ,p_trb_information6             => p_trb_information6
446     ,p_trb_information7             => p_trb_information7
447     ,p_trb_information8             => p_trb_information8
448     ,p_trb_information9             => p_trb_information9
449     ,p_trb_information10            => p_trb_information10
450     ,p_trb_information11            => p_trb_information11
451     ,p_trb_information12            => p_trb_information12
452     ,p_trb_information13            => p_trb_information13
453     ,p_trb_information14            => p_trb_information14
454     ,p_trb_information15            => p_trb_information15
455     ,p_trb_information16            => p_trb_information16
456     ,p_trb_information17            => p_trb_information17
457     ,p_trb_information18            => p_trb_information18
458     ,p_trb_information19            => p_trb_information19
459     ,p_trb_information20            => p_trb_information20
460     ,p_display_to_learner_flag      => p_display_to_learner_flag
461     ,p_book_entire_period_flag    => p_book_entire_period_flag
462   --  ,p_unbook_request_flag    => p_unbook_request_flag
463     ,p_chat_id                      => p_chat_id
464     ,p_forum_id                     => p_forum_id
465     ,p_validate                     => l_validate
466     ,p_resource_booking_id          => p_resource_booking_id
467     ,p_object_version_number        => p_object_version_number
468     ,p_timezone_code                => p_timezone_code
469     );
470   --
471 
472 
473 hr_utility.set_location('Entering:'||l_proc, 10);
474   if p_finance_change_flag = 'Y' then
475      if p_finance_line_id is null then
476         if p_money_amount is not null then
477            l_finance_function := 'I';
478         end if;
479      elsif
480         p_cancel_finance_line = 'Y' then
481            l_finance_function := 'C';
482      elsif
483         p_money_amount is not null then
484            l_finance_function := 'U';
485      end if;
486   end if;
487   --
488 hr_utility.set_location('Entering:'||l_proc, 15);
489 hr_utility.trace('L_FINANCE_FUNCTION = '||l_finance_function);
490   if l_finance_function = 'I' then
491    --
492          ota_finance.maintain_finance_line
493          ( p_finance_header_id    => p_finance_header_id
494          , p_currency_code        => p_currency_code
495          , p_money_amount         => p_money_amount
496          , p_resource_booking_id  => p_resource_booking_id
497          , p_finance_line_id      => l_finance_line_id
498          , p_object_version_number => p_finance_line_ovn
499          );
500       --
501       p_finance_line_id  := l_finance_line_id;
502       --
503    elsif l_finance_function = 'U' then
504       --
505       ota_finance.maintain_finance_line
506          ( p_finance_header_id     => p_finance_header_id
507          , p_finance_line_id       => p_finance_line_id
508          , p_object_version_number => p_finance_line_ovn
509          , p_money_amount          => p_money_amount
510          );
511       --
512    elsif l_finance_function = 'C' then
513       l_cancelled_flag := 'N';
514       ota_tfl_api_business_rules2.cancel_finance_line
515          ( p_finance_line_id       => p_finance_line_id
516          , p_cancelled_flag        => l_cancelled_flag
517          , p_transfer_status       => p_finance_line_transfer
518          , p_finance_header_id     => p_finance_header_id
519          , p_validate              => FALSE);
520    end if;
521 --
522   -- Convert API warning boolean parameter values to specific
523   -- messages and add them to Multiple Message List
524   --
525   --
526   -- Convert API non-warning boolean parameter values
527   --
528   --
529   -- Derive the API return status value based on whether
530   -- messages of any type exist in the Multiple Message List.
531   -- Also disable Multiple Message Detection.
532   --
533   p_return_status := hr_multi_message.get_return_status_disable;
534   hr_utility.set_location(' Leaving:' || l_proc,20);
535   --
536 exception
537   when hr_multi_message.error_message_exist then
538     --
539     -- Catch the Multiple Message List exception which
540     -- indicates API processing has been aborted because
541     -- at least one message exists in the list.
542     --
543     rollback to update_resource_booking_swi;
544     --
545     -- Reset IN OUT parameters and set OUT parameters
546     --
547     p_object_version_number        := null;
548     p_return_status := hr_multi_message.get_return_status_disable;
549     hr_utility.set_location(' Leaving:' || l_proc, 30);
550   when others then
551     --
552     -- When Multiple Message Detection is enabled catch
553     -- any Application specific or other unexpected
554     -- exceptions.  Adding appropriate details to the
555     -- Multiple Message List.  Otherwise re-raise the
556     -- error.
557     --
558     rollback to update_resource_booking_swi;
559     if hr_multi_message.unexpected_error_add(l_proc) then
560        hr_utility.set_location(' Leaving:' || l_proc,40);
561        raise;
562     end if;
563     --
564     -- Reset IN OUT and set OUT parameters
565     --
566     p_object_version_number        := null;
567     p_return_status := hr_multi_message.get_return_status_disable;
568     hr_utility.set_location(' Leaving:' || l_proc,50);
569 end update_resource_booking;
570 --
571 -- ----------------------------------------------------------------------------
572 -- |-----------------------< check_trainer_competence >-----------------------|
573 -- ----------------------------------------------------------------------------
574 procedure check_trainer_competence
575   (p_event_id                       in              number
576   ,p_supplied_resource_id           in              number
577   ,p_required_date_from             in              date
578   ,p_required_date_to               in              date
579   ,p_warning                        out nocopy      varchar2
580   ) is
581   --
582   -- local variables
583   --
584   l_warning       boolean;
585   l_proc          varchar2(72)     := g_package ||'check_trainer_competence';
586   l_end_of_time   date;
587   --
588 Begin
589   --
590   hr_utility.set_location(' Entering:' || l_proc,10);
591   --
592   l_end_of_time := hr_api.g_eot;
593   --
594   ota_trb_api_procedures.check_trainer_competence
595     (p_event_id                      =>   p_event_id
596     ,p_supplied_resource_id          =>   p_supplied_resource_id
597     ,p_required_date_from            =>   p_required_date_from
598     ,p_required_date_to              =>   p_required_date_to
599     ,p_end_of_time                   =>   l_end_of_time
600     ,p_warn                          =>   l_warning
601     );
602   --
603   If l_warning then
604     p_warning := 'Y';
605   else
606     p_warning := 'N';
607   End If;
608   --
609   hr_utility.set_location(' Entering:' || l_proc,20);
610   --
611 End Check_trainer_competence;
612 
613 --
614 -- ----------------------------------------------------------------------------
615 -- |-------------------------< Check_double_booking >-------------------------|
616 -- ----------------------------------------------------------------------------
617 procedure Check_double_booking
618   (p_supplied_resource_id           in              number
619   ,p_required_date_from             in              date
620   ,p_required_start_time            in              varchar2
621   ,p_required_date_to               in              date
622   ,p_required_end_time              in              varchar2
623   ,p_resource_booking_id            in              number
624   ,p_book_entire_period_flag              in              varchar2
625   ,p_warning                        out nocopy      VARCHAR2
626   ,p_timezone_code                  IN              VARCHAR2
627   ) is
628   --
629   -- Local variables
630   --
631   l_warning       boolean;
632   l_proc          varchar2(72)     := g_package ||'Check_double_booking';
633   --
634 Begin
635   --
636   hr_utility.set_location(' Entering:' || l_proc,10);
637   --
638   l_warning := ota_trb_api_procedures.check_double_booking
639                 (p_supplied_resource_id       =>    p_supplied_resource_id
640                 ,p_required_date_from         =>    p_required_date_from
641                 ,p_required_start_time        =>    p_required_start_time
642                 ,p_required_date_to           =>    p_required_date_to
643                 ,p_required_end_time          =>    p_required_end_time
644                 ,p_resource_booking_id        =>    p_resource_booking_id
645 		,p_book_entire_period_flag    => p_book_entire_period_flag
646 		,p_timezone                   => p_timezone_code
647                 );
648   --
649   if l_warning then
650     --
651     p_warning := 'Y';
652   else
653     --
654     p_warning := 'N';
655   End If;
656   --
657   hr_utility.set_location(' Entering:' || l_proc,20);
658   --
659 End Check_double_booking;
660 --
661 end ota_resource_booking_swi;