DBA Data[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;