DBA Data[Home] [Help]

PACKAGE BODY: APPS.OTA_TAV_UPD

Source


1 PACKAGE BODY ota_tav_upd as
2 /* $Header: ottav01t.pkb 120.2.12010000.2 2008/12/19 09:26:32 shwnayak ship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  ota_tav_upd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------------< update_dml >------------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 --   This procedure controls the actual dml update logic. The functions of this
17 --   procedure are as follows:
18 --   1) Increment the object_version_number by 1 if the object_version_number
19 --      is defined as an attribute for this entity.
20 --   2) To set and unset the g_api_dml status as required (as we are about to
21 --      perform dml).
22 --   3) To update the specified row in the schema using the primary key in
23 --      the predicates.
24 --   4) To trap any constraint violations that may have occurred.
25 --   5) To raise any other errors.
26 --
27 -- Pre Conditions:
28 --   This is an internal private procedure which must be called from the upd
29 --   procedure.
30 --
31 -- In Arguments:
32 --   A Pl/Sql record structre.
33 --
34 -- Post Success:
35 --   The specified row will be updated in the schema.
36 --
37 -- Post Failure:
38 --   On the update dml failure it is important to note that we always reset the
39 --   g_api_dml status to false.
40 --   If a check, unique or parent integrity constraint violation is raised the
41 --   constraint_error procedure will be called.
42 --   If any other error is reported, the error will be raised after the
43 --   g_api_dml status is reset.
44 --
45 -- Developer Implementation Notes:
46 --   The update 'set' arguments list should be modified if any of your
47 --   attributes are not updateable.
48 --
49 -- Access Status:
50 --   Internal Development Use Only.
51 --
52 -- {End Of Comments}
53 -- ----------------------------------------------------------------------------
54 Procedure update_dml(p_rec in out nocopy ota_tav_shd.g_rec_type) is
55 --
56   l_proc  varchar2(72) := g_package||'update_dml';
57 --
58 Begin
59   hr_utility.set_location('Entering:'||l_proc, 5);
60   --
61   -- Increment the object version
62   --
63   p_rec.object_version_number := p_rec.object_version_number + 1;
64   --
65   ota_tav_shd.g_api_dml := true;  -- Set the api dml status
66   --
67   -- Update the ota_activity_versions Row
68   --
69   update ota_activity_versions
70   set
71   activity_version_id               = p_rec.activity_version_id,
72   activity_id                       = p_rec.activity_id,
73   superseded_by_act_version_id      = p_rec.superseded_by_act_version_id,
74   developer_organization_id         = p_rec.developer_organization_id,
75   controlling_person_id             = p_rec.controlling_person_id,
76   object_version_number             = p_rec.object_version_number,
77   version_name                      = p_rec.version_name,
78   comments                          = p_rec.comments,
79   description                       = p_rec.description,
80   duration                          = p_rec.duration,
81   duration_units                    = p_rec.duration_units,
82   end_date                          = p_rec.end_date,
83   intended_audience                 = p_rec.intended_audience,
84   language_id                       = p_rec.language_id,
85   maximum_attendees                 = p_rec.maximum_attendees,
86   minimum_attendees                 = p_rec.minimum_attendees,
87   objectives                        = p_rec.objectives,
88   start_date                        = p_rec.start_date,
89   success_criteria                  = p_rec.success_criteria,
90   user_status                       = p_rec.user_status,
91   vendor_id                         = p_rec.vendor_id,
92   actual_cost                       = p_rec.actual_cost,
93   budget_cost                       = p_rec.budget_cost,
94   budget_currency_code              = p_rec.budget_currency_code,
95   expenses_allowed                  = p_rec.expenses_allowed,
96   professional_credit_type          = p_rec.professional_credit_type,
97   professional_credits              = p_rec.professional_credits,
98   maximum_internal_attendees        = p_rec.maximum_internal_attendees,
99   tav_information_category          = p_rec.tav_information_category,
100   tav_information1                  = p_rec.tav_information1,
101   tav_information2                  = p_rec.tav_information2,
102   tav_information3                  = p_rec.tav_information3,
103   tav_information4                  = p_rec.tav_information4,
104   tav_information5                  = p_rec.tav_information5,
105   tav_information6                  = p_rec.tav_information6,
106   tav_information7                  = p_rec.tav_information7,
107   tav_information8                  = p_rec.tav_information8,
108   tav_information9                  = p_rec.tav_information9,
109   tav_information10                 = p_rec.tav_information10,
110   tav_information11                 = p_rec.tav_information11,
111   tav_information12                 = p_rec.tav_information12,
112   tav_information13                 = p_rec.tav_information13,
113   tav_information14                 = p_rec.tav_information14,
114   tav_information15                 = p_rec.tav_information15,
115   tav_information16                 = p_rec.tav_information16,
116   tav_information17                 = p_rec.tav_information17,
117   tav_information18                 = p_rec.tav_information18,
118   tav_information19                 = p_rec.tav_information19,
119   tav_information20                 = p_rec.tav_information20,
120   inventory_item_id			= p_rec.inventory_item_id,
121   organization_id				= p_rec.organization_id,
122   rco_id				      = p_rec.rco_id,
123   version_code                = p_rec.version_code,
124   business_group_id                    = p_rec.business_group_id,
125   data_source                   = p_rec.data_source,
126       competency_update_level          = p_rec.competency_update_level
127 
128   where activity_version_id = p_rec.activity_version_id;
129   --
130   ota_tav_shd.g_api_dml := false;   -- Unset the api dml status
131   --
132   hr_utility.set_location(' Leaving:'||l_proc, 10);
133 --
134 Exception
135   When hr_api.check_integrity_violated Then
136     -- A check constraint has been violated
137     ota_tav_shd.g_api_dml := false;   -- Unset the api dml status
138     ota_tav_shd.constraint_error
139       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
140   When hr_api.parent_integrity_violated Then
141     -- Parent integrity has been violated
142     ota_tav_shd.g_api_dml := false;   -- Unset the api dml status
143     ota_tav_shd.constraint_error
144       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
145   When hr_api.unique_integrity_violated Then
146     -- Unique integrity has been violated
147     ota_tav_shd.g_api_dml := false;   -- Unset the api dml status
148     ota_tav_shd.constraint_error
149       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
150   When Others Then
151     ota_tav_shd.g_api_dml := false;   -- Unset the api dml status
152     Raise;
153 End update_dml;
154 --
155 -- ----------------------------------------------------------------------------
156 -- |------------------------------< pre_update >------------------------------|
157 -- ----------------------------------------------------------------------------
158 -- {Start Of Comments}
159 --
160 -- Description:
161 --   This private procedure contains any processing which is required before
162 --   the update dml.
163 --
164 -- Pre Conditions:
165 --   This is an internal procedure which is called from the upd procedure.
166 --
167 -- In Arguments:
168 --   A Pl/Sql record structre.
169 --
170 -- Post Success:
171 --   Processing continues.
172 --
173 -- Post Failure:
174 --   If an error has occurred, an error message and exception will be raised
175 --   but not handled.
176 --
177 -- Developer Implementation Notes:
178 --   Any pre-processing required before the update dml is issued should be
179 --   coded within this procedure. It is important to note that any 3rd party
180 --   maintenance should be reviewed before placing in this procedure.
181 --
182 -- Access Status:
183 --   Internal Development Use Only.
184 --
185 -- {End Of Comments}
186 -- ----------------------------------------------------------------------------
187 Procedure pre_update(p_rec in ota_tav_shd.g_rec_type) is
188 --
189   l_proc  varchar2(72) := g_package||'pre_update';
190 --
191 Begin
192   hr_utility.set_location('Entering:'||l_proc, 5);
193   --
194   hr_utility.set_location(' Leaving:'||l_proc, 10);
195 End pre_update;
196 --
197 -- ----------------------------------------------------------------------------
198 -- |-----------------------------< post_update >------------------------------|
199 -- ----------------------------------------------------------------------------
200 -- {Start Of Comments}
201 --
202 -- Description:
203 --   This private procedure contains any processing which is required after the
204 --   update dml.
205 --
206 -- Pre Conditions:
207 --   This is an internal procedure which is called from the upd procedure.
208 --
209 -- In Arguments:
210 --   A Pl/Sql record structre.
211 --
212 -- Post Success:
213 --   Processing continues.
214 --
215 -- Post Failure:
216 --   If an error has occurred, an error message and exception will be raised
217 --   but not handled.
218 --
219 -- Developer Implementation Notes:
220 --   Any post-processing required after the update dml is issued should be
221 --   coded within this procedure. It is important to note that any 3rd party
222 --   maintenance should be reviewed before placing in this procedure.
223 --
224 -- Access Status:
225 --   Internal Development Use Only.
226 --
227 -- {End Of Comments}
228 -- ----------------------------------------------------------------------------
229 Procedure post_update(p_rec in ota_tav_shd.g_rec_type) is
230 --
231   l_proc  varchar2(72) := g_package||'post_update';
232   l_start_date_changed boolean := ota_general.value_changed(ota_tav_shd.g_old_rec.start_date, p_rec.start_date);
233  l_end_date_changed boolean := ota_general.value_changed(ota_tav_shd.g_old_rec.end_date, p_rec.end_date);
234 --
235 Begin
236   hr_utility.set_location('Entering:'||l_proc, 5);
237   --
238   If not l_start_date_changed and not l_end_date_changed Then
239      return;
240   Else
241  /*
242      ota_rud_api.update_resource_usage_dates( p_rec.activity_version_id
243                                             ,ota_tav_shd.g_old_rec.start_date
244                                             , p_rec.start_date
245                                              , ota_tav_shd.g_old_rec.end_date
246                                              , p_rec.end_date
247                                              );
248  */
249      hr_competence_element_api.update_delivered_dates
250                                            ( p_rec.activity_version_id
251                                             ,ota_tav_shd.g_old_rec.start_date
252                                             , p_rec.start_date
253                                              , ota_tav_shd.g_old_rec.end_date
254                                              , p_rec.end_date
255                                              );
256   End if;
257   --
258   hr_utility.set_location(' Leaving:'||l_proc, 10);
259 End post_update;
260 --
261 -- ----------------------------------------------------------------------------
262 -- |-----------------------------< convert_defs >-----------------------------|
263 -- ----------------------------------------------------------------------------
264 -- {Start Of Comments}
265 --
266 -- Description:
267 --   The Convert_Defs function has one very important function:
268 --   It must return the record structure for the row with all system defaulted
269 --   values converted into its corresponding argument value for update. When
270 --   we attempt to update a row through the Upd business process , certain
271 --   arguments can be defaulted which enables flexibility in the calling of
272 --   the upd process (e.g. only attributes which need to be updated need to be
273 --   specified). For the upd business process to determine which attributes
274 --   have NOT been specified we need to check if the argument has a reserved
275 --   system default value. Therefore, for all attributes which have a
276 --   corresponding reserved system default mechanism specified we need to
277 --   check if a system default is being used. If a system default is being
278 --   used then we convert the defaulted value into its corresponding attribute
279 --   value held in the g_old_rec data structure.
280 --
281 -- Pre Conditions:
282 --   This private function can only be called from the upd process.
283 --
284 -- In Arguments:
285 --   A Pl/Sql record structre.
286 --
287 -- Post Success:
288 --   The record structure will be returned with all system defaulted argument
289 --   values converted into its current row attribute value.
290 --
291 -- Post Failure:
292 --   No direct error handling is required within this function. Any possible
293 --   errors within this function will be a PL/SQL value error due to conversion
294 --   of datatypes or data lengths.
295 --
296 -- Developer Implementation Notes:
297 --   None.
298 --
299 -- Access Status:
300 --   Internal Development Use Only.
301 --
302 -- {End Of Comments}
303 -- ----------------------------------------------------------------------------
304 Function convert_defs(p_rec in out nocopy ota_tav_shd.g_rec_type)
305          Return ota_tav_shd.g_rec_type is
306 --
307   l_proc  varchar2(72) := g_package||'convert_defs';
308 --
309 Begin
310   --
311   hr_utility.set_location('Entering:'||l_proc, 5);
312   --
313   -- We must now examine each argument value in the
314   -- p_rec plsql record structure
315   -- to see if a system default is being used. If a system default
316   -- is being used then we must set to the 'current' argument value.
317   --
318   If (p_rec.activity_id = hr_api.g_number) then
319     p_rec.activity_id :=
320     ota_tav_shd.g_old_rec.activity_id;
321   End If;
322   If (p_rec.superseded_by_act_version_id = hr_api.g_number) then
323     p_rec.superseded_by_act_version_id :=
324     ota_tav_shd.g_old_rec.superseded_by_act_version_id;
325   End If;
326   If (p_rec.developer_organization_id = hr_api.g_number) then
327     p_rec.developer_organization_id :=
328     ota_tav_shd.g_old_rec.developer_organization_id;
329   End If;
330   If (p_rec.controlling_person_id = hr_api.g_number) then
331     p_rec.controlling_person_id :=
332     ota_tav_shd.g_old_rec.controlling_person_id;
333   End If;
334   If (p_rec.version_name = hr_api.g_varchar2) then
335     p_rec.version_name :=
336     ota_tav_shd.g_old_rec.version_name;
337   End If;
338   If (p_rec.comments = hr_api.g_varchar2) then
339     p_rec.comments :=
340     ota_tav_shd.g_old_rec.comments;
341   End If;
342   If (p_rec.description = hr_api.g_varchar2) then
343     p_rec.description :=
344     ota_tav_shd.g_old_rec.description;
345   End If;
346   If (p_rec.duration = hr_api.g_number) then
347     p_rec.duration :=
348     ota_tav_shd.g_old_rec.duration;
349   End If;
350   If (p_rec.duration_units = hr_api.g_varchar2) then
351     p_rec.duration_units :=
352     ota_tav_shd.g_old_rec.duration_units;
353   End If;
354   If (p_rec.end_date = hr_api.g_date) then
355     p_rec.end_date :=
356     ota_tav_shd.g_old_rec.end_date;
357   End If;
358   If (p_rec.intended_audience = hr_api.g_varchar2) then
359     p_rec.intended_audience :=
360     ota_tav_shd.g_old_rec.intended_audience;
361   End If;
362   If (p_rec.language_id = hr_api.g_number) then
363     p_rec.language_id :=
364     ota_tav_shd.g_old_rec.language_id;
365   End If;
366   If (p_rec.maximum_attendees = hr_api.g_number) then
367     p_rec.maximum_attendees :=
368     ota_tav_shd.g_old_rec.maximum_attendees;
369   End If;
370   If (p_rec.minimum_attendees = hr_api.g_number) then
371     p_rec.minimum_attendees :=
372     ota_tav_shd.g_old_rec.minimum_attendees;
373   End If;
374   If (p_rec.objectives = hr_api.g_varchar2) then
375     p_rec.objectives :=
376     ota_tav_shd.g_old_rec.objectives;
377   End If;
378   If (p_rec.start_date = hr_api.g_date) then
379     p_rec.start_date :=
380     ota_tav_shd.g_old_rec.start_date;
381   End If;
382   If (p_rec.success_criteria = hr_api.g_varchar2) then
383     p_rec.success_criteria :=
384     ota_tav_shd.g_old_rec.success_criteria;
385   End If;
386   If (p_rec.user_status = hr_api.g_varchar2) then
387     p_rec.user_status :=
388     ota_tav_shd.g_old_rec.user_status;
389   End If;
390   If (p_rec.vendor_id = hr_api.g_number) then
391     p_rec.vendor_id :=
392     ota_tav_shd.g_old_rec.vendor_id;
393   End If;
394   If (p_rec.actual_cost = hr_api.g_number) then
395     p_rec.actual_cost :=
396     ota_tav_shd.g_old_rec.actual_cost;
397   End If;
398   If (p_rec.budget_cost = hr_api.g_number) then
399     p_rec.budget_cost :=
400     ota_tav_shd.g_old_rec.budget_cost;
401   End If;
402   If (p_rec.budget_currency_code = hr_api.g_varchar2) then
403     p_rec.budget_currency_code :=
404     ota_tav_shd.g_old_rec.budget_currency_code;
405   End If;
406   If (p_rec.expenses_allowed = hr_api.g_varchar2) then
407     p_rec.expenses_allowed :=
408     ota_tav_shd.g_old_rec.expenses_allowed;
409   End If;
410   If (p_rec.professional_credit_type = hr_api.g_varchar2) then
411     p_rec.professional_credit_type :=
412     ota_tav_shd.g_old_rec.professional_credit_type;
413   End If;
414   If (p_rec.professional_credits = hr_api.g_number) then
415     p_rec.professional_credits :=
416     ota_tav_shd.g_old_rec.professional_credits;
417   End If;
418   If (p_rec.maximum_internal_attendees = hr_api.g_number) then
419     p_rec.maximum_internal_attendees :=
420     ota_tav_shd.g_old_rec.maximum_internal_attendees;
421   End If;
422   If (p_rec.tav_information_category = hr_api.g_varchar2) then
423     p_rec.tav_information_category :=
424     ota_tav_shd.g_old_rec.tav_information_category;
425   End If;
426   If (p_rec.tav_information1 = hr_api.g_varchar2) then
427     p_rec.tav_information1 :=
428     ota_tav_shd.g_old_rec.tav_information1;
429   End If;
430   If (p_rec.tav_information2 = hr_api.g_varchar2) then
431     p_rec.tav_information2 :=
432     ota_tav_shd.g_old_rec.tav_information2;
433   End If;
434   If (p_rec.tav_information3 = hr_api.g_varchar2) then
435     p_rec.tav_information3 :=
436     ota_tav_shd.g_old_rec.tav_information3;
437   End If;
438   If (p_rec.tav_information4 = hr_api.g_varchar2) then
439     p_rec.tav_information4 :=
440     ota_tav_shd.g_old_rec.tav_information4;
441   End If;
442   If (p_rec.tav_information5 = hr_api.g_varchar2) then
443     p_rec.tav_information5 :=
444     ota_tav_shd.g_old_rec.tav_information5;
445   End If;
446   If (p_rec.tav_information6 = hr_api.g_varchar2) then
447     p_rec.tav_information6 :=
448     ota_tav_shd.g_old_rec.tav_information6;
449   End If;
450   If (p_rec.tav_information7 = hr_api.g_varchar2) then
451     p_rec.tav_information7 :=
452     ota_tav_shd.g_old_rec.tav_information7;
453   End If;
454   If (p_rec.tav_information8 = hr_api.g_varchar2) then
455     p_rec.tav_information8 :=
456     ota_tav_shd.g_old_rec.tav_information8;
457   End If;
458   If (p_rec.tav_information9 = hr_api.g_varchar2) then
459     p_rec.tav_information9 :=
460     ota_tav_shd.g_old_rec.tav_information9;
461   End If;
462   If (p_rec.tav_information10 = hr_api.g_varchar2) then
463     p_rec.tav_information10 :=
464     ota_tav_shd.g_old_rec.tav_information10;
465   End If;
466   If (p_rec.tav_information11 = hr_api.g_varchar2) then
467     p_rec.tav_information11 :=
468     ota_tav_shd.g_old_rec.tav_information11;
469   End If;
470   If (p_rec.tav_information12 = hr_api.g_varchar2) then
471     p_rec.tav_information12 :=
472     ota_tav_shd.g_old_rec.tav_information12;
473   End If;
474   If (p_rec.tav_information13 = hr_api.g_varchar2) then
475     p_rec.tav_information13 :=
476     ota_tav_shd.g_old_rec.tav_information13;
477   End If;
478   If (p_rec.tav_information14 = hr_api.g_varchar2) then
479     p_rec.tav_information14 :=
480     ota_tav_shd.g_old_rec.tav_information14;
481   End If;
482   If (p_rec.tav_information15 = hr_api.g_varchar2) then
483     p_rec.tav_information15 :=
484     ota_tav_shd.g_old_rec.tav_information15;
485   End If;
486   If (p_rec.tav_information16 = hr_api.g_varchar2) then
487     p_rec.tav_information16 :=
488     ota_tav_shd.g_old_rec.tav_information16;
489   End If;
490   If (p_rec.tav_information17 = hr_api.g_varchar2) then
491     p_rec.tav_information17 :=
492     ota_tav_shd.g_old_rec.tav_information17;
493   End If;
494   If (p_rec.tav_information18 = hr_api.g_varchar2) then
495     p_rec.tav_information18 :=
496     ota_tav_shd.g_old_rec.tav_information18;
497   End If;
498   If (p_rec.tav_information19 = hr_api.g_varchar2) then
499     p_rec.tav_information19 :=
500     ota_tav_shd.g_old_rec.tav_information19;
501   End If;
502   If (p_rec.tav_information20 = hr_api.g_varchar2) then
503     p_rec.tav_information20 :=
504     ota_tav_shd.g_old_rec.tav_information20;
505   End If;
506   If (p_rec.inventory_item_id = hr_api.g_number) then
507     p_rec.inventory_item_id :=
508     ota_tav_shd.g_old_rec.inventory_item_id;
509   End If;
510    If (p_rec.organization_id = hr_api.g_number) then
511     p_rec.organization_id :=
512     ota_tav_shd.g_old_rec.organization_id;
513   End If;
514    If (p_rec.rco_id = hr_api.g_number) then
515     p_rec.rco_id :=
516     ota_tav_shd.g_old_rec.rco_id;
517   End If;
518    If (p_rec.version_code = hr_api.g_varchar2) then
519     p_rec.version_code :=
520     ota_tav_shd.g_old_rec.version_code;
521   End If;
522   If (p_rec.business_group_id = hr_api.g_number) then
523     p_rec.business_group_id :=
524     ota_tav_shd.g_old_rec.business_group_id;
525   End If;
526   If (p_rec.data_source = hr_api.g_varchar2) then
527     p_rec.data_source  :=
528     ota_tav_shd.g_old_rec.data_source;
529   End If;
530   If (p_rec.competency_update_level = hr_api.g_varchar2) then
531     p_rec.competency_update_level  :=
532     ota_tav_shd.g_old_rec.competency_update_level;
533   End If;
534 
535   --
536   -- Return the plsql record structure.
537   --
538   hr_utility.set_location(' Leaving:'||l_proc, 10);
539   Return(p_rec);
540 --
541 End convert_defs;
542 --
543 -- ----------------------------------------------------------------------------
544 -- |---------------------------------< upd >----------------------------------|
545 -- ----------------------------------------------------------------------------
546 Procedure upd
547   (
548   p_rec        in out nocopy ota_tav_shd.g_rec_type,
549   p_validate   in     boolean
550   ) is
551 --
552   l_proc  varchar2(72) := g_package||'upd';
553 --
554 Begin
555   hr_utility.set_location('Entering:'||l_proc, 5);
556   --
557   -- Determine if the business process is to be validated.
558   --
559   If p_validate then
560     --
561     -- Issue the savepoint.
562     --
563     SAVEPOINT upd_ota_tav;
564   End If;
565   --
566   -- We must lock the row which we need to update.
567   --
568   ota_tav_shd.lck
569 	(
570 	p_rec.activity_version_id,
571 	p_rec.object_version_number
572 	);
573   --
574   -- 1. During an update system defaults are used to determine if
575   --    arguments have been defaulted or not. We must therefore
576   --    derive the full record structure values to be updated.
577   --
578   -- 2. Call the supporting update validate operations.
579   --
580   ota_tav_bus.update_validate(convert_defs(p_rec));
581   --
582   -- Call to raise any errors on multi-message list
583   hr_multi_message.end_validation_set;
584   --
585   -- Call the supporting pre-update operation
586   --
587   pre_update(p_rec);
588   --
589   -- Update the row.
590   --
591   update_dml(p_rec);
592   --
593   -- Call the supporting post-update operation
594   --
595   post_update(p_rec);
596   --
597   -- Call to raise any errors on multi-message list
598   hr_multi_message.end_validation_set;
599   --
600   -- If we are validating then raise the Validate_Enabled exception
601   --
602   If p_validate then
603     Raise HR_Api.Validate_Enabled;
604   End If;
605   --
606   hr_utility.set_location(' Leaving:'||l_proc, 10);
607 Exception
608   When HR_Api.Validate_Enabled Then
609     --
610     -- As the Validate_Enabled exception has been raised
611     -- we must rollback to the savepoint
612     --
613     ROLLBACK TO upd_ota_tav;
614 End upd;
615 --
616 -- ----------------------------------------------------------------------------
617 -- |---------------------------------< upd >----------------------------------|
618 -- ----------------------------------------------------------------------------
619 Procedure upd
620   (
621   p_activity_version_id          in number,
622   p_activity_id                  in number           ,
623   p_superseded_by_act_version_id in number           ,
624   p_developer_organization_id    in number           ,
625   p_controlling_person_id        in number           ,
626   p_object_version_number        in out nocopy number,
627   p_version_name                 in varchar2         ,
628   p_comments                     in varchar2         ,
629   p_description                  in varchar2         ,
630   p_duration                     in number           ,
631   p_duration_units               in varchar2         ,
632   p_end_date                     in date             ,
633   p_intended_audience            in varchar2         ,
634   p_language_id                  in number           ,
635   p_maximum_attendees            in number           ,
636   p_minimum_attendees            in number           ,
637   p_objectives                   in varchar2         ,
638   p_start_date                   in date             ,
639   p_success_criteria             in varchar2         ,
640   p_user_status                  in varchar2         ,
641   p_vendor_id                  in number            ,
642   p_actual_cost                in number            ,
643   p_budget_cost                in number            ,
644   p_budget_currency_code       in varchar2         ,
645   p_expenses_allowed           in varchar2         ,
646   p_professional_credit_type   in varchar2         ,
647   p_professional_credits       in number           ,
648   p_maximum_internal_attendees in number           ,
649   p_tav_information_category     in varchar2       ,
650   p_tav_information1             in varchar2       ,
651   p_tav_information2             in varchar2       ,
652   p_tav_information3             in varchar2       ,
653   p_tav_information4             in varchar2       ,
654   p_tav_information5             in varchar2       ,
655   p_tav_information6             in varchar2       ,
656   p_tav_information7             in varchar2       ,
657   p_tav_information8             in varchar2       ,
658   p_tav_information9             in varchar2       ,
659   p_tav_information10            in varchar2       ,
660   p_tav_information11            in varchar2       ,
661   p_tav_information12            in varchar2       ,
662   p_tav_information13            in varchar2       ,
663   p_tav_information14            in varchar2       ,
664   p_tav_information15            in varchar2       ,
665   p_tav_information16            in varchar2       ,
666   p_tav_information17            in varchar2       ,
667   p_tav_information18            in varchar2         ,
668   p_tav_information19            in varchar2         ,
669   p_tav_information20            in varchar2         ,
670   p_inventory_item_id		   in number	     ,
671   p_organization_id		   in number 	     ,
672   p_rco_id		   		   in number 	  ,
673  -- p_rco_id		   		   in number 	     default null,
674   p_version_code                 in varchar2,
675   p_business_group_id                     in number,
676   p_validate                     in boolean,
677   p_data_source                  in varchar2
678   ,p_competency_update_level        in     varchar2
679 
680   ) is
681 --
682   l_rec	  ota_tav_shd.g_rec_type;
683   l_proc  varchar2(72) := g_package||'upd';
684 --
685 Begin
686   hr_utility.set_location('Entering:'||l_proc, 5);
687   --
688   -- Call conversion function to turn arguments into the
689   -- l_rec structure.
690   --
691   l_rec :=
692   ota_tav_shd.convert_args
693   (
694   p_activity_version_id,
695   p_activity_id,
696   p_superseded_by_act_version_id,
697   p_developer_organization_id,
698   p_controlling_person_id,
699   p_object_version_number,
700   p_version_name,
701   p_comments,
702   p_description,
703   p_duration,
704   p_duration_units,
705   p_end_date,
706   p_intended_audience,
707   p_language_id,
708   p_maximum_attendees,
709   p_minimum_attendees,
710   p_objectives,
711   p_start_date,
712   p_success_criteria,
713   p_user_status,
714   p_vendor_id,
715   p_actual_cost,
716   p_budget_cost,
717   p_budget_currency_code,
718   p_expenses_allowed,
719   p_professional_credit_type,
720   p_professional_credits,
721   p_maximum_internal_attendees,
722   p_tav_information_category,
723   p_tav_information1,
724   p_tav_information2,
725   p_tav_information3,
726   p_tav_information4,
727   p_tav_information5,
728   p_tav_information6,
729   p_tav_information7,
730   p_tav_information8,
731   p_tav_information9,
732   p_tav_information10,
733   p_tav_information11,
734   p_tav_information12,
735   p_tav_information13,
736   p_tav_information14,
737   p_tav_information15,
738   p_tav_information16,
739   p_tav_information17,
740   p_tav_information18,
741   p_tav_information19,
742   p_tav_information20,
743   p_inventory_item_id,
744   p_organization_id,
745   p_rco_id,
746   p_version_code,
747   p_business_group_id,
748   p_data_source
749   ,p_competency_update_level
750 
751   );
752   --
753   -- Having converted the arguments into the
754   -- plsql record structure we call the corresponding record
755   -- business process.
756   --
757   upd(l_rec, p_validate);
758   p_object_version_number := l_rec.object_version_number;
759   --
760   hr_utility.set_location(' Leaving:'||l_proc, 10);
761 End upd;
762 --
763 end ota_tav_upd;