DBA Data[Home] [Help]
Skip to content

PACKAGE BODY: APPS.PQP_RIW_CLASS_WRAPPER

Source


1 PACKAGE BODY pqp_riw_class_wrapper  as
2 /* $Header: pqpriwclwr.pkb 120.0.12010000.8 2009/04/24 08:37:28 psengupt noship $ */
3 
4 -- =============================================================================
5 -- ~ Package Body Global variables:
6 -- =============================================================================
7 g_package  varchar2(33) := 'pqp_riw_class_wrapper';
8 g_class_rec                     ota_events_vl%rowtype;
9 g_interface_code              varchar2(150);
10 g_course_end_time					varchar2(9);
11 g_course_start_time			varchar2(9);
12 
13 -- =============================================================================
14 -- Default_Record_Values:
15 -- =============================================================================
16 function Default_Class_Rec
17          return ota_events_vl%rowtype is
18   l_proc_name    constant varchar2(150) := g_package||'Default_Class_Rec';
19   l_class_rec     ota_events_vl%rowtype;
20 
21 begin
22 
23   Hr_Utility.set_location(' Entering: '||l_proc_name, 5);
24   /*
25    ==========================================================================
26    g_varchar2  constant varchar2(9) := '$Sys_Def$';
27    g_number  constant number        := -987123654;
28    g_date  constant date            := to_date('01-01-4712', 'DD-MM-SYYYY');
29    ==========================================================================
30   */
31   Hr_Utility.set_location(' Before : ', 5);
32 
33   l_class_rec.vendor_id               :=  hr_api.g_number      ;
34   l_class_rec.activity_version_id     :=  hr_api.g_number      ;
35   l_class_rec.business_group_id       :=  hr_api.g_number      ;
36   l_class_rec.organization_id         :=  hr_api.g_number      ;
37   l_class_rec.event_type              :=  hr_api.g_varchar2    ;
38   l_class_rec.title                   :=  hr_api.g_varchar2    ;
39   l_class_rec.budget_cost             :=  hr_api.g_number      ;
40   l_class_rec.actual_cost             :=  hr_api.g_number      ;
41   Hr_Utility.set_location(' One : ', 5);
42   l_class_rec.budget_currency_code    :=  hr_api.g_varchar2    ;
43   Hr_Utility.set_location(' Two : ', 5);
44   l_class_rec.centre                  :=  hr_api.g_varchar2    ;
45   Hr_Utility.set_location(' Three : ', 5);
46   l_class_rec.comments                :=  hr_api.g_varchar2    ;
47   Hr_Utility.set_location(' Four : ', 5);
48   l_class_rec.course_end_date         :=  hr_api.g_date        ;
49   Hr_Utility.set_location(' Five : ', 5);
50 --  l_class_rec.course_end_time         :=  hr_api.g_varchar2    ;
51   g_course_end_time         :=  hr_api.g_varchar2    ;
52   Hr_Utility.set_location(' Siz : ', 5);
53   l_class_rec.course_start_date       :=  hr_api.g_date        ;
54   Hr_Utility.set_location(' Sev : ', 5);
55 --  l_class_rec.course_start_time       :=  hr_api.g_varchar2    ;
56   g_course_start_time       :=  hr_api.g_varchar2    ;
57   Hr_Utility.set_location(' Ei : ', 5);
58 
59   l_class_rec.duration                :=  hr_api.g_number      ;
60   l_class_rec.duration_units          :=  hr_api.g_varchar2    ;
61   l_class_rec.enrolment_end_date      :=  hr_api.g_date        ;
62   l_class_rec.enrolment_start_date    :=  hr_api.g_date        ;
63   l_class_rec.language_id             :=  hr_api.g_number      ;
64   l_class_rec.user_status             :=  hr_api.g_varchar2    ;
65   l_class_rec.development_event_type  :=  hr_api.g_varchar2    ;
66   l_class_rec.event_status            :=  hr_api.g_varchar2    ;
67 
68   l_class_rec.price_basis             :=  hr_api.g_varchar2    ;
69   l_class_rec.currency_code           :=  hr_api.g_varchar2    ;
70   l_class_rec.maximum_attendees       :=  hr_api.g_number      ;
71   l_class_rec.maximum_internal_attendees:=  hr_api.g_number      ;
72   l_class_rec.minimum_attendees       :=  hr_api.g_number      ;
73   l_class_rec.standard_price          :=  hr_api.g_number      ;
74   l_class_rec.category_code           :=  hr_api.g_varchar2    ;
75   l_class_rec.parent_event_id         :=  hr_api.g_number      ;
76   l_class_rec.book_independent_flag   :=  hr_api.g_varchar2    ;
77   l_class_rec.public_event_flag       :=  hr_api.g_varchar2    ;
78   l_class_rec.secure_event_flag       :=  hr_api.g_varchar2    ;
79   l_class_rec.evt_information_category:=  hr_api.g_varchar2    ;
80   l_class_rec.evt_information1        :=  hr_api.g_varchar2    ;
81   l_class_rec.evt_information2        :=  hr_api.g_varchar2    ;
82   l_class_rec.evt_information3        :=  hr_api.g_varchar2    ;
83   l_class_rec.evt_information4        :=  hr_api.g_varchar2    ;
84   l_class_rec.evt_information5        :=  hr_api.g_varchar2    ;
85   l_class_rec.evt_information6        :=  hr_api.g_varchar2    ;
89   l_class_rec.evt_information10       :=  hr_api.g_varchar2    ;
86   l_class_rec.evt_information7        :=  hr_api.g_varchar2    ;
87   l_class_rec.evt_information8        :=  hr_api.g_varchar2    ;
88   l_class_rec.evt_information9        :=  hr_api.g_varchar2    ;
90   l_class_rec.evt_information11       :=  hr_api.g_varchar2    ;
91   l_class_rec.evt_information12       :=  hr_api.g_varchar2    ;
92   l_class_rec.evt_information13       :=  hr_api.g_varchar2 ;
93   l_class_rec.evt_information14       :=  hr_api.g_varchar2 ;
94   l_class_rec.evt_information15       :=  hr_api.g_varchar2 ;
95   l_class_rec.evt_information16       :=  hr_api.g_varchar2 ;
96   l_class_rec.evt_information17       :=  hr_api.g_varchar2 ;
97   l_class_rec.evt_information18       :=  hr_api.g_varchar2 ;
98   l_class_rec.evt_information19       :=  hr_api.g_varchar2 ;
99   l_class_rec.evt_information20       :=  hr_api.g_varchar2 ;
100   l_class_rec.project_id              :=  hr_api.g_number   ;
101   l_class_rec.owner_id                :=  hr_api.g_number   ;
102   l_class_rec.line_id	              :=  hr_api.g_number   ;
103   l_class_rec.org_id	              :=  hr_api.g_number   ;
104   l_class_rec.training_center_id      :=  hr_api.g_number   ;
105   l_class_rec.location_id	      :=  hr_api.g_number   ;
106   l_class_rec.offering_id	      :=  hr_api.g_number   ;
107   l_class_rec.timezone	              :=  hr_api.g_varchar2 ;
108   l_class_rec.parent_offering_id      :=  hr_api.g_number   ;
109   l_class_rec.data_source             :=  hr_api.g_varchar2 ;
110 
111   Hr_Utility.set_location('Leaving: '||l_proc_name, 80);
112   return l_class_rec;
113 exception
114   when others then
115   Hr_Utility.set_location('Leaving: '||l_proc_name, 90);
116   raise;
117 
118 end Default_Class_Rec;
119 
120 
121 -- =============================================================================
122 -- Get_Record_Values:
123 -- =============================================================================
124 function Get_Record_Values
125         (p_interface_code in varchar2 default null)
126          return ota_events_vl%rowtype is
127 
128   cursor bne_cols(c_interface_code in varchar2) is
129   select lower(bic.interface_col_name) interface_col_name
130     from bne_interface_cols_b  bic
131    where bic.interface_code = c_interface_code
132      and bic.display_flag ='Y';
133   --and bic.interface_col_type <> 2;
134 
135   -- To query cols which are not displayed (DFF segments)
136    cursor bne_cols_no_disp(c_interface_code in varchar2) is
137   select lower(bic.interface_col_name) interface_col_name
138     from bne_interface_cols_b  bic
139    where bic.interface_code = c_interface_code
140      and bic.display_flag ='N';
141 
142   l_class_rec            ota_events_vl%rowtype;
143   col_name             varchar2(150);
144   l_proc_name constant varchar2(150) := g_package||'Get_Record_Values';
145 begin
146 
147   Hr_Utility.set_location(' Entering: '||l_proc_name, 5);
148  hr_utility.set_location('p_interface_code'||p_interface_code, 10);
149   l_class_rec := Default_Class_Rec;
150  hr_utility.set_location('p_interface_code'||p_interface_code, 20);
151  hr_utility.set_location('g_interface_code'||g_interface_code, 5);
152 
153 
154   for col_rec in bne_cols (g_interface_code)
155   loop
156  hr_utility.set_location(' in loop col_rec.interface_col_name'||col_rec.interface_col_name, 15);
160           l_class_rec.vendor_id := g_class_rec.vendor_id;
157    case col_rec.interface_col_name
158 
159     when 'p_vendor_id' then
161     when 'p_activity_version_id' then
162           l_class_rec.activity_version_id := g_class_rec.activity_version_id;
163     when 'p_business_grouid' then
164           l_class_rec.business_group_id := g_class_rec.business_group_id;
165     when 'p_organization_id' then
166           l_class_rec.organization_id := g_class_rec.organization_id;
167     when 'p_event_type' then
168           l_class_rec.event_type := g_class_rec.event_type;
169     when 'p_title' then
170           l_class_rec.title := g_class_rec.title;
171     when 'p_budget_cost' then
172           l_class_rec.budget_cost := g_class_rec.budget_cost;
173     when 'p_actual_cost' then
174           l_class_rec.actual_cost := g_class_rec.actual_cost;
175     when 'p_budget_currency_code' then
176           l_class_rec.budget_currency_code := g_class_rec.budget_currency_code;
177     when 'p_centre' then
178           l_class_rec.centre := g_class_rec.centre;
179     when 'p_comments' then
180           l_class_rec.comments := g_class_rec.comments;
181     when 'p_course_end_date' then
182           l_class_rec.course_end_date := g_class_rec.course_end_date;
183     when 'p_course_end_time' then
184 --          l_class_rec.course_end_time := g_class_rec.course_end_time;
185           g_course_end_time := g_class_rec.course_end_time;
186     when 'p_course_start_date' then
187           l_class_rec.course_start_date := g_class_rec.course_start_date;
188     when 'p_course_start_time' then
189 --          l_class_rec.course_start_time := g_class_rec.course_start_time;
190 					g_course_start_time:= g_class_rec.course_start_time;
191     when 'p_duration' then
192           l_class_rec.duration := g_class_rec.duration;
193     when 'p_duration_units' then
194           l_class_rec.duration_units := g_class_rec.duration_units;
195     when 'p_enrolment_end_date' then
196           l_class_rec.enrolment_end_date := g_class_rec.enrolment_end_date;
197     when 'p_enrolment_start_date' then
198           l_class_rec.enrolment_start_date := g_class_rec.enrolment_start_date;
199     when 'p_language_id' then
200           l_class_rec.language_id := g_class_rec.language_id;
201     when 'p_user_status' then
202           l_class_rec.user_status := g_class_rec.user_status;
203     when 'p_development_event_type' then
204           l_class_rec.development_event_type := g_class_rec.development_event_type;
205     when 'p_event_status' then
206           l_class_rec.event_status := g_class_rec.event_status;
207     when 'p_price_basis' then
208           l_class_rec.price_basis := g_class_rec.price_basis;
209     when 'p_currency_code' then
210           l_class_rec.currency_code := g_class_rec.currency_code;
211     when 'p_maximum_attendees' then
212           l_class_rec.maximum_attendees := g_class_rec.maximum_attendees;
213     when 'p_maximum_internal_attendees' then
214           l_class_rec.maximum_internal_attendees := g_class_rec.maximum_internal_attendees;
215     when 'p_minimum_attendees' then
216           l_class_rec.minimum_attendees := g_class_rec.minimum_attendees;
217     when 'p_standard_price' then
218           l_class_rec.standard_price := g_class_rec.standard_price;
219     when 'p_category_code' then
220           l_class_rec.category_code := g_class_rec.category_code;
221     when 'p_parent_event_id' then
222           l_class_rec.parent_event_id := g_class_rec.parent_event_id;
223     when 'p_book_independent_flag' then
224           l_class_rec.book_independent_flag := g_class_rec.book_independent_flag;
225     when 'p_public_event_flag' then
226           l_class_rec.public_event_flag := g_class_rec.public_event_flag;
227     when 'p_secure_event_flag' then
228           l_class_rec.secure_event_flag := g_class_rec.secure_event_flag;
229     when 'p_project_id' then
230           l_class_rec.project_id := g_class_rec.project_id;
231     when 'p_owner_id' then
232           l_class_rec.owner_id := g_class_rec.owner_id;
233     when 'p_line_id' then
234           l_class_rec.line_id := g_class_rec.line_id;
235     when 'p_org_id' then
236           l_class_rec.org_id := g_class_rec.org_id;
237     when 'p_training_center_id' then
238           l_class_rec.training_center_id := g_class_rec.training_center_id;
239     when 'p_location_id' then
240           l_class_rec.location_id := g_class_rec.location_id;
241     when 'p_offering_id' then
242           l_class_rec.offering_id := g_class_rec.offering_id;
243     when 'p_timezone' then
244           l_class_rec.timezone := g_class_rec.timezone;
245     when 'p_parent_offering_id' then
246           l_class_rec.parent_offering_id := g_class_rec.parent_offering_id;
247     when 'p_data_source' then
248           l_class_rec.data_source := g_class_rec.data_source;
249 
250     -- DFF
251     when 'p_evt_information_category' then
252           l_class_rec.evt_information_category := g_class_rec.evt_information_category;
253           if l_class_rec.evt_information_category is not null then
254           for col_rec1 in bne_cols_no_disp(g_interface_code) loop
255 
256              case col_rec1.interface_col_name
257              when 'p_evt_information1' then
258                    l_class_rec.evt_information1 := g_class_rec.evt_information1;
259              when 'p_evt_information2' then
260                    l_class_rec.evt_information2 := g_class_rec.evt_information2;
261              when 'p_evt_information3' then
262                    l_class_rec.evt_information3 := g_class_rec.evt_information3;
263              when 'p_evt_information4' then
267              when 'p_evt_information6' then
264                    l_class_rec.evt_information4 := g_class_rec.evt_information4;
265              when 'p_evt_information5' then
266                    l_class_rec.evt_information5 := g_class_rec.evt_information5;
268                    l_class_rec.evt_information6 := g_class_rec.evt_information6;
269              when 'p_evt_information7' then
270                    l_class_rec.evt_information7 := g_class_rec.evt_information7;
271              when 'p_evt_information8' then
272                    l_class_rec.evt_information8 := g_class_rec.evt_information8;
273              when 'p_evt_information9' then
274                    l_class_rec.evt_information9 := g_class_rec.evt_information9;
275              when 'p_evt_information10' then
276                    l_class_rec.evt_information10 := g_class_rec.evt_information10;
277              when 'p_evt_information11' then
278                    l_class_rec.evt_information11 := g_class_rec.evt_information11;
279              when 'p_evt_information12' then
280                    l_class_rec.evt_information12 := g_class_rec.evt_information12;
281              when 'p_evt_information13' then
282                    l_class_rec.evt_information13 := g_class_rec.evt_information13;
283              when 'p_evt_information14' then
284                    l_class_rec.evt_information14 := g_class_rec.evt_information14;
285              when 'p_evt_information15' then
286                    l_class_rec.evt_information15 := g_class_rec.evt_information15;
287              when 'p_evt_information16' then
288                    l_class_rec.evt_information16 := g_class_rec.evt_information16;
289              when 'p_evt_information17' then
290                    l_class_rec.evt_information17 := g_class_rec.evt_information17;
291              when 'p_evt_information18' then
292                    l_class_rec.evt_information18 := g_class_rec.evt_information18;
293              when 'p_evt_information19' then
294                    l_class_rec.evt_information19 := g_class_rec.evt_information19;
295              when 'p_evt_information20' then
296                    l_class_rec.evt_information20 := g_class_rec.evt_information20;
297              else
298                   null;
299              end case;
300             end loop;
301            end if;
302    else
303       null;
304    end case;
305   end loop;
306   Hr_Utility.set_location(' Leaving: '||l_proc_name, 80);
307   return l_class_rec;
308 
309 end Get_Record_Values;
310 
311 -- =============================================================================
312 -- InsUpd_Class:
313 -- =============================================================================
314 
315 PROCEDURE InsUpd_Class
316   (p_effective_date               in     date      default sysdate
317   ,p_event_id                     in     number    default null
318   ,p_vendor_id                    in     number    default null
319   ,p_activity_version_id          in     number    default null
320   ,p_dummy_col_offering		  in	 varchar2
321   ,p_parent_offering_id           in     number
322   ,p_business_group_id            in     number
323   ,p_organization_id              in     number    default null
324   ,p_event_type                   in     varchar2
325   ,p_object_version_number        in     number
326   ,p_title                        in     varchar2
327   ,p_budget_cost                  in     number    default null
328   ,p_actual_cost                  in     number    default null
329   ,p_budget_currency_code         in     varchar2  default null
330   ,p_centre                       in     varchar2  default null
331   ,p_comments                     in     varchar2  default null
332   ,p_course_end_date              in     date      default null
333   ,p_course_end_time              in     varchar2  default null
334   ,p_course_start_date            in     date      default null
335   ,p_course_start_time            in     varchar2  default null
336   ,p_duration                     in     number    default null
337   ,p_duration_units               in     varchar2  default null
338   ,p_enrolment_end_date           in     date      default null
339   ,p_enrolment_start_date         in     date      default null
340   ,p_language_id                  in     number    default null
341   ,p_user_status                  in     varchar2  default null
342   ,p_development_event_type       in     varchar2  default null
343   ,p_event_status                 in     varchar2  default null
344   ,p_price_basis                  in     varchar2  default null
345   ,p_currency_code                in     varchar2  default null
346   ,p_maximum_attendees            in     number    default null
347   ,p_maximum_internal_attendees   in     number    default null
348   ,p_minimum_attendees            in     number    default null
349   ,p_standard_price               in     number    default null
350   ,p_category_code                in     varchar2  default null
351   ,p_parent_event_id              in     number    default null
352   ,p_book_independent_flag        in     varchar2  default null
353   ,p_public_event_flag            in     varchar2  default null
354   ,p_secure_event_flag            in     varchar2  default null
355   ,p_evt_information_category     in     varchar2  default null
356   ,p_evt_information1             in     varchar2  default null
357   ,p_evt_information2             in     varchar2  default null
358   ,p_evt_information3             in     varchar2  default null
359   ,p_evt_information4             in     varchar2  default null
360   ,p_evt_information5             in     varchar2  default null
361   ,p_evt_information6             in     varchar2  default null
362   ,p_evt_information7             in     varchar2  default null
363   ,p_evt_information8             in     varchar2  default null
364   ,p_evt_information9             in     varchar2  default null
365   ,p_evt_information10            in     varchar2  default null
366   ,p_evt_information11            in     varchar2  default null
367   ,p_evt_information12            in     varchar2  default null
368   ,p_evt_information13            in     varchar2  default null
369   ,p_evt_information14            in     varchar2  default null
370   ,p_evt_information15            in     varchar2  default null
371   ,p_evt_information16            in     varchar2  default null
372   ,p_evt_information17            in     varchar2  default null
373   ,p_evt_information18            in     varchar2  default null
374   ,p_evt_information19            in     varchar2  default null
375   ,p_evt_information20            in     varchar2  default null
376   ,p_project_id                   in     number    default null
377   ,p_owner_id                     in     number    default null
378   ,p_line_id                      in     number    default null
379   ,p_org_id                       in     number    default null
380   ,p_training_center_id           in     number    default null
381   ,p_location_id                  in     number    default null
382   ,p_offering_id                  in     number    default null
383   ,p_timezone                     in     varchar2  default null
384   ,p_validate                     in     number    default hr_api.g_false_num
385   ,p_return_status                   out nocopy varchar2
386   ,p_data_source                  in     varchar2  default null
387   ,P_CRT_UPD			  in 	 varchar2   default null
388   ) is
389 
390 
391   -- =============================================================================
392   -- Variables for API Boolean parameters
393   -- =============================================================================
394 
395   l_validate                      boolean;
396   -- =============================================================================
397   -- Variables for IN/OUT parameters
398   -- =============================================================================
399   l_event_id                      ota_events.event_id%TYPE;
400 
401   -- =============================================================================
402   -- Other variables
403   -- =============================================================================
404 
405   l_error_msg              varchar2(4000);
406 
407   -- =============================================================================
408   -- Default_Record_Values:
409   -- =============================================================================
410 
411 
412   l_proc    varchar2(72) := g_package ||'InsUpd_Class';
413 
414   l_create_flag    number(2) := 1;
415   l_public_event_flag varchar2(30);
416   e_upl_not_allowed exception; -- when mode is 'View Only'
417   e_crt_not_allowed exception; -- when mode is 'Update Only'
418   g_upl_err_msg varchar2(100) := 'Upload NOT allowed.';
419   g_crt_err_msg varchar2(100) := 'Creating NOT allowed.';
420 
421   l_ev_id          number(9,0);
422   l_obj_ver_num    number(3);
423   l_object_version_number  number(3);
424   l_class_rec     ota_events_vl%rowtype;
425   l_interface_code      varchar2(40);
426   l_crt_upd             varchar2(1);
427   l_crt_upd_len         number;
428 
429 
430   Begin
431     --hr_utility.trace_on(null, 'Class_Trace');
432     hr_utility.set_location('Entering: '|| l_proc, 11);
433     l_validate :=    hr_api.constant_to_boolean  (p_constant_value => p_validate);
434     l_event_id := p_event_id;
435     --
436     -- Call API
437     --
438   if l_event_id is not null then
439       l_create_flag := 2;
440   else
441       l_create_flag := 1;
442   end if;
443 
444   if(p_public_event_flag is not null)then
445      if (p_public_event_flag ='Y') then  -- If restricted public event flag is set to 'N'
446         l_public_event_flag :='N';
447      end if;
448      if (p_public_event_flag ='N') then  -- If unrestricted public event flag is set to 'Y'
449         l_public_event_flag :='Y';
450      end if;
451   end if;
452 
453  l_crt_upd_len := LENGTH(p_crt_upd);
454  l_crt_upd := SUBSTR(p_crt_upd, 1, 1);
455  IF l_crt_upd_len > 1 THEN
456      l_interface_code := SUBSTR(p_crt_upd, 3);
457  ELSE
458      l_interface_code := null;
459  END IF;
460 
461  if (l_crt_upd = 'D') then
462    raise e_upl_not_allowed;  -- View only flag is enabled but Trying to Upload
463   end if;
464   if (l_crt_upd = 'U' and l_create_flag = 1) then
465    raise e_crt_not_allowed;  -- Update only flag is enabled but Trying to Create
466  end if;
467 
468  hr_utility.set_location('The class Id is : '||l_event_id, 89);
469 
470  if l_create_flag = 1 then
471   ota_event_api.create_class
472     (p_effective_date               => p_effective_date
473     ,p_event_id                     => l_ev_id
474     ,p_vendor_id                    => p_vendor_id
475     ,p_activity_version_id          => p_activity_version_id
476     ,p_business_group_id            => p_business_group_id
477     ,p_organization_id              => p_organization_id
478     ,p_event_type                   => p_event_type
479     ,p_object_version_number        => l_obj_ver_num
480     ,p_title                        => p_title
481     ,p_budget_cost                  => p_budget_cost
482     ,p_actual_cost                  => p_actual_cost
483     ,p_budget_currency_code         => p_budget_currency_code
484     ,p_centre                       => p_centre
485     ,p_comments                     => p_comments
486     ,p_course_end_date              => p_course_end_date
487     ,p_course_end_time              => p_course_end_time
488     ,p_course_start_date            => p_course_start_date
489     ,p_course_start_time            => p_course_start_time
490     ,p_duration                     => p_duration
491     ,p_duration_units               => p_duration_units
492     ,p_enrolment_end_date           => p_enrolment_end_date
493     ,p_enrolment_start_date         => p_enrolment_start_date
494     ,p_language_id                  => p_language_id
495     ,p_user_status                  => p_user_status
496     ,p_development_event_type       => p_development_event_type
497     ,p_event_status                 => p_event_status
498     ,p_price_basis                  => p_price_basis
499     ,p_currency_code                => p_currency_code
500     ,p_maximum_attendees            => p_maximum_attendees
501     ,p_maximum_internal_attendees   => p_maximum_internal_attendees
502     ,p_minimum_attendees            => p_minimum_attendees
503     ,p_standard_price               => p_standard_price
504     ,p_category_code                => p_category_code
505     ,p_parent_event_id              => p_parent_event_id
506     ,p_book_independent_flag        => p_book_independent_flag
507     ,p_public_event_flag            => l_public_event_flag
508     ,p_secure_event_flag            => p_secure_event_flag
509     ,p_evt_information_category     => p_evt_information_category
510     ,p_evt_information1             => p_evt_information1
511     ,p_evt_information2             => p_evt_information2
512     ,p_evt_information3             => p_evt_information3
513     ,p_evt_information4             => p_evt_information4
514     ,p_evt_information5             => p_evt_information5
515     ,p_evt_information6             => p_evt_information6
516     ,p_evt_information7             => p_evt_information7
517     ,p_evt_information8             => p_evt_information8
518     ,p_evt_information9             => p_evt_information9
519     ,p_evt_information10            => p_evt_information10
520     ,p_evt_information11            => p_evt_information11
521     ,p_evt_information12            => p_evt_information12
522     ,p_evt_information13            => p_evt_information13
523     ,p_evt_information14            => p_evt_information14
524     ,p_evt_information15            => p_evt_information15
525     ,p_evt_information16            => p_evt_information16
526     ,p_evt_information17            => p_evt_information17
527     ,p_evt_information18            => p_evt_information18
528     ,p_evt_information19            => p_evt_information19
529     ,p_evt_information20            => p_evt_information20
530     ,p_project_id                   => p_project_id
531     ,p_owner_id                     => p_owner_id
532     ,p_line_id                      => p_line_id
533     ,p_org_id                       => p_org_id
534     ,p_training_center_id           => p_training_center_id
535     ,p_location_id                  => p_location_id
536     ,p_offering_id                  => p_offering_id
537     ,p_timezone                     => p_timezone
538     ,p_parent_offering_id           => p_parent_offering_id
539     ,p_validate                     => l_validate
540     ,p_data_source                  => p_data_source
541     );
542  end if;
543 
544 
545  if l_create_flag = 2 then
546  g_interface_code := nvl(l_interface_code,'PQP_OLM_CLASS_INTF');
547 
548  g_class_rec.vendor_id               :=   p_vendor_id                    ;
549   Hr_Utility.set_location(' One : ', 5);
550  g_class_rec.activity_version_id     :=   p_activity_version_id          ;
551 
552  g_class_rec.business_group_id       :=   p_business_group_id            ;
553  g_class_rec.organization_id         :=   p_organization_id              ;
554  g_class_rec.event_type              :=   p_event_type                   ;
555  g_class_rec.title                   :=   p_title                        ;
556  g_class_rec.budget_cost             :=   p_budget_cost                  ;
557  g_class_rec.actual_cost             :=   p_actual_cost                  ;
558  g_class_rec.budget_currency_code    :=   p_budget_currency_code         ;
559  g_class_rec.centre                  :=   p_centre                       ;
560  g_class_rec.comments                :=   p_comments                     ;
561  g_class_rec.course_end_date         :=   p_course_end_date              ;
562   Hr_Utility.set_location(' two : ', 5);
563  g_class_rec.course_end_time         :=   p_course_end_time              ;
564   Hr_Utility.set_location(' three : ', 5);
565  g_class_rec.course_start_date       :=   p_course_start_date            ;
566   Hr_Utility.set_location(' Four : ', 5);
567  g_class_rec.course_start_time       :=   p_course_start_time            ;
568   Hr_Utility.set_location(' Five : ', 5);
569  g_class_rec.duration                :=   p_duration                    ;
570  g_class_rec.duration_units          :=   p_duration_units               ;
571  g_class_rec.enrolment_end_date      :=   p_enrolment_end_date           ;
572  g_class_rec.enrolment_start_date    :=   p_enrolment_start_date         ;
573  g_class_rec.language_id             :=   p_language_id                  ;
574  g_class_rec.user_status             :=   p_user_status                  ;
575  g_class_rec.development_event_type  :=   p_development_event_type       ;
576  g_class_rec.event_status            :=   p_event_status                 ;
577   Hr_Utility.set_location(' Six : ', 5);
578  g_class_rec.price_basis             :=   p_price_basis                  ;
579  g_class_rec.currency_code           :=   p_currency_code                ;
580  g_class_rec.maximum_attendees       :=   p_maximum_attendees            ;
581  g_class_rec.maximum_internal_attendees:=   p_maximum_internal_attendees   ;
582  g_class_rec.minimum_attendees       :=   p_minimum_attendees            ;
583  g_class_rec.standard_price          :=   p_standard_price               ;
584  g_class_rec.category_code           :=   p_category_code                ;
585  g_class_rec.parent_event_id         :=   p_parent_event_id              ;
586  g_class_rec.book_independent_flag   :=   p_book_independent_flag        ;
587  g_class_rec.public_event_flag       :=   l_public_event_flag            ;
588  g_class_rec.secure_event_flag       :=   p_secure_event_flag            ;
589  g_class_rec.evt_information_category:=   p_evt_information_category     ;
590  g_class_rec.evt_information1        :=   p_evt_information1             ;
591  g_class_rec.evt_information2        :=   p_evt_information2             ;
592  g_class_rec.evt_information3        :=   p_evt_information3             ;
593  g_class_rec.evt_information4        :=   p_evt_information4             ;
594  g_class_rec.evt_information5        :=   p_evt_information5             ;
595  g_class_rec.evt_information6        :=   p_evt_information6             ;
596  g_class_rec.evt_information7        :=   p_evt_information7             ;
597  g_class_rec.evt_information8        :=   p_evt_information8             ;
598  g_class_rec.evt_information9        :=   p_evt_information9             ;
599  g_class_rec.evt_information10       :=   p_evt_information10            ;
600  g_class_rec.evt_information11       :=   p_evt_information11            ;
601  g_class_rec.evt_information12       :=   p_evt_information12          ;
602  g_class_rec.evt_information13       :=   p_evt_information13           ;
603  g_class_rec.evt_information14       :=   p_evt_information14           ;
604  g_class_rec.evt_information15       :=   p_evt_information15					;
605  g_class_rec.evt_information16       :=   p_evt_information16          ;
606  g_class_rec.evt_information17       :=   p_evt_information17          ;
607  g_class_rec.evt_information18       :=   p_evt_information18          ;
608  g_class_rec.evt_information19       :=   p_evt_information19          ;
609  g_class_rec.evt_information20       :=   p_evt_information20          ;
610  g_class_rec.project_id              :=   p_project_id                 ;
611  g_class_rec.owner_id                :=   p_owner_id                   ;
612  g_class_rec.line_id	              :=  p_line_id	               ;
613  g_class_rec.org_id	              :=  p_org_id	               ;
614  g_class_rec.training_center_id      :=   p_training_center_id         ;
615  g_class_rec.location_id	      :=  p_location_id	               ;
616  g_class_rec.offering_id	      :=  p_offering_id		       ;
617  g_class_rec.timezone	              :=  p_timezone	               ;
618  g_class_rec.parent_offering_id      :=   p_parent_offering_id 	       ;
619  g_class_rec.data_source             :=   p_data_source                ;
620 
621   select object_version_number into l_object_version_number from ota_events
622     where event_id = l_event_id;
623 
624 l_class_rec := Get_Record_Values(g_interface_code);
625   ota_event_api.update_class
626     (p_effective_date               => p_effective_date
627     ,p_event_id                     => l_event_id
628     ,p_vendor_id                    => l_class_rec.vendor_id
629     ,p_activity_version_id          => l_class_rec.activity_version_id
630     ,p_business_group_id            => l_class_rec.business_group_id
631     ,p_organization_id              => l_class_rec.organization_id
632     ,p_event_type                   => l_class_rec.event_type
633     ,p_object_version_number        => l_object_version_number
634     ,p_title                        => l_class_rec.title
635     ,p_budget_cost                  => l_class_rec.budget_cost
636     ,p_actual_cost                  => l_class_rec.actual_cost
637     ,p_budget_currency_code         => l_class_rec.budget_currency_code
638     ,p_centre                       => l_class_rec.centre
639     ,p_comments                     => l_class_rec.comments
640     ,p_course_end_date              => l_class_rec.course_end_date
641     ,p_course_end_time              => g_course_end_time
642     ,p_course_start_date            => l_class_rec.course_start_date
643     ,p_course_start_time            => g_course_start_time
644     ,p_duration                     => l_class_rec.duration
645     ,p_duration_units               => l_class_rec.duration_units
646     ,p_enrolment_end_date           => l_class_rec.enrolment_end_date
647     ,p_enrolment_start_date         => l_class_rec.enrolment_start_date
648     ,p_language_id                  => l_class_rec.language_id
649     ,p_user_status                  => l_class_rec.user_status
650     ,p_development_event_type       => l_class_rec.development_event_type
651     ,p_event_status                 => l_class_rec.event_status
652     ,p_price_basis                  => l_class_rec.price_basis
653     ,p_currency_code                => l_class_rec.currency_code
654     ,p_maximum_attendees            => l_class_rec.maximum_attendees
655     ,p_maximum_internal_attendees   => l_class_rec.maximum_internal_attendees
656     ,p_minimum_attendees            => l_class_rec.minimum_attendees
657     ,p_standard_price               => l_class_rec.standard_price
658     ,p_category_code                => l_class_rec.category_code
659     ,p_parent_event_id              => l_class_rec.parent_event_id
660     ,p_book_independent_flag        => l_class_rec.book_independent_flag
661     ,p_public_event_flag            => l_class_rec.public_event_flag
662     ,p_secure_event_flag            => l_class_rec.secure_event_flag
663     ,p_evt_information_category     => l_class_rec.evt_information_category
664     ,p_evt_information1             => l_class_rec.evt_information1
665     ,p_evt_information2             => l_class_rec.evt_information2
666     ,p_evt_information3             => l_class_rec.evt_information3
667     ,p_evt_information4             => l_class_rec.evt_information4
668     ,p_evt_information5             => l_class_rec.evt_information5
669     ,p_evt_information6             => l_class_rec.evt_information6
670     ,p_evt_information7             => l_class_rec.evt_information7
671     ,p_evt_information8             => l_class_rec.evt_information8
672     ,p_evt_information9             => l_class_rec.evt_information9
673     ,p_evt_information10            => l_class_rec.evt_information10
674     ,p_evt_information11            => l_class_rec.evt_information11
675     ,p_evt_information12            => l_class_rec.evt_information12
676     ,p_evt_information13            => l_class_rec.evt_information13
677     ,p_evt_information14            => l_class_rec.evt_information14
678     ,p_evt_information15            => l_class_rec.evt_information15
679     ,p_evt_information16            => l_class_rec.evt_information16
680     ,p_evt_information17            => l_class_rec.evt_information17
681     ,p_evt_information18            => l_class_rec.evt_information18
682     ,p_evt_information19            => l_class_rec.evt_information19
683     ,p_evt_information20            => l_class_rec.evt_information20
684     ,p_project_id                   => l_class_rec.project_id
685     ,p_owner_id                     => l_class_rec.owner_id
686     ,p_line_id                      => l_class_rec.line_id
687     ,p_org_id                       => l_class_rec.org_id
688     ,p_training_center_id           => l_class_rec.training_center_id
689     ,p_location_id                  => l_class_rec.location_id
690     ,p_offering_id                  => l_class_rec.offering_id
691     ,p_timezone                     => l_class_rec.timezone
692     ,p_parent_offering_id           => l_class_rec.parent_offering_id
693     ,p_validate                     => l_validate
694     ,p_data_source                  => l_class_rec.data_source
695     );
696  end if;
697 
698   Exception
699 
700   when e_upl_not_allowed then
701     hr_utility.set_message(8303, 'PQP_230500_HROSS_GENERIC_ERR');
702     hr_utility.set_message_token('GENERIC_TOKEN',g_upl_err_msg);
703     hr_utility.set_location('Leaving: ' || l_proc, 90);
704     hr_utility.raise_error;
705   when e_crt_not_allowed then
706     hr_utility.set_message(8303, 'PQP_230500_HROSS_GENERIC_ERR');
707     hr_utility.set_message_token('GENERIC_TOKEN',g_crt_err_msg);
708     hr_utility.set_location('Leaving: ' || l_proc, 100);
709     hr_utility.raise_error;
710   when others then
711    --l_error_msg := Substr(SQLERRM,1,2000);
712    hr_utility.set_location('SQLCODE :' || SQLCODE,90);
713    hr_utility.set_location('SQLERRM :' || SQLERRM,90);
714    --hr_utility.set_message(8303, 'PQP_230500_HROSS_GENERIC_ERR');
715    --hr_utility.set_message_token('GENERIC_TOKEN',substr(l_error_msg,1,500) );
716    hr_utility.set_location(' Leaving:' || l_proc,50);
717    hr_utility.raise_error;
718 
719 
720 
721 end InsUpd_Class;
722 
723 end pqp_riw_class_wrapper;