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;