DBA Data[Home] [Help]

PACKAGE BODY: APPS.PQP_RIW_ENROLL_WRAPPER

Source


1 package  body pqp_riw_enroll_wrapper as
2 /* $Header: pqpriwenwr.pkb 120.0.12010000.5 2009/04/24 08:35:50 psengupt noship $ */
3 
4 -- =============================================================================
5 -- ~ Package Body Global variables:
6 -- =============================================================================
7 g_package  varchar2(33) := 'enrollment_wrapper_api.';
8 g_enroll_rec                     ota_delegate_bookings_v%rowtype;
9 g_interface_code              varchar2(150);
10 
11 -- =============================================================================
12 -- Default_Record_Values:
13 -- =============================================================================
14 function Default_Enroll_Rec
15          return ota_delegate_bookings_v%rowtype is
16   l_proc_name    constant varchar2(150) := g_package||'Default_Enroll_Rec';
17   l_enroll_rec     ota_delegate_bookings_v%rowtype;
18 
19 begin
20 
21   Hr_Utility.set_location(' Entering: '||l_proc_name, 5);
22   /*
23    ==========================================================================
24    g_varchar2  constant varchar2(9) := '$Sys_Def$';
25    g_number  constant number        := -987123654;
26    g_date  constant date            := to_date('01-01-4712', 'DD-MM-SYYYY');
27    ==========================================================================
28   */
29   Hr_Utility.set_location(' One : ', 5);
30 
31   l_enroll_rec.booking_status_type_id       :=  hr_api.g_number      ;
35   l_enroll_rec.event_id                     :=  hr_api.g_number      ;
32   l_enroll_rec.delegate_person_id           :=  hr_api.g_number      ;
33   l_enroll_rec.sponsor_contact_id           :=  hr_api.g_number      ;
34   l_enroll_rec.business_group_id            :=  hr_api.g_number      ;
36   l_enroll_rec.customer_id                  :=  hr_api.g_number      ;
37   l_enroll_rec.authorizer_person_id         :=  hr_api.g_number      ;
38   l_enroll_rec.date_booking_placed          :=  hr_api.g_date        ;
39 
40   l_enroll_rec.correspondent                 :=  hr_api.g_varchar2    ;
41   l_enroll_rec.internal_booking_flag        :=  hr_api.g_varchar2    ;
42   l_enroll_rec.number_of_places             :=  hr_api.g_number      ;
43   l_enroll_rec.administrator                :=  hr_api.g_number      ;
44   l_enroll_rec.booking_priority             :=  hr_api.g_varchar2    ;
45   l_enroll_rec.comments                     :=  hr_api.g_varchar2    ;
46   l_enroll_rec.contact_address_id           :=  hr_api.g_number      ;
47 
48   l_enroll_rec.correspondent_phone       :=  hr_api.g_varchar2    ;
49   l_enroll_rec.correspondent_fax         :=  hr_api.g_varchar2    ;
50   l_enroll_rec.third_party_customer_id      :=  hr_api.g_number      ;
51   l_enroll_rec.third_party_contact_id       :=  hr_api.g_number      ;
52   l_enroll_rec.third_party_address_id       :=  hr_api.g_number      ;
53   l_enroll_rec.third_party_contact_phone    :=  hr_api.g_varchar2    ;
54   l_enroll_rec.third_party_contact_fax      :=  hr_api.g_varchar2    ;
55   l_enroll_rec.date_status_changed          :=  hr_api.g_date        ;
56 
57 --  l_enroll_rec.status_change_comments       :=  hr_api.g_varchar2    ;
58   l_enroll_rec.failure_reason               :=  hr_api.g_varchar2    ;
59   l_enroll_rec.attendance_result            :=  hr_api.g_varchar2    ;
60   l_enroll_rec.language_id                  :=  hr_api.g_number      ;
61   l_enroll_rec.source_of_booking            :=  hr_api.g_varchar2    ;
62   l_enroll_rec.special_booking_instructions :=  hr_api.g_varchar2    ;
63   l_enroll_rec.successful_attendance_flag   :=  hr_api.g_varchar2    ;
64   l_enroll_rec.tdb_information_category     :=  hr_api.g_varchar2    ;
65   l_enroll_rec.tdb_information1             :=  hr_api.g_varchar2    ;
66 
67   l_enroll_rec.tdb_information2             :=  hr_api.g_varchar2    ;
68   l_enroll_rec.tdb_information3             :=  hr_api.g_varchar2    ;
69   l_enroll_rec.tdb_information4             :=  hr_api.g_varchar2    ;
70   l_enroll_rec.tdb_information5             :=  hr_api.g_varchar2    ;
71   l_enroll_rec.tdb_information6             :=  hr_api.g_varchar2    ;
72   l_enroll_rec.tdb_information7             :=  hr_api.g_varchar2    ;
73   l_enroll_rec.tdb_information8             :=  hr_api.g_varchar2    ;
74   l_enroll_rec.tdb_information9             :=  hr_api.g_varchar2    ;
75   l_enroll_rec.tdb_information10            :=  hr_api.g_varchar2    ;
76 
77   l_enroll_rec.tdb_information11            :=  hr_api.g_varchar2    ;
78   l_enroll_rec.tdb_information12            :=  hr_api.g_varchar2    ;
79   l_enroll_rec.tdb_information13            :=  hr_api.g_varchar2    ;
80   l_enroll_rec.tdb_information14            :=  hr_api.g_varchar2    ;
81   l_enroll_rec.tdb_information15            :=  hr_api.g_varchar2    ;
82   l_enroll_rec.tdb_information16            :=  hr_api.g_varchar2    ;
83   l_enroll_rec.tdb_information17            :=  hr_api.g_varchar2 ;
84   l_enroll_rec.tdb_information18            :=  hr_api.g_varchar2 ;
85   l_enroll_rec.tdb_information19            :=  hr_api.g_varchar2 ;
86   l_enroll_rec.tdb_information20            :=  hr_api.g_varchar2 ;
87   l_enroll_rec.finance_header_id            :=  hr_api.g_number   ;
88 
89   l_enroll_rec.standard_amount              :=  hr_api.g_number   ;
90 
91 --  l_enroll_rec.unitary_amount               :=  hr_api.g_number   ;
92 
93   l_enroll_rec.money_amount                 :=  hr_api.g_number   ;
94 
95   l_enroll_rec.currency_code                :=  hr_api.g_varchar2 ;
96 
97   l_enroll_rec.booking_deal_type            :=  hr_api.g_varchar2 ;
98 
99   l_enroll_rec.booking_deal_id              :=  hr_api.g_number   ;
100   Hr_Utility.set_location(' OneThree : ', 5);
101 --  l_enroll_rec.enrollment_type              :=  hr_api.g_varchar2 ;
102   l_enroll_rec.organization_id              :=  hr_api.g_number   ;
103   l_enroll_rec.sponsor_person_id            :=  hr_api.g_number   ;
104   l_enroll_rec.sponsor_assignment_id        :=  hr_api.g_number   ;
105   l_enroll_rec.person_address_id            :=  hr_api.g_number   ;
106   l_enroll_rec.delegate_assignment_id       :=  hr_api.g_number   ;
107   l_enroll_rec.delegate_contact_id          :=  hr_api.g_number   ;
108   l_enroll_rec.correspondent_email       :=  hr_api.g_varchar2 ;
109   l_enroll_rec.third_party_email            :=  hr_api.g_varchar2 ;
110   l_enroll_rec.correspondent_address_type   :=  hr_api.g_varchar2 ;
111   l_enroll_rec.line_id                      :=  hr_api.g_number   ;
112   Hr_Utility.set_location(' OneFour : ', 5);
113   l_enroll_rec.org_id                       :=  hr_api.g_number   ;
114   Hr_Utility.set_location(' 1 : ', 5);
115 --  l_enroll_rec.daemon_flag                  :=  hr_api.g_varchar2 ;
116   Hr_Utility.set_location(' 2 : ', 5);
117 --  l_enroll_rec.daemon_type                  :=  hr_api.g_varchar2 ;
118   Hr_Utility.set_location(' 3 : ', 5);
119   l_enroll_rec.old_event_id                 :=  hr_api.g_number   ;
120   l_enroll_rec.quote_line_id                :=  hr_api.g_number   ;
121   l_enroll_rec.interface_source             :=  hr_api.g_varchar2 ;
122   Hr_Utility.set_location(' 4 : ', 5);
123   l_enroll_rec.total_training_time          :=  hr_api.g_varchar2 ;
124   Hr_Utility.set_location(' 5 : ', 5);
128   l_enroll_rec.completed_content            :=  hr_api.g_number   ;
125   l_enroll_rec.content_player_status        :=  hr_api.g_varchar2 ;
126   l_enroll_rec.score                        :=  hr_api.g_number   ;
127   Hr_Utility.set_location(' OneTwo : ', 5);
129   Hr_Utility.set_location(' OneFive : ', 5);
130   l_enroll_rec.total_content                :=  hr_api.g_number   ;
131   l_enroll_rec.booking_justification_id     :=  hr_api.g_number   ;
132 --  l_enroll_rec.is_history_flag       	    :=  hr_api.g_varchar2 ;
133 
134 
135   Hr_Utility.set_location('Leaving: '||l_proc_name, 80);
136   return l_enroll_rec;
137 exception
138   when others then
139   Hr_Utility.set_location('Leaving: '||l_proc_name, 90);
140   raise;
141 
142 end Default_Enroll_Rec;
143 
144 
145 -- =============================================================================
146 -- Get_Record_Values:
147 -- =============================================================================
148 function Get_Record_Values
149         (p_interface_code in varchar2 default null)
150          return ota_delegate_bookings_v%rowtype is
151 
152   cursor bne_cols(c_interface_code in varchar2) is
153   select lower(bic.interface_col_name) interface_col_name
154     from bne_interface_cols_b  bic
155    where bic.interface_code = c_interface_code
156      and bic.display_flag ='Y';
157   --and bic.interface_col_type <> 2;
158 
159   -- To query cols which are not displayed (DFF segments)
160    cursor bne_cols_no_disp(c_interface_code in varchar2) is
161   select lower(bic.interface_col_name) interface_col_name
162     from bne_interface_cols_b  bic
163    where bic.interface_code = c_interface_code
164      and bic.display_flag ='N';
165 
166   l_enroll_rec            ota_delegate_bookings_v%rowtype;
167   col_name             varchar2(150);
168   l_proc_name constant varchar2(150) := g_package||'Get_Record_Values';
169 begin
170 
171   Hr_Utility.set_location(' Entering: '||l_proc_name, 5);
172  hr_utility.set_location('p_interface_code'||p_interface_code, 10);
173   l_enroll_rec := Default_Enroll_Rec;
174  hr_utility.set_location('p_interface_code'||p_interface_code, 20);
175  hr_utility.set_location('g_interface_code'||g_interface_code, 5);
176 
177 
178   for col_rec in bne_cols (g_interface_code)
179   loop
180  hr_utility.set_location(' in loop col_rec.interface_col_name'||col_rec.interface_col_name, 15);
181    case col_rec.interface_col_name
182 
183     when 'p_booking_status_type_id' then
184           l_enroll_rec.booking_status_type_id := g_enroll_rec.booking_status_type_id;
185     when 'p_delegate_person_id' then
186           l_enroll_rec.delegate_person_id := g_enroll_rec.delegate_person_id;
187     when 'p_contact_id' then
188           l_enroll_rec.sponsor_contact_id := g_enroll_rec.sponsor_contact_id;
189     when 'p_business_grouid' then
190           l_enroll_rec.business_group_id := g_enroll_rec.business_group_id;
191     when 'p_event_id' then
192           l_enroll_rec.event_id := g_enroll_rec.event_id;
193     when 'p_customer_id' then
194           l_enroll_rec.customer_id := g_enroll_rec.customer_id;
195     when 'p_authorizer_person_id' then
196           l_enroll_rec.authorizer_person_id := g_enroll_rec.authorizer_person_id;
197     when 'p_date_booking_placed' then
198           l_enroll_rec.date_booking_placed := g_enroll_rec.date_booking_placed;
199     when 'p_corespondent' then
200           l_enroll_rec.correspondent := g_enroll_rec.correspondent;
201     when 'p_internal_booking_flag' then
202           l_enroll_rec.internal_booking_flag := g_enroll_rec.internal_booking_flag;
203     when 'p_number_of_places' then
204           l_enroll_rec.number_of_places := g_enroll_rec.number_of_places;
205     when 'p_administrator' then
206           l_enroll_rec.administrator := g_enroll_rec.administrator;
207     when 'p_booking_priority' then
208           l_enroll_rec.booking_priority := g_enroll_rec.booking_priority;
209     when 'p_comments' then
210           l_enroll_rec.comments := g_enroll_rec.comments;
211     when 'p_contact_address_id' then
212           l_enroll_rec.contact_address_id := g_enroll_rec.contact_address_id;
213     when 'p_delegate_contact_phone' then
214           l_enroll_rec.correspondent_phone := g_enroll_rec.correspondent_phone;
215     when 'p_delegate_contact_fax' then
216           l_enroll_rec.correspondent_fax := g_enroll_rec.correspondent_fax;
217     when 'p_third_party_customer_id' then
218           l_enroll_rec.third_party_customer_id := g_enroll_rec.third_party_customer_id;
219     when 'p_third_party_contact_id' then
220           l_enroll_rec.third_party_contact_id := g_enroll_rec.third_party_contact_id;
221     when 'p_third_party_address_id' then
222           l_enroll_rec.third_party_address_id := g_enroll_rec.third_party_address_id;
223     when 'p_third_party_contact_phone' then
224           l_enroll_rec.third_party_contact_phone := g_enroll_rec.third_party_contact_phone;
225     when 'p_third_party_contact_fax' then
226           l_enroll_rec.third_party_contact_fax := g_enroll_rec.third_party_contact_fax;
227     when 'p_date_status_changed' then
228           l_enroll_rec.date_status_changed := g_enroll_rec.date_status_changed;
229 --    when 'p_status_change_comments' then
230   --        l_enroll_rec.status_change_comments := g_enroll_rec.status_change_comments;
231     when 'p_failure_reason' then
232           l_enroll_rec.failure_reason := g_enroll_rec.failure_reason;
233     when 'p_attendance_result' then
234           l_enroll_rec.attendance_result := g_enroll_rec.attendance_result;
235     when 'p_language_id' then
239     when 'p_special_booking_instructions' then
236           l_enroll_rec.language_id := g_enroll_rec.language_id;
237     when 'p_source_of_booking' then
238           l_enroll_rec.source_of_booking := g_enroll_rec.source_of_booking;
240           l_enroll_rec.special_booking_instructions := g_enroll_rec.special_booking_instructions;
241     when 'p_successful_attendance_flag' then
242           l_enroll_rec.successful_attendance_flag := g_enroll_rec.successful_attendance_flag;
243     when 'p_finance_header_id' then
244           l_enroll_rec.finance_header_id := g_enroll_rec.finance_header_id;
245     when 'p_standard_amount' then
246           l_enroll_rec.standard_amount := g_enroll_rec.standard_amount;
247 --    when 'p_unitary_amount' then
248   --        l_enroll_rec.unitary_amount := g_enroll_rec.unitary_amount;
249     when 'p_money_amount' then
250           l_enroll_rec.money_amount := g_enroll_rec.money_amount;
251     when 'p_currency_code' then
252           l_enroll_rec.currency_code := g_enroll_rec.currency_code;
253     when 'p_booking_deal_type' then
254           l_enroll_rec.booking_deal_type := g_enroll_rec.booking_deal_type;
255     when 'p_booking_deal_id' then
256           l_enroll_rec.booking_deal_id := g_enroll_rec.booking_deal_id;
257 --    when 'p_enrollment_type' then
258   --        l_enroll_rec.enrollment_type := g_enroll_rec.enrollment_type;
259     when 'p_organization_id' then
260           l_enroll_rec.organization_id := g_enroll_rec.organization_id;
261     when 'p_sponsor_person_id' then
262           l_enroll_rec.sponsor_person_id := g_enroll_rec.sponsor_person_id;
263     when 'p_sponsor_assignment_id' then
264           l_enroll_rec.sponsor_assignment_id := g_enroll_rec.sponsor_assignment_id;
265     when 'p_person_address_id' then
266           l_enroll_rec.person_address_id := g_enroll_rec.person_address_id;
267     when 'p_delegate_assignment_id' then
268           l_enroll_rec.delegate_assignment_id := g_enroll_rec.delegate_assignment_id;
269     when 'p_delegate_contact_id' then
270           l_enroll_rec.delegate_contact_id := g_enroll_rec.delegate_contact_id;
271     when 'p_delegate_contact_email' then
272           l_enroll_rec.correspondent_email := g_enroll_rec.correspondent_email;
273     when 'p_third_party_email' then
274           l_enroll_rec.third_party_email := g_enroll_rec.third_party_email;
275     when 'p_person_address_type' then
276           l_enroll_rec.correspondent_address_type := g_enroll_rec.correspondent_address_type;
277     when 'p_line_id' then
278           l_enroll_rec.line_id := g_enroll_rec.line_id;
279     when 'p_org_id' then
280           l_enroll_rec.org_id := g_enroll_rec.org_id;
281 --    when 'p_daemon_flag' then
282   --        l_enroll_rec.daemon_flag := g_enroll_rec.daemon_flag;
283     when 'p_old_event_id' then
284           l_enroll_rec.old_event_id := g_enroll_rec.old_event_id;
285     when 'p_quote_line_id' then
286           l_enroll_rec.quote_line_id := g_enroll_rec.quote_line_id;
287     when 'p_interface_source' then
288           l_enroll_rec.interface_source := g_enroll_rec.interface_source;
289     when 'p_total_training_time' then
290           l_enroll_rec.total_training_time := g_enroll_rec.total_training_time;
291     when 'p_content_player_status' then
292           l_enroll_rec.content_player_status := g_enroll_rec.content_player_status;
293     when 'p_score' then
294           l_enroll_rec.score := g_enroll_rec.score;
295     when 'p_completed_content' then
296           l_enroll_rec.completed_content := g_enroll_rec.completed_content;
297     when 'p_total_content' then
298           l_enroll_rec.total_content := g_enroll_rec.total_content;
299     when 'p_booking_justification_id' then
300           l_enroll_rec.booking_justification_id := g_enroll_rec.booking_justification_id;
301 --    when 'p_is_history_flag' then
302 --          l_enroll_rec.is_history_flag := g_enroll_rec.is_history_flag;
303 
304 
305 
306     -- DFF
307     when 'p_tdb_information_category' then
308           l_enroll_rec.tdb_information_category := g_enroll_rec.tdb_information_category;
309           if l_enroll_rec.tdb_information_category is not null then
310           for col_rec1 in bne_cols_no_disp(g_interface_code) loop
311 
312              case col_rec1.interface_col_name
313              when 'p_tdb_information1' then
314                    l_enroll_rec.tdb_information1 := g_enroll_rec.tdb_information1;
315              when 'p_tdb_information2' then
316                    l_enroll_rec.tdb_information2 := g_enroll_rec.tdb_information2;
317              when 'p_tdb_information3' then
318                    l_enroll_rec.tdb_information3 := g_enroll_rec.tdb_information3;
319              when 'p_tdb_information4' then
320                    l_enroll_rec.tdb_information4 := g_enroll_rec.tdb_information4;
321              when 'p_tdb_information5' then
322                    l_enroll_rec.tdb_information5 := g_enroll_rec.tdb_information5;
323              when 'p_tdb_information6' then
324                    l_enroll_rec.tdb_information6 := g_enroll_rec.tdb_information6;
325              when 'p_tdb_information7' then
326                    l_enroll_rec.tdb_information7 := g_enroll_rec.tdb_information7;
327              when 'p_tdb_information8' then
328                    l_enroll_rec.tdb_information8 := g_enroll_rec.tdb_information8;
329              when 'p_tdb_information9' then
330                    l_enroll_rec.tdb_information9 := g_enroll_rec.tdb_information9;
331              when 'p_tdb_information10' then
332                    l_enroll_rec.tdb_information10 := g_enroll_rec.tdb_information10;
333              when 'p_tdb_information11' then
334                    l_enroll_rec.tdb_information11 := g_enroll_rec.tdb_information11;
335              when 'p_tdb_information12' then
336                    l_enroll_rec.tdb_information12 := g_enroll_rec.tdb_information12;
340                    l_enroll_rec.tdb_information14 := g_enroll_rec.tdb_information14;
337              when 'p_tdb_information13' then
338                    l_enroll_rec.tdb_information13 := g_enroll_rec.tdb_information13;
339              when 'p_tdb_information14' then
341              when 'p_tdb_information15' then
342                    l_enroll_rec.tdb_information15 := g_enroll_rec.tdb_information15;
343              when 'p_tdb_information16' then
344                    l_enroll_rec.tdb_information16 := g_enroll_rec.tdb_information16;
345              when 'p_tdb_information17' then
346                    l_enroll_rec.tdb_information17 := g_enroll_rec.tdb_information17;
347              when 'p_tdb_information18' then
348                    l_enroll_rec.tdb_information18 := g_enroll_rec.tdb_information18;
349              when 'p_tdb_information19' then
350                    l_enroll_rec.tdb_information19 := g_enroll_rec.tdb_information19;
351              when 'p_tdb_information20' then
352                    l_enroll_rec.tdb_information20 := g_enroll_rec.tdb_information20;
353              else
354                   null;
355              end case;
356             end loop;
357            end if;
358    else
359       null;
360    end case;
361   end loop;
362   Hr_Utility.set_location(' Leaving: '||l_proc_name, 80);
363   return l_enroll_rec;
364 
365 end Get_Record_Values;
366 
367 -- =============================================================================
368 -- InsUpd_Enroll:
369 -- =============================================================================
370 procedure InsUpd_Enroll
371 ( p_effective_date               in     date	   default null
372   ,p_booking_id                   in     number
373   ,p_booking_status_type_id       in     number
374   ,p_delegate_person_id           in     number    default null
375   ,p_contact_id                   in     number    default null
376   ,p_business_group_id            in     number
377   ,p_event_id                     in     number
378   ,p_customer_id                  in     number    default null
379   ,p_authorizer_person_id         in     number    default null
380   ,p_date_booking_placed          in     date
381   ,p_corespondent                 in     varchar2  default null
382   ,p_internal_booking_flag        in     varchar2
383   ,p_number_of_places             in     number
384   ,p_object_version_number        in     number
385   ,p_administrator                in     number    default null
386   ,p_booking_priority             in     varchar2  default null
387   ,p_comments                     in     varchar2  default null
388   ,p_contact_address_id           in     number    default null
389   ,p_delegate_contact_phone       in     varchar2  default null
390   ,p_delegate_contact_fax         in     varchar2  default null
391   ,p_third_party_customer_id      in     number    default null
392   ,p_third_party_contact_id       in     number    default null
393   ,p_third_party_address_id       in     number    default null
394   ,p_third_party_contact_phone    in     varchar2  default null
395   ,p_third_party_contact_fax      in     varchar2  default null
396   ,p_date_status_changed          in     date      default null
397   ,p_failure_reason               in     varchar2  default null
398   ,p_attendance_result            in     varchar2  default null
399   ,p_language_id                  in     number    default null
400   ,p_source_of_booking            in     varchar2  default null
401   ,p_special_booking_instructions in     varchar2  default null
402   ,p_successful_attendance_flag   in     varchar2  default null
403   ,p_tdb_information_category     in     varchar2  default null
404   ,p_tdb_information1             in     varchar2  default null
405   ,p_tdb_information2             in     varchar2  default null
406   ,p_tdb_information3             in     varchar2  default null
407   ,p_tdb_information4             in     varchar2  default null
408   ,p_tdb_information5             in     varchar2  default null
409   ,p_tdb_information6             in     varchar2  default null
410   ,p_tdb_information7             in     varchar2  default null
411   ,p_tdb_information8             in     varchar2  default null
412   ,p_tdb_information9             in     varchar2  default null
413   ,p_tdb_information10            in     varchar2  default null
414   ,p_tdb_information11            in     varchar2  default null
415   ,p_tdb_information12            in     varchar2  default null
416   ,p_tdb_information13            in     varchar2  default null
417   ,p_tdb_information14            in     varchar2  default null
418   ,p_tdb_information15            in     varchar2  default null
419   ,p_tdb_information16            in     varchar2  default null
420   ,p_tdb_information17            in     varchar2  default null
421   ,p_tdb_information18            in     varchar2  default null
422   ,p_tdb_information19            in     varchar2  default null
423   ,p_tdb_information20            in     varchar2  default null
424   ,p_create_finance_line          in     varchar2  default null
425   ,p_finance_header_id            in     number    default null
426   ,p_currency_code                in     varchar2  default null
427   ,p_standard_amount              in     number    default null
428   ,p_unitary_amount               in     number    default null
429   ,p_money_amount                 in     number    default null
430   ,p_booking_deal_id              in     number    default null
431   ,p_booking_deal_type            in     varchar2  default null
432   ,p_finance_line_id              in out nocopy number
433   ,p_enrollment_type              in     varchar2  default null
437   ,p_sponsor_assignment_id        in     number    default null
434   ,p_validate                     in     number    default hr_api.g_false_num
435   ,p_organization_id              in     number    default null
436   ,p_sponsor_person_id            in     number    default null
438   ,p_person_address_id            in     number    default null
439   ,p_delegate_assignment_id       in     number    default null
440   ,p_delegate_contact_id          in     number    default null
441   ,p_delegate_contact_email       in     varchar2  default null
442   ,p_third_party_email            in     varchar2  default null
443   ,p_person_address_type          in     varchar2  default null
444   ,p_line_id                      in     number    default null
445   ,p_org_id                       in     number    default null
446   ,p_daemon_flag                  in     varchar2  default null
447   ,p_daemon_type                  in     varchar2  default null
448   ,p_old_event_id                 in     number    default null
449   ,p_quote_line_id                in     number    default null
450   ,p_interface_source             in     varchar2  default null
451   ,p_total_training_time          in     varchar2  default null
452   ,p_content_player_status        in     varchar2  default null
453   ,p_score                        in     number    default null
454   ,p_completed_content            in     number    default null
455   ,p_total_content                in     number    default null
456   ,p_return_status                out 	 nocopy    varchar2
457   ,p_booking_justification_id 	  in 	 number    default null
458   ,p_is_history_flag   		  in 	 varchar2  default 'N'
459   ,p_override_prerequisites 	  in 	 varchar2  default null
460   ,p_override_learner_access 	  in 	 varchar2  default null
461   ,P_CRT_UPD			  in 	 varchar2   default null
462   ,p_status_change_comments       in	 varchar2  default hr_api.g_varchar2
463   ,p_update_finance_line          in 	varchar2  default hr_api.g_varchar2
464   ,p_tfl_object_version_number    in    number default null
465   ) is
466 
467   --
468   -- Variables for API Boolean parameters
469   l_validate                      boolean;
470 
471   --
472   -- Variables for IN/OUT parameters
473   l_finance_line_id               number;
474   --
475   -- Other variables
476   l_proc    varchar2(72) := g_package ||'ENROLLMENT_WRAPPER_API';
477   l_booking_id                   number;
478   l_booking			 number;
479   l_create_flag			 number;
480   l_error_msg            	 varchar2(4000);
481   m_validate 		         number :=0; -- No validation
482 
483   --  p_status_change_comments        varchar2(30)  default hr_api.g_varchar2;
484   --  p_update_finance_line           varchar2(30)  default hr_api.g_varchar2;
485   l_tfl_object_version_number     number;
486   l_date_booking_placed ota_delegate_bookings.date_booking_placed%TYPE;
487   l_date_status_changed ota_delegate_bookings.date_status_changed%TYPE;
488   c_delegate_assignment_id		number default null;
489   c_sponsor_assignment_id		number default null;
490 
491   --$ Get upload mode - "Create and Update" (C) or "Update Only" (U)
492     -- or "View/Download Only" (D)
493   g_crt_upd                     varchar2 (1);
494 
495   --$ Exceptions
496   e_upl_not_allowed exception; -- when mode is 'View Only'
497   e_crt_not_allowed exception; -- when mode is 'Update Only'
498   g_upl_err_msg varchar2(100) := 'Upload NOT allowed.';
499   g_crt_err_msg varchar2(100) := 'Creating NOT allowed.';
500 
501   l_bo_id         number(9);
502   l_object_version_number    number(3);
503   l_obj_ver_num      number(3);
504 
505   l_enroll_rec     ota_delegate_bookings_v%rowtype;
506   l_interface_code   varchar2(40);
507   l_crt_upd_len         number;
508 
509       CURSOR booking_csr
510         IS
511        SELECT b.date_booking_placed
512          FROM   ota_delegate_bookings b
513        WHERE  b.booking_id = p_booking_id;
514 
515 
516       CURSOR deleg_ass_id
517         IS
518       SELECT asg.assignment_id
519         FROM per_assignments_f asg,per_people_f  per,PER_PERSON_TYPES PPT
520       WHERE per.person_id = asg.person_id
521             and ((asg.primary_flag = 'Y' and ppt.system_person_type in ('EMP','CWK','OTHER'))
522             OR (asg.assignment_type = 'A' and ppt.system_person_type ='APL'))
523             and (SYSDATE BETWEEN ASG.EFFECTIVE_START_DATE and ASG.EFFECTIVE_END_DATE)
524             and (SYSDATE BETWEEN per.EFFECTIVE_START_DATE AND per.EFFECTIVE_END_DATE)
525             and ppt.person_type_id = per.person_type_id and ppt.business_group_id = per.business_group_id
526             and  per.person_id =p_delegate_person_id;
527 
528       CURSOR spon_ass_id
529         IS
530       SELECT asg.assignment_id
531         FROM per_assignments_f asg,per_people_f  per,PER_PERSON_TYPES PPT
532       WHERE per.person_id = asg.person_id
533             and ((asg.primary_flag = 'Y' and ppt.system_person_type in ('EMP','CWK','OTHER'))
534             OR (asg.assignment_type = 'A' and ppt.system_person_type ='APL'))
535             and (SYSDATE BETWEEN ASG.EFFECTIVE_START_DATE and ASG.EFFECTIVE_END_DATE)
536             and (SYSDATE BETWEEN per.EFFECTIVE_START_DATE AND per.EFFECTIVE_END_DATE)
537             and ppt.person_type_id = per.person_type_id and ppt.business_group_id = per.business_group_id
538             and  per.person_id =p_sponsor_person_id;
539 
540 Begin
541 
542  -- hr_utility.trace_on(null , 'Enroll_Trace');
543   hr_utility.set_location(' Entering:' || l_proc,10);
544   hr_utility.trace('delegate person id : ' || p_delegate_person_id);
545   hr_utility.trace('P_CRT_UPD : ' || P_CRT_UPD);
546 
547   l_crt_upd_len := LENGTH(p_crt_upd);
548   g_crt_upd := SUBSTR(p_crt_upd, 1, 1);
549   IF l_crt_upd_len > 1 THEN
553   END IF;
550       l_interface_code := SUBSTR(p_crt_upd, 3);
551   ELSE
552       l_interface_code := null;
554 
555 
556 
557  -- if (P_CRT_UPD is not null) then
558  --   g_crt_upd      := P_CRT_UPD;
559  -- end if;
560   if (p_delegate_person_id is not null) then
561      OPEN deleg_ass_id;
562      FETCH deleg_ass_id INTO c_delegate_assignment_id;
563      CLOSE deleg_ass_id;
564   end if;
565 
566    if (p_delegate_person_id is not null) then
567      OPEN spon_ass_id;
568      FETCH spon_ass_id INTO c_sponsor_assignment_id;
569      CLOSE spon_ass_id;
570    end if;
571 
572     hr_utility.trace('c_delegate_assignment_id '|| c_delegate_assignment_id);
573     hr_utility.trace('c_sponsor_assignment_id '|| c_sponsor_assignment_id);
574 
575   hr_utility.trace('g_crt_upd : ' || g_crt_upd);
576 
577 
578 
579   --
580   -- Issue a savepoint
581   --
582   l_create_flag :=1;  -- Default value for creation.
583   savepoint enrollment_proc;
584 
585   l_booking_id := p_booking_id;
586   if l_booking_id is not null then
587      l_create_flag := 2;  --update booking
588   else
589      l_create_flag := 1;  --create booking
590   end if;
591 
592   hr_utility.set_location('The booking_id is : ', l_booking_id);
593 
594 
595 
596 hr_utility.trace('l_create_flag'||l_create_flag);
597 
598 
599  if (g_crt_upd = 'D') then
600    raise e_upl_not_allowed;  -- View only flag is enabled but Trying to Upload
601   end if;
602   if (g_crt_upd = 'U' and l_create_flag = 1) then
603    raise e_crt_not_allowed;  -- Update only flag is enabled but Trying to Create
604  end if;
605 
606 
607   --
608   -- Call API
609   --
610 
611   if(l_create_flag =1) then
612     create_delegate_booking
613     (p_effective_date               => p_effective_date
614     ,p_booking_id                   => l_bo_id
615     ,p_booking_status_type_id       => p_booking_status_type_id
616     ,p_delegate_person_id           => p_delegate_person_id
617     ,p_contact_id                   => p_contact_id
618     ,p_business_group_id            => p_business_group_id
619     ,p_event_id                     => p_event_id
620     ,p_customer_id                  => p_customer_id
621     ,p_authorizer_person_id         => p_authorizer_person_id
622     ,p_date_booking_placed          => p_date_booking_placed
623     ,p_corespondent                 => p_corespondent
624     ,p_internal_booking_flag        => p_internal_booking_flag
625     ,p_number_of_places             => p_number_of_places
626     ,p_object_version_number        => l_obj_ver_num
627     ,p_administrator                => p_administrator
628     ,p_booking_priority             => p_booking_priority
629     ,p_comments                     => p_comments
630     ,p_contact_address_id           => p_contact_address_id
631     ,p_delegate_contact_phone       => p_delegate_contact_phone
632     ,p_delegate_contact_fax         => p_delegate_contact_fax
633     ,p_third_party_customer_id      => p_third_party_customer_id
634     ,p_third_party_contact_id       => p_third_party_contact_id
635     ,p_third_party_address_id       => p_third_party_address_id
636     ,p_third_party_contact_phone    => p_third_party_contact_phone
637     ,p_third_party_contact_fax      => p_third_party_contact_fax
638     ,p_date_status_changed          => p_date_status_changed
639     ,p_failure_reason               => p_failure_reason
640     ,p_attendance_result            => p_attendance_result
641     ,p_language_id                  => p_language_id
642     ,p_source_of_booking            => p_source_of_booking
643     ,p_special_booking_instructions => p_special_booking_instructions
644     ,p_successful_attendance_flag   => p_successful_attendance_flag
645     ,p_tdb_information_category     => p_tdb_information_category
646     ,p_tdb_information1             => p_tdb_information1
647     ,p_tdb_information2             => p_tdb_information2
648     ,p_tdb_information3             => p_tdb_information3
649     ,p_tdb_information4             => p_tdb_information4
650     ,p_tdb_information5             => p_tdb_information5
651     ,p_tdb_information6             => p_tdb_information6
652     ,p_tdb_information7             => p_tdb_information7
653     ,p_tdb_information8             => p_tdb_information8
654     ,p_tdb_information9             => p_tdb_information9
655     ,p_tdb_information10            => p_tdb_information10
656     ,p_tdb_information11            => p_tdb_information11
657     ,p_tdb_information12            => p_tdb_information12
658     ,p_tdb_information13            => p_tdb_information13
659     ,p_tdb_information14            => p_tdb_information14
660     ,p_tdb_information15            => p_tdb_information15
661     ,p_tdb_information16            => p_tdb_information16
662     ,p_tdb_information17            => p_tdb_information17
663     ,p_tdb_information18            => p_tdb_information18
664     ,p_tdb_information19            => p_tdb_information19
665     ,p_tdb_information20            => p_tdb_information20
666     ,p_create_finance_line          => p_create_finance_line
667     ,p_finance_header_id            => p_finance_header_id
668     ,p_currency_code                => p_currency_code
669     ,p_standard_amount              => p_standard_amount
670     ,p_unitary_amount               => p_unitary_amount
671     ,p_money_amount                 => p_money_amount
672     ,p_booking_deal_id              => p_booking_deal_id
673     ,p_booking_deal_type            => p_booking_deal_type
674     ,p_finance_line_id              => p_finance_line_id
678     ,p_sponsor_person_id            => p_sponsor_person_id
675     ,p_enrollment_type              => p_enrollment_type
676     ,p_validate                     => m_validate
677     ,p_organization_id              => p_organization_id
679     ,p_sponsor_assignment_id        => c_sponsor_assignment_id
680     ,p_person_address_id            => p_person_address_id
681     ,p_delegate_assignment_id       => c_delegate_assignment_id
682     ,p_delegate_contact_id          => p_delegate_contact_id
683     ,p_delegate_contact_email       => p_delegate_contact_email
684     ,p_third_party_email            => p_third_party_email
685     ,p_person_address_type          => p_person_address_type
686     ,p_line_id                      => p_line_id
687     ,p_org_id                       => p_org_id
688     ,p_daemon_flag                  => p_daemon_flag
689     ,p_daemon_type                  => p_daemon_type
690     ,p_old_event_id                 => p_old_event_id
691     ,p_quote_line_id                => p_quote_line_id
692     ,p_interface_source             => p_interface_source
693     ,p_total_training_time          => p_total_training_time
694     ,p_content_player_status        => p_content_player_status
695     ,p_score                        => p_score
696     ,p_completed_content            => p_completed_content
697     ,p_total_content                => p_total_content
698     ,p_return_status	 	    => p_return_status
699     ,p_booking_justification_id     => p_booking_justification_id
700     ,p_is_history_flag		    => p_is_history_flag
701     ,p_override_prerequisites       => p_override_prerequisites
702     ,p_override_learner_access      => p_override_learner_access
703     );
704 
705   end if ;
706 
707   if(l_create_flag = 2) then
708 
709 
710     hr_utility.trace('SRK in wrapper_proc booking p_booking_id '|| l_booking);
711 
712 --p_object_version_number := 1;
713     hr_utility.trace('SRK in wrapper_proc before update p_object_version_number '|| p_object_version_number);
714  g_interface_code := nvl(l_interface_code,'PQP_OLM_ENROL_INTF');
715  hr_utility.set_location('g_interface_code'||g_interface_code, 95);
716 
717 g_enroll_rec.booking_status_type_id       :=  p_booking_status_type_id      ;
718 g_enroll_rec.delegate_person_id           :=  p_delegate_person_id          ;
719 g_enroll_rec.sponsor_contact_id           :=  p_contact_id                  ;
720 g_enroll_rec.business_group_id            :=  p_business_group_id           ;
721 g_enroll_rec.event_id                     :=  p_event_id                    ;
722   hr_utility.trace('global p_event_id : ' || p_event_id);
723   hr_utility.trace('g_enroll_rec.event_id : ' || g_enroll_rec.event_id);
724 g_enroll_rec.customer_id                  :=  p_customer_id                 ;
725 g_enroll_rec.authorizer_person_id         :=  p_authorizer_person_id        ;
726 g_enroll_rec.date_booking_placed          :=  p_date_booking_placed         ;
727 g_enroll_rec.correspondent                 :=  p_corespondent                ;
728 g_enroll_rec.internal_booking_flag        :=  p_internal_booking_flag       ;
729 g_enroll_rec.number_of_places             :=  p_number_of_places            ;
730 g_enroll_rec.administrator                :=  p_administrator               ;
731 g_enroll_rec.booking_priority             :=  p_booking_priority            ;
732 g_enroll_rec.comments                     :=  p_comments                    ;
733 g_enroll_rec.contact_address_id           :=  p_contact_address_id          ;
734 g_enroll_rec.correspondent_phone          :=  p_delegate_contact_phone      ;
735 g_enroll_rec.correspondent_fax         :=  p_delegate_contact_fax        ;
736 g_enroll_rec.third_party_customer_id      :=  p_third_party_customer_id     ;
737 g_enroll_rec.third_party_contact_id       :=  p_third_party_contact_id      ;
738 g_enroll_rec.third_party_address_id       :=  p_third_party_address_id      ;
739 g_enroll_rec.third_party_contact_phone    :=  p_third_party_contact_phone   ;
740 g_enroll_rec.third_party_contact_fax      :=  p_third_party_contact_fax     ;
741 g_enroll_rec.date_status_changed          :=  p_date_status_changed         ;
742 --g_enroll_rec.status_change_comments       :=  p_status_change_comments      ;
743 g_enroll_rec.failure_reason               :=  p_failure_reason              ;
744 g_enroll_rec.attendance_result            :=  p_attendance_result           ;
745 g_enroll_rec.language_id                  :=  p_language_id                 ;
746 g_enroll_rec.source_of_booking            :=  p_source_of_booking           ;
747 g_enroll_rec.special_booking_instructions :=  p_special_booking_instructions;
748 g_enroll_rec.successful_attendance_flag   :=  p_successful_attendance_flag  ;
749 g_enroll_rec.tdb_information_category     :=  p_tdb_information_category    ;
750 g_enroll_rec.tdb_information1             :=  p_tdb_information1            ;
751 g_enroll_rec.tdb_information2             :=  p_tdb_information2            ;
752 g_enroll_rec.tdb_information3             :=  p_tdb_information3            ;
753 g_enroll_rec.tdb_information4             :=  p_tdb_information4            ;
754 g_enroll_rec.tdb_information5             :=  p_tdb_information5            ;
755 g_enroll_rec.tdb_information6             :=  p_tdb_information6            ;
756 g_enroll_rec.tdb_information7             :=  p_tdb_information7            ;
757 g_enroll_rec.tdb_information8             :=  p_tdb_information8            ;
758 g_enroll_rec.tdb_information9             :=  p_tdb_information9            ;
759 g_enroll_rec.tdb_information10            :=  p_tdb_information10           ;
760 g_enroll_rec.tdb_information11            :=  p_tdb_information11           ;
761 g_enroll_rec.tdb_information12            :=  p_tdb_information12           ;
762 g_enroll_rec.tdb_information13            :=  p_tdb_information13           ;
763 g_enroll_rec.tdb_information14            :=  p_tdb_information14           ;
767 g_enroll_rec.tdb_information18            :=  p_tdb_information18           ;
764 g_enroll_rec.tdb_information15            :=  p_tdb_information15           ;
765 g_enroll_rec.tdb_information16            :=  p_tdb_information16           ;
766 g_enroll_rec.tdb_information17            :=  p_tdb_information17           ;
768 g_enroll_rec.tdb_information19            :=  p_tdb_information19           ;
769 g_enroll_rec.tdb_information20            :=  p_tdb_information20           ;
770 g_enroll_rec.finance_header_id            :=  p_finance_header_id           ;
771 g_enroll_rec.standard_amount              :=  p_standard_amount             ;
772 --g_enroll_rec.unitary_amount               :=  p_unitary_amount              ;
773 g_enroll_rec.money_amount                 :=  p_money_amount                ;
774 g_enroll_rec.currency_code                :=  p_currency_code               ;
775 g_enroll_rec.booking_deal_type            :=  p_booking_deal_type           ;
776 g_enroll_rec.booking_deal_id              :=  p_booking_deal_id             ;
777 --g_enroll_rec.enrollment_type              :=  p_enrollment_type             ;
778 g_enroll_rec.organization_id              :=  p_organization_id             ;
779 g_enroll_rec.sponsor_person_id            :=  p_sponsor_person_id           ;
780 g_enroll_rec.sponsor_assignment_id        :=  p_sponsor_assignment_id       ;
781 g_enroll_rec.person_address_id            :=  p_person_address_id           ;
782 g_enroll_rec.delegate_assignment_id       :=  p_delegate_assignment_id      ;
783 g_enroll_rec.delegate_contact_id          :=  p_delegate_contact_id         ;
784 g_enroll_rec.correspondent_email       :=  p_delegate_contact_email      ;
785 g_enroll_rec.third_party_email            :=  p_third_party_email           ;
786 g_enroll_rec.correspondent_address_type          :=  p_person_address_type         ;
787 g_enroll_rec.line_id                      :=  p_line_id                     ;
788 g_enroll_rec.org_id                       :=  p_org_id                      ;
789 --g_enroll_rec.daemon_flag                  :=  p_daemon_flag                 ;
790 --g_enroll_rec.daemon_type                  :=  p_daemon_type                 ;
791 g_enroll_rec.old_event_id                 :=  p_old_event_id                ;
792 g_enroll_rec.quote_line_id                :=  p_quote_line_id               ;
793 g_enroll_rec.interface_source             :=  p_interface_source            ;
794 g_enroll_rec.total_training_time          :=  p_total_training_time         ;
795 g_enroll_rec.content_player_status        :=  p_content_player_status       ;
796 g_enroll_rec.score                        :=  p_score                       ;
797 g_enroll_rec.completed_content            :=  p_completed_content           ;
798 g_enroll_rec.total_content                :=  p_total_content               ;
799 g_enroll_rec.booking_justification_id     :=  p_booking_justification_id    ;
800 --g_enroll_rec.is_history_flag       	  :=  p_is_history_flag       	;
801 
802 
803    select object_version_number into l_object_version_number
804     from ota_delegate_bookings where
805       booking_id = l_booking_id;
806 
807   l_enroll_rec := Get_Record_Values(g_interface_code);
808   hr_utility.trace('l_enroll_rec.event_id : ' || l_enroll_rec.event_id);
809 
810     update_delegate_booking
811     (p_effective_date               => p_effective_date
812     ,p_booking_id                   => l_booking_id
813     ,p_booking_status_type_id       => l_enroll_rec.booking_status_type_id
814     ,p_delegate_person_id           => l_enroll_rec.delegate_person_id
815     ,p_contact_id                   => l_enroll_rec.sponsor_contact_id
816     ,p_business_group_id            => l_enroll_rec.business_group_id
817     ,p_event_id                     => l_enroll_rec.event_id
818     ,p_customer_id                  => l_enroll_rec.customer_id
819     ,p_authorizer_person_id         => l_enroll_rec.authorizer_person_id
820     ,p_date_booking_placed          => l_enroll_rec.date_booking_placed
821     ,p_corespondent                 => l_enroll_rec.correspondent
822     ,p_internal_booking_flag        => l_enroll_rec.internal_booking_flag
823     ,p_number_of_places             => l_enroll_rec.number_of_places
824     ,p_object_version_number        => l_object_version_number
825     ,p_administrator                => l_enroll_rec.administrator
826     ,p_booking_priority             => l_enroll_rec.booking_priority
827     ,p_comments                     => l_enroll_rec.comments
828     ,p_contact_address_id           => l_enroll_rec.contact_address_id
829     ,p_delegate_contact_phone       => l_enroll_rec.correspondent_phone
830     ,p_delegate_contact_fax         => l_enroll_rec.correspondent_fax
831     ,p_third_party_customer_id      => l_enroll_rec.third_party_customer_id
832     ,p_third_party_contact_id       => l_enroll_rec.third_party_contact_id
833     ,p_third_party_address_id       => l_enroll_rec.third_party_address_id
834     ,p_third_party_contact_phone    => l_enroll_rec.third_party_contact_phone
835     ,p_third_party_contact_fax      => l_enroll_rec.third_party_contact_fax
836     ,p_date_status_changed          => l_enroll_rec.date_status_changed
837 --    ,p_status_change_comments       => l_enroll_rec.status_change_comments
838     ,p_failure_reason               => l_enroll_rec.failure_reason
839     ,p_attendance_result            => l_enroll_rec.attendance_result
840     ,p_language_id                  => l_enroll_rec.language_id
841     ,p_source_of_booking            => l_enroll_rec.source_of_booking
842     ,p_special_booking_instructions => l_enroll_rec.special_booking_instructions
843     ,p_successful_attendance_flag   => l_enroll_rec.successful_attendance_flag
844     ,p_tdb_information_category     => l_enroll_rec.tdb_information_category
845     ,p_tdb_information1             => l_enroll_rec.tdb_information1
849     ,p_tdb_information5             => l_enroll_rec.tdb_information5
846     ,p_tdb_information2             => l_enroll_rec.tdb_information2
847     ,p_tdb_information3             => l_enroll_rec.tdb_information3
848     ,p_tdb_information4             => l_enroll_rec.tdb_information4
850     ,p_tdb_information6             => l_enroll_rec.tdb_information6
851     ,p_tdb_information7             => l_enroll_rec.tdb_information7
852     ,p_tdb_information8             => l_enroll_rec.tdb_information8
853     ,p_tdb_information9             => l_enroll_rec.tdb_information9
854     ,p_tdb_information10            => l_enroll_rec.tdb_information10
855     ,p_tdb_information11            => l_enroll_rec.tdb_information11
856     ,p_tdb_information12            => l_enroll_rec.tdb_information12
857     ,p_tdb_information13            => l_enroll_rec.tdb_information13
858     ,p_tdb_information14            => l_enroll_rec.tdb_information14
859     ,p_tdb_information15            => l_enroll_rec.tdb_information15
860     ,p_tdb_information16            => l_enroll_rec.tdb_information16
861     ,p_tdb_information17            => l_enroll_rec.tdb_information17
862     ,p_tdb_information18            => l_enroll_rec.tdb_information18
863     ,p_tdb_information19            => l_enroll_rec.tdb_information19
864     ,p_tdb_information20            => l_enroll_rec.tdb_information20
865     ,p_update_finance_line          => l_enroll_rec.finance_header_id
866     ,p_tfl_object_version_number    => l_tfl_object_version_number
867     ,p_finance_header_id            => l_enroll_rec.finance_header_id
868     ,p_finance_line_id              => p_finance_line_id
869     ,p_standard_amount              => l_enroll_rec.standard_amount
870     ,p_unitary_amount               => p_unitary_amount
871     ,p_money_amount                 => l_enroll_rec.money_amount
872     ,p_currency_code                => l_enroll_rec.currency_code
873     ,p_booking_deal_type            => l_enroll_rec.booking_deal_type
874     ,p_booking_deal_id              => l_enroll_rec.booking_deal_id
875     ,p_enrollment_type              => p_enrollment_type
876     ,p_validate                     => m_validate
877     ,p_organization_id              => l_enroll_rec.organization_id
878     ,p_sponsor_person_id            => l_enroll_rec.sponsor_person_id
879     ,p_sponsor_assignment_id        => l_enroll_rec.sponsor_assignment_id
880     ,p_person_address_id            => l_enroll_rec.person_address_id
881     ,p_delegate_assignment_id       => l_enroll_rec.delegate_assignment_id
882     ,p_delegate_contact_id          => l_enroll_rec.delegate_contact_id
883     ,p_delegate_contact_email       => l_enroll_rec.correspondent_email
884     ,p_third_party_email            => l_enroll_rec.third_party_email
885     ,p_person_address_type          => l_enroll_rec.correspondent_address_type
886     ,p_line_id                      => l_enroll_rec.line_id
887     ,p_org_id                       => l_enroll_rec.org_id
888     ,p_daemon_flag                  => p_daemon_flag
889     ,p_daemon_type                  => p_daemon_type
890     ,p_old_event_id                 => l_enroll_rec.old_event_id
891     ,p_quote_line_id                => l_enroll_rec.quote_line_id
892     ,p_interface_source             => l_enroll_rec.interface_source
893     ,p_total_training_time          => l_enroll_rec.total_training_time
894     ,p_content_player_status        => l_enroll_rec.content_player_status
895     ,p_score                        => l_enroll_rec.score
896     ,p_completed_content            => l_enroll_rec.completed_content
897     ,p_total_content                => l_enroll_rec.total_content
898     ,p_return_status	 	    => p_return_status
899     ,p_booking_justification_id     => l_enroll_rec.booking_justification_id
900     ,p_is_history_flag		    => p_is_history_flag
901     ,p_override_prerequisites 	    => p_override_prerequisites
902     ,p_override_learner_access 	    => p_override_learner_access
903     );
904   end if;
905 
906 
907 exception
908 --  when hr_multi_message.error_message_exist then
909     --
910     -- Catch the Multiple Message List exception which
911     -- indicates API processing has been aborted because
912     -- at least one message exists in the list.
913     --
914     --rollback to enrollment_proc;
915     --
916     -- Reset IN OUT parameters and set OUT parameters
917     --
918 --    p_object_version_number        := null;
919   --  p_finance_line_id              := l_finance_line_id;
920 --    p_return_status := hr_multi_message.get_return_status_disable;
921 --    hr_utility.set_location(' Leaving:' || l_proc, 30);
922 --  when others then
923     --
924     -- When Multiple Message Detection is enabled catch
925     -- any Application specific or other unexpected
926     -- exceptions.  Adding appropriate details to the
927     -- Multiple Message List.  Otherwise re-raise the
928     -- error.
929     --
930   --  rollback to enrollment_proc;
931 
932 
933   when e_upl_not_allowed then
934     hr_utility.set_message(8303, 'PQP_230500_HROSS_GENERIC_ERR');
935     hr_utility.set_message_token('GENERIC_TOKEN',g_upl_err_msg);
936     hr_utility.set_location('Leaving: ' || l_proc, 90);
937     hr_utility.raise_error;
938   when e_crt_not_allowed then
939     hr_utility.set_message(8303, 'PQP_230500_HROSS_GENERIC_ERR');
940     hr_utility.set_message_token('GENERIC_TOKEN',g_crt_err_msg);
941     hr_utility.set_location('Leaving: ' || l_proc, 100);
942     hr_utility.raise_error;
943   when others then
944    --l_error_msg := Substr(SQLERRM,1,2000);
945    hr_utility.set_location('SQLCODE :' || SQLCODE,90);
946    hr_utility.set_location('SQLERRM :' || SQLERRM,90);
947    --hr_utility.set_message(8303, 'PQP_230500_HROSS_GENERIC_ERR');
948    --hr_utility.set_message_token('GENERIC_TOKEN',substr(l_error_msg,1,500) );
949    hr_utility.set_location('Leaving: ' || l_proc, 110);
950    hr_utility.raise_error;
951     --if hr_multi_message.unexpected_error_add(l_proc) then
952       -- hr_utility.set_location(' Leaving:' || l_proc,40);
953        --raise;
954     --end if;
955     --
956     -- Reset IN OUT and set OUT parameters
957     --
958 --    p_object_version_number        := null;
959 --    p_finance_line_id              := l_finance_line_id;
960     --p_return_status := hr_multi_message.get_return_status_disable;
961  --   hr_utility.set_location(' Leaving:' || l_proc,50);
962 
963 end InsUpd_Enroll;
964 
965 
966 PROCEDURE create_delegate_booking
967   (p_effective_date               in     date	 default null
968   ,p_booking_id                   in     number
969   ,p_booking_status_type_id       in     number
970   ,p_delegate_person_id           in     number    default null
971   ,p_contact_id                   in     number
972   ,p_business_group_id            in     number
973   ,p_event_id                     in     number
974   ,p_customer_id                  in     number    default null
975   ,p_authorizer_person_id         in     number    default null
976   ,p_date_booking_placed          in     date
977   ,p_corespondent                 in     varchar2  default null
978   ,p_internal_booking_flag        in     varchar2
979   ,p_number_of_places             in     number
980   ,p_object_version_number           out nocopy number
981   ,p_administrator                in     number    default null
982   ,p_booking_priority             in     varchar2  default null
983   ,p_comments                     in     varchar2  default null
984   ,p_contact_address_id           in     number    default null
985   ,p_delegate_contact_phone       in     varchar2  default null
986   ,p_delegate_contact_fax         in     varchar2  default null
987   ,p_third_party_customer_id      in     number    default null
988   ,p_third_party_contact_id       in     number    default null
989   ,p_third_party_address_id       in     number    default null
990   ,p_third_party_contact_phone    in     varchar2  default null
991   ,p_third_party_contact_fax      in     varchar2  default null
992   ,p_date_status_changed          in     date      default null
993   ,p_failure_reason               in     varchar2  default null
994   ,p_attendance_result            in     varchar2  default null
995   ,p_language_id                  in     number    default null
996   ,p_source_of_booking            in     varchar2  default null
997   ,p_special_booking_instructions in     varchar2  default null
998   ,p_successful_attendance_flag   in     varchar2  default null
999   ,p_tdb_information_category     in     varchar2  default null
1000   ,p_tdb_information1             in     varchar2  default null
1001   ,p_tdb_information2             in     varchar2  default null
1002   ,p_tdb_information3             in     varchar2  default null
1003   ,p_tdb_information4             in     varchar2  default null
1004   ,p_tdb_information5             in     varchar2  default null
1005   ,p_tdb_information6             in     varchar2  default null
1006   ,p_tdb_information7             in     varchar2  default null
1007   ,p_tdb_information8             in     varchar2  default null
1011   ,p_tdb_information12            in     varchar2  default null
1008   ,p_tdb_information9             in     varchar2  default null
1009   ,p_tdb_information10            in     varchar2  default null
1010   ,p_tdb_information11            in     varchar2  default null
1012   ,p_tdb_information13            in     varchar2  default null
1013   ,p_tdb_information14            in     varchar2  default null
1014   ,p_tdb_information15            in     varchar2  default null
1015   ,p_tdb_information16            in     varchar2  default null
1016   ,p_tdb_information17            in     varchar2  default null
1017   ,p_tdb_information18            in     varchar2  default null
1018   ,p_tdb_information19            in     varchar2  default null
1019   ,p_tdb_information20            in     varchar2  default null
1020   ,p_create_finance_line          in     varchar2  default null
1021   ,p_finance_header_id            in     number    default null
1022   ,p_currency_code                in     varchar2  default null
1023   ,p_standard_amount              in     number    default null
1024   ,p_unitary_amount               in     number    default null
1025   ,p_money_amount                 in     number    default null
1026   ,p_booking_deal_id              in     number    default null
1027   ,p_booking_deal_type            in     varchar2  default null
1028   ,p_finance_line_id              in out nocopy number
1029   ,p_enrollment_type              in     varchar2  default null
1030   ,p_validate                     in     number    default hr_api.g_false_num
1031   ,p_organization_id              in     number    default null
1032   ,p_sponsor_person_id            in     number    default null
1033   ,p_sponsor_assignment_id        in     number    default null
1034   ,p_person_address_id            in     number    default null
1035   ,p_delegate_assignment_id       in     number    default null
1036   ,p_delegate_contact_id          in     number    default null
1037   ,p_delegate_contact_email       in     varchar2  default null
1038   ,p_third_party_email            in     varchar2  default null
1039   ,p_person_address_type          in     varchar2  default null
1040   ,p_line_id                      in     number    default null
1041   ,p_org_id                       in     number    default null
1042   ,p_daemon_flag                  in     varchar2  default null
1043   ,p_daemon_type                  in     varchar2  default null
1044   ,p_old_event_id                 in     number    default null
1045   ,p_quote_line_id                in     number    default null
1046   ,p_interface_source             in     varchar2  default null
1047   ,p_total_training_time          in     varchar2  default null
1048   ,p_content_player_status        in     varchar2  default null
1049   ,p_score                        in     number    default null
1050   ,p_completed_content            in     number    default null
1051   ,p_total_content                in     number    default null
1052   ,p_return_status                out 	 nocopy    varchar2
1053   ,p_booking_justification_id 	  in 	 number    default null
1054   ,p_is_history_flag   		  in 	 varchar2  default 'N'
1055   ,p_override_prerequisites 	  in 	 varchar2  default null
1056   ,p_override_learner_access 	  in 	 varchar2
1057   ) is
1058   --
1059   -- Variables for API Boolean parameters
1060   l_validate                      boolean;
1061   --
1062   -- Variables for IN/OUT parameters
1063   l_finance_line_id               number;
1064   --
1065   -- Other variables
1066   l_booking_id                   number;
1067   l_proc    varchar2(72) := g_package ||'create_delegate_booking';
1068 Begin
1069   hr_utility.set_location(' Entering:' || l_proc,10);
1070   --
1071   -- Issue a savepoint
1072   --
1073   savepoint create_delegate_booking;
1074   --
1075   -- Initialise Multiple Message Detection
1076   --
1077 --  hr_multi_message.enable_message_list;
1078   --
1079   -- Remember IN OUT parameter IN values
1080   --
1081   l_finance_line_id               := p_finance_line_id;
1082   --
1083   -- Convert constant values to their corresponding boolean value
1084   --
1085   l_validate :=
1086     hr_api.constant_to_boolean
1087       (p_constant_value => p_validate);
1088   --
1089   -- Register Surrogate ID or user key values
1090   --
1091   ota_tdb_ins.set_base_key_value
1092     (p_booking_id => p_booking_id
1093     );
1094   --
1095   -- Call API
1096   --
1097   ota_delegate_booking_api.create_delegate_booking
1098     (p_effective_date               => p_effective_date
1099     ,p_booking_id                   => l_booking_id
1100     ,p_booking_status_type_id       => p_booking_status_type_id
1101     ,p_delegate_person_id           => p_delegate_person_id
1102     ,p_contact_id                   => p_contact_id
1103     ,p_business_group_id            => p_business_group_id
1104     ,p_event_id                     => p_event_id
1105     ,p_customer_id                  => p_customer_id
1106     ,p_authorizer_person_id         => p_authorizer_person_id
1107     ,p_date_booking_placed          => p_date_booking_placed
1108     ,p_corespondent                 => p_corespondent
1109     ,p_internal_booking_flag        => p_internal_booking_flag
1110     ,p_number_of_places             => p_number_of_places
1111     ,p_object_version_number        => p_object_version_number
1112     ,p_administrator                => p_administrator
1113     ,p_booking_priority             => p_booking_priority
1114     ,p_comments                     => p_comments
1115     ,p_contact_address_id           => p_contact_address_id
1116     ,p_delegate_contact_phone       => p_delegate_contact_phone
1117     ,p_delegate_contact_fax         => p_delegate_contact_fax
1121     ,p_third_party_contact_phone    => p_third_party_contact_phone
1118     ,p_third_party_customer_id      => p_third_party_customer_id
1119     ,p_third_party_contact_id       => p_third_party_contact_id
1120     ,p_third_party_address_id       => p_third_party_address_id
1122     ,p_third_party_contact_fax      => p_third_party_contact_fax
1123     ,p_date_status_changed          => p_date_status_changed
1124     ,p_failure_reason               => p_failure_reason
1125     ,p_attendance_result            => p_attendance_result
1126     ,p_language_id                  => p_language_id
1127     ,p_source_of_booking            => p_source_of_booking
1128     ,p_special_booking_instructions => p_special_booking_instructions
1129     ,p_successful_attendance_flag   => p_successful_attendance_flag
1130     ,p_tdb_information_category     => p_tdb_information_category
1131     ,p_tdb_information1             => p_tdb_information1
1132     ,p_tdb_information2             => p_tdb_information2
1133     ,p_tdb_information3             => p_tdb_information3
1134     ,p_tdb_information4             => p_tdb_information4
1135     ,p_tdb_information5             => p_tdb_information5
1136     ,p_tdb_information6             => p_tdb_information6
1137     ,p_tdb_information7             => p_tdb_information7
1138     ,p_tdb_information8             => p_tdb_information8
1139     ,p_tdb_information9             => p_tdb_information9
1140     ,p_tdb_information10            => p_tdb_information10
1141     ,p_tdb_information11            => p_tdb_information11
1142     ,p_tdb_information12            => p_tdb_information12
1143     ,p_tdb_information13            => p_tdb_information13
1144     ,p_tdb_information14            => p_tdb_information14
1145     ,p_tdb_information15            => p_tdb_information15
1146     ,p_tdb_information16            => p_tdb_information16
1147     ,p_tdb_information17            => p_tdb_information17
1148     ,p_tdb_information18            => p_tdb_information18
1149     ,p_tdb_information19            => p_tdb_information19
1150     ,p_tdb_information20            => p_tdb_information20
1151     ,p_create_finance_line          => p_create_finance_line
1152     ,p_finance_header_id            => p_finance_header_id
1153     ,p_currency_code                => p_currency_code
1154     ,p_standard_amount              => p_standard_amount
1155     ,p_unitary_amount               => p_unitary_amount
1156     ,p_money_amount                 => p_money_amount
1157     ,p_booking_deal_id              => p_booking_deal_id
1158     ,p_booking_deal_type            => p_booking_deal_type
1159     ,p_finance_line_id              => p_finance_line_id
1160     ,p_enrollment_type              => p_enrollment_type
1161     ,p_validate                     => l_validate
1162     ,p_organization_id              => p_organization_id
1163     ,p_sponsor_person_id            => p_sponsor_person_id
1164     ,p_sponsor_assignment_id        => p_sponsor_assignment_id
1165     ,p_person_address_id            => p_person_address_id
1166     ,p_delegate_assignment_id       => p_delegate_assignment_id
1167     ,p_delegate_contact_id          => p_delegate_contact_id
1168     ,p_delegate_contact_email       => p_delegate_contact_email
1169     ,p_third_party_email            => p_third_party_email
1170     ,p_person_address_type          => p_person_address_type
1171     ,p_line_id                      => p_line_id
1172     ,p_org_id                       => p_org_id
1173     ,p_daemon_flag                  => p_daemon_flag
1174     ,p_daemon_type                  => p_daemon_type
1175     ,p_old_event_id                 => p_old_event_id
1176     ,p_quote_line_id                => p_quote_line_id
1177     ,p_interface_source             => p_interface_source
1178     ,p_total_training_time          => p_total_training_time
1179     ,p_content_player_status        => p_content_player_status
1180     ,p_score                        => p_score
1181     ,p_completed_content            => p_completed_content
1182     ,p_total_content                => p_total_content
1183     ,p_booking_justification_id     => p_booking_justification_id
1184     ,p_is_history_flag		    => p_is_history_flag
1185     ,p_override_prerequisites       => p_override_prerequisites
1186     ,p_override_learner_access      => p_override_learner_access
1187     );
1188   --
1189   -- Convert API warning boolean parameter values to specific
1190   -- messages and add them to Multiple Message List
1191   --
1192   --
1193   -- Convert API non-warning boolean parameter values
1194   --
1195   --
1196   -- Derive the API return status value based on whether
1197   -- messages of any type exist in the Multiple Message List.
1198   -- Also disable Multiple Message Detection.
1199   --
1200   p_return_status := hr_multi_message.get_return_status_disable;
1201   hr_utility.set_location(' Leaving:' || l_proc,20);
1202   --
1203 exception
1204   when hr_multi_message.error_message_exist then
1205     --
1206     -- Catch the Multiple Message List exception which
1207     -- indicates API processing has been aborted because
1208     -- at least one message exists in the list.
1209     --
1210     rollback to create_delegate_booking;
1211     --
1212     -- Reset IN OUT parameters and set OUT parameters
1213     --
1214     p_object_version_number        := null;
1215     p_finance_line_id              := l_finance_line_id;
1216     p_return_status := hr_multi_message.get_return_status_disable;
1217     hr_utility.set_location(' Leaving:' || l_proc, 30);
1218   when others then
1219     --
1220     -- When Multiple Message Detection is enabled catch
1221     -- any Application specific or other unexpected
1222     -- exceptions.  Adding appropriate details to the
1226     rollback to create_delegate_booking;
1223     -- Multiple Message List.  Otherwise re-raise the
1224     -- error.
1225     --
1227 --    if hr_multi_message.unexpected_error_add(l_proc) then
1228        hr_utility.set_location(' Leaving:' || l_proc,40);
1229        raise;
1230 --    end if;
1231     --
1232     -- Reset IN OUT and set OUT parameters
1233     --
1234     p_object_version_number        := null;
1235     p_finance_line_id              := l_finance_line_id;
1236     p_return_status := hr_multi_message.get_return_status_disable;
1237     hr_utility.set_location(' Leaving:' || l_proc,50);
1238 end create_delegate_booking;
1239 
1240 
1241 PROCEDURE update_delegate_booking
1242   (p_effective_date               in     date	  default null
1243   ,p_booking_id                   in     number
1244   ,p_booking_status_type_id       in     number    default hr_api.g_number
1245   ,p_delegate_person_id           in     number    default hr_api.g_number
1246   ,p_contact_id                   in     number    default hr_api.g_number
1247   ,p_business_group_id            in     number    default hr_api.g_number
1248   ,p_event_id                     in     number    default hr_api.g_number
1249   ,p_customer_id                  in     number    default hr_api.g_number
1250   ,p_authorizer_person_id         in     number    default hr_api.g_number
1251   ,p_date_booking_placed          in     date      default hr_api.g_date
1252   ,p_corespondent                 in     varchar2  default hr_api.g_varchar2
1253   ,p_internal_booking_flag        in     varchar2  default hr_api.g_varchar2
1254   ,p_number_of_places             in     number    default hr_api.g_number
1255   ,p_object_version_number        in out nocopy number
1256   ,p_administrator                in     number    default hr_api.g_number
1257   ,p_booking_priority             in     varchar2  default hr_api.g_varchar2
1258   ,p_comments                     in     varchar2  default hr_api.g_varchar2
1259   ,p_contact_address_id           in     number    default hr_api.g_number
1260   ,p_delegate_contact_phone       in     varchar2  default hr_api.g_varchar2
1261   ,p_delegate_contact_fax         in     varchar2  default hr_api.g_varchar2
1262   ,p_third_party_customer_id      in     number    default hr_api.g_number
1263   ,p_third_party_contact_id       in     number    default hr_api.g_number
1264   ,p_third_party_address_id       in     number    default hr_api.g_number
1265   ,p_third_party_contact_phone    in     varchar2  default hr_api.g_varchar2
1266   ,p_third_party_contact_fax      in     varchar2  default hr_api.g_varchar2
1267   ,p_date_status_changed          in     date      default hr_api.g_date
1268   ,p_status_change_comments       in     varchar2  default hr_api.g_varchar2
1269   ,p_failure_reason               in     varchar2  default hr_api.g_varchar2
1270   ,p_attendance_result            in     varchar2  default hr_api.g_varchar2
1271   ,p_language_id                  in     number    default hr_api.g_number
1272   ,p_source_of_booking            in     varchar2  default hr_api.g_varchar2
1273   ,p_special_booking_instructions in     varchar2  default hr_api.g_varchar2
1274   ,p_successful_attendance_flag   in     varchar2  default hr_api.g_varchar2
1275   ,p_tdb_information_category     in     varchar2  default hr_api.g_varchar2
1276   ,p_tdb_information1             in     varchar2  default hr_api.g_varchar2
1277   ,p_tdb_information2             in     varchar2  default hr_api.g_varchar2
1278   ,p_tdb_information3             in     varchar2  default hr_api.g_varchar2
1279   ,p_tdb_information4             in     varchar2  default hr_api.g_varchar2
1280   ,p_tdb_information5             in     varchar2  default hr_api.g_varchar2
1281   ,p_tdb_information6             in     varchar2  default hr_api.g_varchar2
1282   ,p_tdb_information7             in     varchar2  default hr_api.g_varchar2
1283   ,p_tdb_information8             in     varchar2  default hr_api.g_varchar2
1284   ,p_tdb_information9             in     varchar2  default hr_api.g_varchar2
1285   ,p_tdb_information10            in     varchar2  default hr_api.g_varchar2
1286   ,p_tdb_information11            in     varchar2  default hr_api.g_varchar2
1287   ,p_tdb_information12            in     varchar2  default hr_api.g_varchar2
1288   ,p_tdb_information13            in     varchar2  default hr_api.g_varchar2
1289   ,p_tdb_information14            in     varchar2  default hr_api.g_varchar2
1290   ,p_tdb_information15            in     varchar2  default hr_api.g_varchar2
1291   ,p_tdb_information16            in     varchar2  default hr_api.g_varchar2
1292   ,p_tdb_information17            in     varchar2  default hr_api.g_varchar2
1293   ,p_tdb_information18            in     varchar2  default hr_api.g_varchar2
1294   ,p_tdb_information19            in     varchar2  default hr_api.g_varchar2
1295   ,p_tdb_information20            in     varchar2  default hr_api.g_varchar2
1296   ,p_update_finance_line          in     varchar2  default hr_api.g_varchar2
1297   ,p_tfl_object_version_number    in out nocopy number
1298   ,p_finance_header_id            in     number    default hr_api.g_number
1299   ,p_finance_line_id              in out nocopy number
1300   ,p_standard_amount              in     number    default hr_api.g_number
1301   ,p_unitary_amount               in     number    default hr_api.g_number
1302   ,p_money_amount                 in     number    default hr_api.g_number
1303   ,p_currency_code                in     varchar2  default hr_api.g_varchar2
1304   ,p_booking_deal_type            in     varchar2  default hr_api.g_varchar2
1305   ,p_booking_deal_id              in     number    default hr_api.g_number
1306   ,p_enrollment_type              in     varchar2  default hr_api.g_varchar2
1307   ,p_validate                     in     number    default hr_api.g_false_num
1308   ,p_organization_id              in     number    default hr_api.g_number
1309   ,p_sponsor_person_id            in     number    default hr_api.g_number
1313   ,p_delegate_contact_id          in     number    default hr_api.g_number
1310   ,p_sponsor_assignment_id        in     number    default hr_api.g_number
1311   ,p_person_address_id            in     number    default hr_api.g_number
1312   ,p_delegate_assignment_id       in     number    default hr_api.g_number
1314   ,p_delegate_contact_email       in     varchar2  default hr_api.g_varchar2
1315   ,p_third_party_email            in     varchar2  default hr_api.g_varchar2
1316   ,p_person_address_type          in     varchar2  default hr_api.g_varchar2
1317   ,p_line_id                      in     number    default hr_api.g_number
1318   ,p_org_id                       in     number    default hr_api.g_number
1319   ,p_daemon_flag                  in     varchar2  default hr_api.g_varchar2
1320   ,p_daemon_type                  in     varchar2  default hr_api.g_varchar2
1321   ,p_old_event_id                 in     number    default hr_api.g_number
1322   ,p_quote_line_id                in     number    default hr_api.g_number
1323   ,p_interface_source             in     varchar2  default hr_api.g_varchar2
1324   ,p_total_training_time          in     varchar2  default hr_api.g_varchar2
1325   ,p_content_player_status        in     varchar2  default hr_api.g_varchar2
1326   ,p_score                        in     number    default hr_api.g_number
1327   ,p_completed_content            in     number    default hr_api.g_number
1328   ,p_total_content                in     number    default hr_api.g_number
1329   ,p_return_status                out 	 nocopy varchar2
1330   ,p_booking_justification_id     in 	 number    default hr_api.g_number
1331   ,p_is_history_flag       	  in     varchar2  default hr_api.g_varchar2
1332   ,p_override_prerequisites 	  in 	 varchar2
1333   ,p_override_learner_access 	  in 	 varchar2
1334   ) is
1335   --
1336   -- Variables for API Boolean parameters
1337   l_validate                      boolean;
1338   --
1339   -- Variables for IN/OUT parameters
1340   l_object_version_number         number;
1341   l_tfl_object_version_number     number;
1342   l_finance_line_id               number;
1343   --
1344   l_date_booking_placed ota_delegate_bookings.date_booking_placed%TYPE;
1345   l_date_status_changed ota_delegate_bookings.date_status_changed%TYPE;
1346 
1347 
1348 
1349   CURSOR booking_csr
1350   IS
1351   SELECT b.date_booking_placed
1352   FROM   ota_delegate_bookings b
1353   WHERE  b.booking_id = p_booking_id;
1354   --
1355 
1356   -- Other variables
1357   l_proc    varchar2(72) := g_package ||'update_delegate_booking';
1358 Begin
1359   hr_utility.set_location(' Entering:' || l_proc,10);
1360   --
1361   -- Issue a savepoint
1362   --
1363   savepoint update_delegate_booking;
1364   --
1365   -- Initialise Multiple Message Detection
1366   --
1367  -- hr_multi_message.enable_message_list;
1368   --
1369   -- Remember IN OUT parameter IN values
1370   --
1371   l_object_version_number         := p_object_version_number;
1372   l_tfl_object_version_number     := p_tfl_object_version_number;
1373   l_finance_line_id               := p_finance_line_id;
1374   --
1375   --
1376     hr_utility.trace('SRK in update_deleg_booki booking p_booking_id '|| p_booking_id);
1377   OPEN booking_csr;
1378   FETCH booking_csr INTO l_date_booking_placed;
1379   CLOSE booking_csr;
1380   l_date_status_changed := trunc(sysdate);
1381   --
1382   -- Convert constant values to their corresponding boolean value
1383   --
1384   l_validate :=
1385     hr_api.constant_to_boolean
1386       (p_constant_value => p_validate);
1387   --
1388   -- Register Surrogate ID or user key values
1389   --
1390   --
1391   -- Call API
1392   --
1393     hr_utility.trace('SRK in update_deleg_booki before the api call p_booking_id '|| p_booking_id);
1394   ota_delegate_booking_api.update_delegate_booking
1395     (p_effective_date               => p_effective_date
1396     ,p_booking_id                   => p_booking_id
1397     ,p_booking_status_type_id       => p_booking_status_type_id
1398     ,p_delegate_person_id           => p_delegate_person_id
1399     ,p_contact_id                   => p_contact_id
1400     ,p_business_group_id            => p_business_group_id
1401     ,p_event_id                     => p_event_id
1402     ,p_customer_id                  => p_customer_id
1403     ,p_authorizer_person_id         => p_authorizer_person_id
1404     ,p_date_booking_placed          => l_date_booking_placed
1405     ,p_corespondent                 => p_corespondent
1406     ,p_internal_booking_flag        => p_internal_booking_flag
1407     ,p_number_of_places             => p_number_of_places
1408     ,p_object_version_number        => p_object_version_number
1409     ,p_administrator                => p_administrator
1410     ,p_booking_priority             => p_booking_priority
1411     ,p_comments                     => p_comments
1412     ,p_contact_address_id           => p_contact_address_id
1413     ,p_delegate_contact_phone       => p_delegate_contact_phone
1414     ,p_delegate_contact_fax         => p_delegate_contact_fax
1415     ,p_third_party_customer_id      => p_third_party_customer_id
1416     ,p_third_party_contact_id       => p_third_party_contact_id
1417     ,p_third_party_address_id       => p_third_party_address_id
1418     ,p_third_party_contact_phone    => p_third_party_contact_phone
1419     ,p_third_party_contact_fax      => p_third_party_contact_fax
1420     ,p_date_status_changed          => l_date_status_changed
1421     ,p_status_change_comments       => p_status_change_comments
1422     ,p_failure_reason               => p_failure_reason
1423     ,p_attendance_result            => p_attendance_result
1424     ,p_language_id                  => p_language_id
1425     ,p_source_of_booking            => p_source_of_booking
1426     ,p_special_booking_instructions => p_special_booking_instructions
1427     ,p_successful_attendance_flag   => p_successful_attendance_flag
1428     ,p_tdb_information_category     => p_tdb_information_category
1429     ,p_tdb_information1             => p_tdb_information1
1430     ,p_tdb_information2             => p_tdb_information2
1431     ,p_tdb_information3             => p_tdb_information3
1432     ,p_tdb_information4             => p_tdb_information4
1433     ,p_tdb_information5             => p_tdb_information5
1434     ,p_tdb_information6             => p_tdb_information6
1435     ,p_tdb_information7             => p_tdb_information7
1436     ,p_tdb_information8             => p_tdb_information8
1437     ,p_tdb_information9             => p_tdb_information9
1438     ,p_tdb_information10            => p_tdb_information10
1439     ,p_tdb_information11            => p_tdb_information11
1440     ,p_tdb_information12            => p_tdb_information12
1441     ,p_tdb_information13            => p_tdb_information13
1442     ,p_tdb_information14            => p_tdb_information14
1443     ,p_tdb_information15            => p_tdb_information15
1444     ,p_tdb_information16            => p_tdb_information16
1445     ,p_tdb_information17            => p_tdb_information17
1446     ,p_tdb_information18            => p_tdb_information18
1447     ,p_tdb_information19            => p_tdb_information19
1448     ,p_tdb_information20            => p_tdb_information20
1449     ,p_update_finance_line          => p_update_finance_line
1450     ,p_tfl_object_version_number    => l_tfl_object_version_number
1451     ,p_finance_header_id            => p_finance_header_id
1452     ,p_finance_line_id              => p_finance_line_id
1453     ,p_standard_amount              => p_standard_amount
1454     ,p_unitary_amount               => p_unitary_amount
1455     ,p_money_amount                 => p_money_amount
1456     ,p_currency_code                => p_currency_code
1457     ,p_booking_deal_type            => p_booking_deal_type
1458     ,p_booking_deal_id              => p_booking_deal_id
1459     ,p_enrollment_type              => p_enrollment_type
1460     ,p_validate                     => l_validate
1461     ,p_organization_id              => p_organization_id
1462     ,p_sponsor_person_id            => p_sponsor_person_id
1463     ,p_sponsor_assignment_id        => p_sponsor_assignment_id
1464     ,p_person_address_id            => p_person_address_id
1465     ,p_delegate_assignment_id       => p_delegate_assignment_id
1466     ,p_delegate_contact_id          => p_delegate_contact_id
1467     ,p_delegate_contact_email       => p_delegate_contact_email
1468     ,p_third_party_email            => p_third_party_email
1469     ,p_person_address_type          => p_person_address_type
1470     ,p_line_id                      => p_line_id
1471     ,p_org_id                       => p_org_id
1472     ,p_daemon_flag                  => p_daemon_flag
1473     ,p_daemon_type                  => p_daemon_type
1474     ,p_old_event_id                 => p_old_event_id
1475     ,p_quote_line_id                => p_quote_line_id
1476     ,p_interface_source             => p_interface_source
1477     ,p_total_training_time          => p_total_training_time
1478     ,p_content_player_status        => p_content_player_status
1479     ,p_score                        => p_score
1480     ,p_completed_content            => p_completed_content
1481     ,p_total_content                => p_total_content
1482     ,p_booking_justification_id     => p_booking_justification_id
1483     ,p_is_history_flag		    => p_is_history_flag
1484     ,p_override_prerequisites 	 => p_override_prerequisites
1485    ,p_override_learner_access 	 => p_override_learner_access
1486     );
1487   --
1488   -- Convert API warning boolean parameter values to specific
1489   -- messages and add them to Multiple Message List
1490   --
1491   --
1492   -- Convert API non-warning boolean parameter values
1493   --
1494   --
1495   -- Derive the API return status value based on whether
1496   -- messages of any type exist in the Multiple Message List.
1497   -- Also disable Multiple Message Detection.
1498   --
1499   p_return_status := hr_multi_message.get_return_status_disable;
1500   hr_utility.set_location(' Leaving:' || l_proc,20);
1501   --
1502 end update_delegate_booking;
1503 
1504 
1505 
1506 
1507 end pqp_riw_enroll_wrapper;