[Home] [Help]
PACKAGE BODY: APPS.PER_QUA_INS
Source
1 Package Body per_qua_ins as
2 /* $Header: pequarhi.pkb 120.1 2008/03/14 10:01:46 viviswan noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' per_qua_ins.'; -- Global package name
9 --
10 -- The following global variables are only to be used by
11 -- the set_base_key_value and pre_insert procedures.
12 --
16 -- |------------------------< set_base_key_value >----------------------------|
13 g_qualification_id_i number default null;
14 --
15 -- ----------------------------------------------------------------------------
17 -- ----------------------------------------------------------------------------
18 procedure set_base_key_value
19 (p_qualification_id in number) is
20 --
21 l_proc varchar2(72) := g_package||'set_base_key_value';
22 --
23 Begin
24 hr_utility.set_location('Entering:'||l_proc, 10);
25 --
26 per_qua_ins.g_qualification_id_i := p_qualification_id;
27 --
28 hr_utility.set_location(' Leaving:'||l_proc, 20);
29 End set_base_key_value;
30 --
31 -- ----------------------------------------------------------------------------
32 -- |------------------------------< insert_dml >------------------------------|
33 -- ----------------------------------------------------------------------------
34 -- {Start Of Comments}
35 --
36 -- Description:
37 -- This procedure controls the actual dml insert logic. The processing of
38 -- this procedure are as follows:
39 -- 1) Initialise the object_version_number to 1 if the object_version_number
40 -- is defined as an attribute for this entity.
41 -- 2) To set and unset the g_api_dml status as required (as we are about to
42 -- perform dml).
43 -- 3) To insert the row into the schema.
44 -- 4) To trap any constraint violations that may have occurred.
45 -- 5) To raise any other errors.
46 --
47 -- Pre Conditions:
48 -- This is an internal private procedure which must be called from the ins
49 -- procedure and must have all mandatory attributes set (except the
50 -- object_version_number which is initialised within this procedure).
51 --
52 -- In Parameters:
53 -- A Pl/Sql record structre.
54 --
55 -- Post Success:
56 -- The specified row will be inserted into the schema.
57 --
58 -- Post Failure:
59 -- On the insert dml failure it is important to note that we always reset the
60 -- g_api_dml status to false.
61 -- If a check, unique or parent integrity constraint violation is raised the
62 -- constraint_error procedure will be called.
63 -- If any other error is reported, the error will be raised after the
64 -- g_api_dml status is reset.
65 --
66 -- Developer Implementation Notes:
67 -- None.
68 --
69 -- Access Status:
70 -- Internal Table Handler Use Only.
71 --
72 -- {End Of Comments}
73 -- ----------------------------------------------------------------------------
74 Procedure insert_dml(p_rec in out nocopy per_qua_shd.g_rec_type) is
75 --
76 l_proc varchar2(72) := g_package||'insert_dml';
77 --
78 Begin
79 hr_utility.set_location('Entering:'||l_proc, 5);
80 p_rec.object_version_number := 1; -- Initialise the object version
81 --
82 per_qua_shd.g_api_dml := true; -- Set the api dml status
83 --
84 -- Insert the row into: per_qualifications
85 --
86 insert into per_qualifications
87 ( qualification_id,
88 business_group_id,
89 object_version_number,
90 person_id,
91 title,
92 grade_attained,
93 status,
94 awarded_date,
95 fee,
96 fee_currency,
97 training_completed_amount,
98 reimbursement_arrangements,
99 training_completed_units,
100 total_training_amount,
101 start_date,
102 end_date,
103 license_number,
104 expiry_date,
105 license_restrictions,
106 projected_completion_date,
107 awarding_body,
108 tuition_method,
109 group_ranking,
110 comments,
111 qualification_type_id,
112 attendance_id,
113 attribute_category,
114 attribute1,
115 attribute2,
116 attribute3,
117 attribute4,
118 attribute5,
119 attribute6,
120 attribute7,
121 attribute8,
122 attribute9,
123 attribute10,
124 attribute11,
125 attribute12,
126 attribute13,
127 attribute14,
128 attribute15,
129 attribute16,
130 attribute17,
131 attribute18,
132 attribute19,
133 attribute20,
134 qua_information_category,
135 qua_information1,
136 qua_information2,
137 qua_information3,
138 qua_information4,
139 qua_information5,
140 qua_information6,
141 qua_information7,
142 qua_information8,
143 qua_information9,
144 qua_information10,
145 qua_information11,
146 qua_information12,
147 qua_information13,
148 qua_information14,
149 qua_information15,
150 qua_information16,
151 qua_information17,
152 qua_information18,
153 qua_information19,
154 qua_information20,
155 professional_body_name,
156 membership_number,
157 membership_category,
158 subscription_payment_method,
159 party_id
160 )
161 Values
162 ( p_rec.qualification_id,
163 p_rec.business_group_id,
164 p_rec.object_version_number,
165 p_rec.person_id,
166 p_rec.title,
167 p_rec.grade_attained,
168 p_rec.status,
169 p_rec.awarded_date,
170 p_rec.fee,
171 p_rec.fee_currency,
172 p_rec.training_completed_amount,
173 p_rec.reimbursement_arrangements,
174 p_rec.training_completed_units,
175 p_rec.total_training_amount,
176 p_rec.start_date,
177 p_rec.end_date,
178 p_rec.license_number,
179 p_rec.expiry_date,
180 p_rec.license_restrictions,
181 p_rec.projected_completion_date,
182 p_rec.awarding_body,
183 p_rec.tuition_method,
187 p_rec.attendance_id,
184 p_rec.group_ranking,
185 p_rec.comments,
186 p_rec.qualification_type_id,
188 p_rec.attribute_category,
189 p_rec.attribute1,
190 p_rec.attribute2,
191 p_rec.attribute3,
192 p_rec.attribute4,
193 p_rec.attribute5,
194 p_rec.attribute6,
195 p_rec.attribute7,
196 p_rec.attribute8,
197 p_rec.attribute9,
198 p_rec.attribute10,
199 p_rec.attribute11,
203 p_rec.attribute15,
200 p_rec.attribute12,
201 p_rec.attribute13,
202 p_rec.attribute14,
204 p_rec.attribute16,
205 p_rec.attribute17,
206 p_rec.attribute18,
207 p_rec.attribute19,
208 p_rec.attribute20,
209 p_rec.qua_information_category,
210 p_rec.qua_information1,
211 p_rec.qua_information2,
212 p_rec.qua_information3,
213 p_rec.qua_information4,
214 p_rec.qua_information5,
215 p_rec.qua_information6,
216 p_rec.qua_information7,
217 p_rec.qua_information8,
218 p_rec.qua_information9,
219 p_rec.qua_information10,
220 p_rec.qua_information11,
221 p_rec.qua_information12,
222 p_rec.qua_information13,
223 p_rec.qua_information14,
224 p_rec.qua_information15,
225 p_rec.qua_information16,
226 p_rec.qua_information17,
227 p_rec.qua_information18,
228 p_rec.qua_information19,
229 p_rec.qua_information20,
230 p_rec.professional_body_name,
231 p_rec.membership_number,
232 p_rec.membership_category,
233 p_rec.subscription_payment_method,
234 p_rec.party_id
235 );
236 --
237 per_qua_shd.g_api_dml := false; -- Unset the api dml status
238 --
239 hr_utility.set_location(' Leaving:'||l_proc, 10);
240 Exception
241 When hr_api.check_integrity_violated Then
242 -- A check constraint has been violated
243 per_qua_shd.g_api_dml := false; -- Unset the api dml status
244 per_qua_shd.constraint_error
245 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
246 When hr_api.parent_integrity_violated Then
247 -- Parent integrity has been violated
248 per_qua_shd.g_api_dml := false; -- Unset the api dml status
249 per_qua_shd.constraint_error
250 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
251 When hr_api.unique_integrity_violated Then
252 -- Unique integrity has been violated
253 per_qua_shd.g_api_dml := false; -- Unset the api dml status
254 per_qua_shd.constraint_error
255 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
256 When Others Then
257 per_qua_shd.g_api_dml := false; -- Unset the api dml status
258 Raise;
259 End insert_dml;
260 --
261 -- ----------------------------------------------------------------------------
262 -- |------------------------------< pre_insert >------------------------------|
263 -- ----------------------------------------------------------------------------
264 -- {Start Of Comments}
265 --
266 -- Description:
267 -- This private procedure contains any processing which is required before
268 -- the insert dml. Presently, if the entity has a corresponding primary
269 -- key which is maintained by an associating sequence, the primary key for
270 -- the entity will be populated with the next sequence value in
271 -- preparation for the insert dml.
272 --
273 -- Pre Conditions:
274 -- This is an internal procedure which is called from the ins procedure.
275 --
276 -- In Parameters:
277 -- A Pl/Sql record structre.
278 --
279 -- Post Success:
280 -- Processing continues.
281 --
282 -- Post Failure:
283 -- If an error has occurred, an error message and exception will be raised
284 -- but not handled.
285 --
286 -- Developer Implementation Notes:
287 -- Any pre-processing required before the insert dml is issued should be
288 -- coded within this procedure. As stated above, a good example is the
289 -- generation of a primary key number via a corresponding sequence.
290 -- It is important to note that any 3rd party maintenance should be reviewed
291 -- before placing in this procedure.
292 --
293 -- Access Status:
294 -- Internal Table Handler Use Only.
295 --
296 -- {End Of Comments}
297 -- ----------------------------------------------------------------------------
298 Procedure pre_insert(p_rec in out nocopy per_qua_shd.g_rec_type) is
299 --
300 l_proc varchar2(72) := g_package||'pre_insert';
301 l_exists varchar2(1);
302 --
306 select null
303 Cursor C_Sel1 is select per_qualifications_s.nextval from sys.dual;
304 --
305 Cursor C_Sel2 is
307 from per_qualifications
308 where qualification_id = per_qua_ins.g_qualification_id_i;
309 --
310
311 Begin
312 hr_utility.set_location('Entering:'||l_proc, 5);
313 --
314 if per_qua_ins.g_qualification_id_i is not null then
315 --
316 -- Verify registered primary key values not already in use
317 --
318 Open C_Sel2;
319 Fetch C_Sel2 into l_exists;
320 If C_Sel2%found then
321 Close C_Sel2;
322 --
323 -- The primary key values are already in use.
324 --
325 fnd_message.set_name('PER','PER_289391_KEY_ALREADY_USED');
326 fnd_message.set_token('TABLE_NAME','per_qualifications');
327 fnd_message.raise_error;
328 end if;
329 Close C_Sel2;
330 --
331 -- Use registered key values and clear globals
332 --
333 p_rec.qualification_id :=
334 per_qua_ins.g_qualification_id_i;
335 per_qua_ins.g_qualification_id_i := null;
336 --
337 else
338 --
339 -- Select the next sequence number
340 --
341 Open C_Sel1;
342 Fetch C_Sel1 Into p_rec.qualification_id;
343 Close C_Sel1;
344 --
345 end if;
346 hr_utility.set_location(' Leaving:'||l_proc, 10);
347 End pre_insert;
348 --
349 -- ----------------------------------------------------------------------------
350 -- |-----------------------------< post_insert >------------------------------|
351 -- ----------------------------------------------------------------------------
352 -- {Start Of Comments}
353 --
354 -- Description:
355 -- This private procedure contains any processing which is required after the
356 -- insert dml.
357 --
358 -- Pre Conditions:
359 -- This is an internal procedure which is called from the ins procedure.
360 --
361 -- In Parameters:
362 -- A Pl/Sql record structre.
363 --
364 -- Post Success:
365 -- Processing continues.
366 --
367 -- Post Failure:
368 -- If an error has occurred, an error message and exception will be raised
369 -- but not handled.
370 --
371 -- Developer Implementation Notes:
372 -- Any post-processing required after the insert dml is issued should be
373 -- coded within this procedure. It is important to note that any 3rd party
374 -- maintenance should be reviewed before placing in this procedure.
375 --
376 -- Access Status:
377 -- Internal Table Handler Use Only.
378 --
379 -- {End Of Comments}
380 -- ----------------------------------------------------------------------------
381 Procedure post_insert(p_rec in per_qua_shd.g_rec_type,
382 p_effective_date in date) is
383 --
384 l_proc varchar2(72) := g_package||'post_insert';
385 --
386 Begin
387 hr_utility.set_location('Entering:'||l_proc, 5);
388 --
389 -- Start of Row Handler User Hook for post_insert.
390 --
391 Begin
392 per_qua_rki.after_insert
393 (
394 p_qualification_id => p_rec.qualification_id,
395 p_business_group_id => p_rec.business_group_id,
396 p_object_version_number => p_rec.object_version_number,
397 p_person_id => p_rec.person_id,
398 p_title => p_rec.title,
399 p_grade_attained => p_rec.grade_attained,
400 p_status => p_rec.status,
401 p_awarded_date => p_rec.awarded_date,
402 p_fee => p_rec.fee,
403 p_fee_currency => p_rec.fee_currency,
404 p_training_completed_amount => p_rec.training_completed_amount,
405 p_reimbursement_arrangements => p_rec.reimbursement_arrangements,
406 p_training_completed_units => p_rec.training_completed_units,
407 p_total_training_amount => p_rec.total_training_amount,
408 p_start_date => p_rec.start_date,
409 p_end_date => p_rec.end_date,
410 p_license_number => p_rec.license_number,
411 p_expiry_date => p_rec.expiry_date,
412 p_license_restrictions => p_rec.license_restrictions,
413 p_projected_completion_date => p_rec.projected_completion_date,
414 p_awarding_body => p_rec.awarding_body,
415 p_tuition_method => p_rec.tuition_method,
416 p_group_ranking => p_rec.group_ranking,
417 p_comments => p_rec.comments,
418 p_qualification_type_id => p_rec.qualification_type_id,
419 p_attendance_id => p_rec.attendance_id,
420 p_attribute_category => p_rec.attribute_category,
421 p_attribute1 => p_rec.attribute1,
422 p_attribute2 => p_rec.attribute2,
423 p_attribute3 => p_rec.attribute3,
424 p_attribute4 => p_rec.attribute4,
425 p_attribute5 => p_rec.attribute5,
426 p_attribute6 => p_rec.attribute6,
427 p_attribute7 => p_rec.attribute7,
428 p_attribute8 => p_rec.attribute8,
429 p_attribute9 => p_rec.attribute9,
430 p_attribute10 => p_rec.attribute10,
431 p_attribute11 => p_rec.attribute11,
432 p_attribute12 => p_rec.attribute12,
433 p_attribute13 => p_rec.attribute13,
434 p_attribute14 => p_rec.attribute14,
435 p_attribute15 => p_rec.attribute15,
436 p_attribute16 => p_rec.attribute16,
437 p_attribute17 => p_rec.attribute17,
438 p_attribute18 => p_rec.attribute18,
439 p_attribute19 => p_rec.attribute19,
440 p_attribute20 => p_rec.attribute20,
441 p_qua_information_category => p_rec.qua_information_category,
442 p_qua_information1 => p_rec.qua_information1,
443 p_qua_information2 => p_rec.qua_information2,
444 p_qua_information3 => p_rec.qua_information3,
445 p_qua_information4 => p_rec.qua_information4,
446 p_qua_information5 => p_rec.qua_information5,
447 p_qua_information6 => p_rec.qua_information6,
448 p_qua_information7 => p_rec.qua_information7,
449 p_qua_information8 => p_rec.qua_information8,
450 p_qua_information9 => p_rec.qua_information9,
451 p_qua_information10 => p_rec.qua_information10,
452 p_qua_information11 => p_rec.qua_information11,
453 p_qua_information12 => p_rec.qua_information12,
454 p_qua_information13 => p_rec.qua_information13,
455 p_qua_information14 => p_rec.qua_information14,
456 p_qua_information15 => p_rec.qua_information15,
457 p_qua_information16 => p_rec.qua_information16,
458 p_qua_information17 => p_rec.qua_information17,
459 p_qua_information18 => p_rec.qua_information18,
460 p_qua_information19 => p_rec.qua_information19,
461 p_qua_information20 => p_rec.qua_information20,
462 p_effective_date => p_effective_date,
463 p_professional_body_name => p_rec.professional_body_name,
464 p_membership_number => p_rec.membership_number,
465 p_membership_category => p_rec.membership_category,
466 p_subscription_payment_method => p_rec.subscription_payment_method,
467 p_party_id => p_rec.party_id
468 );
469 exception
470 when hr_api.cannot_find_prog_unit then
471 hr_api.cannot_find_prog_unit_error
472 (p_module_name => 'PER_QUALIFICATIONS'
473 ,p_hook_type => 'AI'
474 );
475 end;
476 --
477 -- End of Row Handler User Hook for post_insert.
478 --
479 hr_utility.set_location(' Leaving:'||l_proc, 10);
480 End post_insert;
481 --
482 -- ----------------------------------------------------------------------------
483 -- |---------------------------------< ins >----------------------------------|
484 -- ----------------------------------------------------------------------------
485 Procedure ins
486 (
487 p_rec in out nocopy per_qua_shd.g_rec_type,
488 p_effective_date in date,
489 p_validate in boolean default false
490 ) is
491 --
492 l_proc varchar2(72) := g_package||'ins';
493 --
494 Begin
495 hr_utility.set_location('Entering:'||l_proc, 5);
496 --
497 -- Determine if the business process is to be validated.
498 --
499 If p_validate then
500 --
501 -- Issue the savepoint.
502 --
503 SAVEPOINT ins_qua;
504 End If;
505 --
506 -- Call the supporting insert validate operations
507 --
508 per_qua_bus.insert_validate(p_rec,p_effective_date);
509 --
510 -- Call to raise any errors on multi-message list
511 hr_multi_message.end_validation_set;
512 --
513 --
514 -- Call the supporting pre-insert operation
515 --
516 pre_insert(p_rec);
517 --
518 -- Insert the row
519 --
520 insert_dml(p_rec);
521 --
522 -- Call the supporting post-insert operation
523 --
524 post_insert(p_rec, p_effective_date);
525 --
526 -- Call to raise any errors on multi-message list
527 hr_multi_message.end_validation_set;
528 --
529 --
530 -- If we are validating then raise the Validate_Enabled exception
531 --
532 If p_validate then
533 Raise HR_Api.Validate_Enabled;
534 End If;
535 --
536 hr_utility.set_location(' Leaving:'||l_proc, 10);
537 Exception
538 When HR_Api.Validate_Enabled Then
539 --
540 -- As the Validate_Enabled exception has been raised
541 -- we must rollback to the savepoint
542 --
543 ROLLBACK TO ins_qua;
544 end ins;
545 --
549 Procedure ins
546 -- ----------------------------------------------------------------------------
547 -- |---------------------------------< ins >----------------------------------|
548 -- ----------------------------------------------------------------------------
550 (
551 p_qualification_id out nocopy number,
552 p_business_group_id in number default null,
553 p_object_version_number out nocopy number,
554 p_person_id in number default null,
555 p_title in varchar2 default null,
556 p_grade_attained in varchar2 default null,
557 p_status in varchar2 default null,
558 p_awarded_date in date default null,
559 p_fee in number default null,
560 p_fee_currency in varchar2 default null,
561 p_training_completed_amount in number default null,
562 p_reimbursement_arrangements in varchar2 default null,
563 p_training_completed_units in varchar2 default null,
564 p_total_training_amount in number default null,
565 p_start_date in date default null,
566 p_end_date in date default null,
567 p_license_number in varchar2 default null,
568 p_expiry_date in date default null,
569 p_license_restrictions in varchar2 default null,
570 p_projected_completion_date in date default null,
571 p_awarding_body in varchar2 default null,
572 p_tuition_method in varchar2 default null,
573 p_group_ranking in varchar2 default null,
574 p_comments in varchar2 default null,
575 p_qualification_type_id in number,
576 p_attendance_id in number default null,
577 p_attribute_category in varchar2 default null,
578 p_attribute1 in varchar2 default null,
579 p_attribute2 in varchar2 default null,
580 p_attribute3 in varchar2 default null,
581 p_attribute4 in varchar2 default null,
582 p_attribute5 in varchar2 default null,
583 p_attribute6 in varchar2 default null,
584 p_attribute7 in varchar2 default null,
585 p_attribute8 in varchar2 default null,
586 p_attribute9 in varchar2 default null,
587 p_attribute10 in varchar2 default null,
588 p_attribute11 in varchar2 default null,
589 p_attribute12 in varchar2 default null,
590 p_attribute13 in varchar2 default null,
591 p_attribute14 in varchar2 default null,
592 p_attribute15 in varchar2 default null,
593 p_attribute16 in varchar2 default null,
594 p_attribute17 in varchar2 default null,
595 p_attribute18 in varchar2 default null,
596 p_attribute19 in varchar2 default null,
597 p_attribute20 in varchar2 default null,
598 p_qua_information_category in varchar2 default null,
599 p_qua_information1 in varchar2 default null,
600 p_qua_information2 in varchar2 default null,
601 p_qua_information3 in varchar2 default null,
602 p_qua_information4 in varchar2 default null,
603 p_qua_information5 in varchar2 default null,
604 p_qua_information6 in varchar2 default null,
605 p_qua_information7 in varchar2 default null,
606 p_qua_information8 in varchar2 default null,
607 p_qua_information9 in varchar2 default null,
608 p_qua_information10 in varchar2 default null,
609 p_qua_information11 in varchar2 default null,
610 p_qua_information12 in varchar2 default null,
611 p_qua_information13 in varchar2 default null,
612 p_qua_information14 in varchar2 default null,
613 p_qua_information15 in varchar2 default null,
614 p_qua_information16 in varchar2 default null,
615 p_qua_information17 in varchar2 default null,
616 p_qua_information18 in varchar2 default null,
617 p_qua_information19 in varchar2 default null,
618 p_qua_information20 in varchar2 default null,
619 p_effective_date in date,
620 p_validate in boolean default false,
621 p_professional_body_name in varchar2 default null,
622 p_membership_number in varchar2 default null,
623 p_membership_category in varchar2 default null,
624 p_subscription_payment_method in varchar2 default null,
625 p_party_id in number default null
626 ) is
627 --
628 l_rec per_qua_shd.g_rec_type;
629 l_proc varchar2(72) := g_package||'ins';
630 --
631 Begin
632 hr_utility.set_location('Entering:'||l_proc, 5);
633 --
634 -- Call conversion function to turn arguments into the
635 -- p_rec structure.
636 --
637 l_rec :=
638 per_qua_shd.convert_args
639 (
640 null,
641 p_business_group_id,
642 null,
643 p_person_id,
644 p_title,
645 p_grade_attained,
646 p_status,
647 p_awarded_date,
648 p_fee,
649 p_fee_currency,
650 p_training_completed_amount,
651 p_reimbursement_arrangements,
652 p_training_completed_units,
653 p_total_training_amount,
654 p_start_date,
655 p_end_date,
656 p_license_number,
657 p_expiry_date,
658 p_license_restrictions,
659 p_projected_completion_date,
660 p_awarding_body,
661 p_tuition_method,
662 p_group_ranking,
663 p_comments,
664 p_qualification_type_id,
665 p_attendance_id,
666 p_attribute_category,
667 p_attribute1,
668 p_attribute2,
669 p_attribute3,
670 p_attribute4,
671 p_attribute5,
672 p_attribute6,
673 p_attribute7,
674 p_attribute8,
675 p_attribute9,
676 p_attribute10,
677 p_attribute11,
678 p_attribute12,
679 p_attribute13,
680 p_attribute14,
681 p_attribute15,
682 p_attribute16,
683 p_attribute17,
684 p_attribute18,
685 p_attribute19,
686 p_attribute20,
687 p_qua_information_category,
688 p_qua_information1,
689 p_qua_information2,
690 p_qua_information3,
691 p_qua_information4,
692 p_qua_information5,
693 p_qua_information6,
694 p_qua_information7,
695 p_qua_information8,
696 p_qua_information9,
697 p_qua_information10,
698 p_qua_information11,
699 p_qua_information12,
700 p_qua_information13,
701 p_qua_information14,
702 p_qua_information15,
703 p_qua_information16,
704 p_qua_information17,
705 p_qua_information18,
706 p_qua_information19,
707 p_qua_information20,
708 p_professional_body_name,
709 p_membership_number,
710 p_membership_category,
711 p_subscription_payment_method,
712 p_party_id
713 );
714 --
715 -- Having converted the arguments into the qua_rec
716 -- plsql record structure we call the corresponding record business process.
717 --
718 ins(l_rec, p_effective_date, p_validate);
719 --
720 -- As the primary key argument(s)
721 -- are specified as an OUT's we must set these values.
722 --
723 p_qualification_id := l_rec.qualification_id;
724 p_object_version_number := l_rec.object_version_number;
725 --
726 hr_utility.set_location(' Leaving:'||l_proc, 10);
727 End ins;
728 --
729 end per_qua_ins;