DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_CTK_INS

Source


1 Package Body per_ctk_ins as
2 /* $Header: pectkrhi.pkb 120.7 2006/09/11 20:45:03 sturlapa noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33) := '  per_ctk_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 --
13 g_task_in_checklist_id_i  number   default null;
14 --
15 -- ----------------------------------------------------------------------------
16 -- |------------------------< set_base_key_value >----------------------------|
17 -- ----------------------------------------------------------------------------
18 procedure set_base_key_value
19   (p_task_in_checklist_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_ctk_ins.g_task_in_checklist_id_i := p_task_in_checklist_id;
27   --
28   hr_utility.set_location(' Leaving:'||l_proc, 20);
29 End set_base_key_value;
30 --
31 --
32 -- ----------------------------------------------------------------------------
33 -- |------------------------------< insert_dml >------------------------------|
34 -- ----------------------------------------------------------------------------
35 -- {Start Of Comments}
36 --
37 -- Description:
38 --   This procedure controls the actual dml insert logic. The processing of
39 --   this procedure are as follows:
40 --   1) Initialise the object_version_number to 1 if the object_version_number
41 --      is defined as an attribute for this entity.
42 --   2) To set and unset the g_api_dml status as required (as we are about to
43 --      perform dml).
44 --   3) To insert the row into the schema.
45 --   4) To trap any constraint violations that may have occurred.
46 --   5) To raise any other errors.
47 --
48 -- Prerequisites:
49 --   This is an internal private procedure which must be called from the ins
50 --   procedure and must have all mandatory attributes set (except the
51 --   object_version_number which is initialised within this procedure).
52 --
53 -- In Parameters:
54 --   A Pl/Sql record structre.
55 --
56 -- Post Success:
57 --   The specified row will be inserted into the schema.
58 --
59 -- Post Failure:
60 --   On the insert dml failure it is important to note that we always reset the
61 --   g_api_dml status to false.
62 --   If a check, unique or parent integrity constraint violation is raised the
63 --   constraint_error procedure will be called.
64 --   If any other error is reported, the error will be raised after the
65 --   g_api_dml status is reset.
66 --
67 -- Developer Implementation Notes:
68 --   None.
69 --
70 -- Access Status:
71 --   Internal Row Handler Use Only.
72 --
73 -- {End Of Comments}
74 -- ----------------------------------------------------------------------------
75 Procedure insert_dml
76   (p_rec in out nocopy per_ctk_shd.g_rec_type
77   ) is
78 --
79   l_proc  varchar2(72) := g_package||'insert_dml';
80 --
81 Begin
82   hr_utility.set_location('Entering:'||l_proc, 5);
83   p_rec.object_version_number := 1;  -- Initialise the object version
84   --
85   --
86   --
87   -- Insert the row into: per_tasks_in_checklist
88   --
89   insert into per_tasks_in_checklist
90       (task_in_checklist_id
91       ,checklist_id
92       ,checklist_task_name
93       ,eligibility_object_id
94       ,eligibility_profile_id
95       ,ame_attribute_identifier
96       ,description
97       ,mandatory_flag
98       ,target_duration
99       ,target_duration_uom
100       ,task_sequence
101       ,object_version_number
102       ,action_url
103       ,attribute_category
104       ,attribute1
105       ,attribute2
106       ,attribute3
107       ,attribute4
108       ,attribute5
109       ,attribute6
110       ,attribute7
111       ,attribute8
112       ,attribute9
113       ,attribute10
114       ,attribute11
115       ,attribute12
116       ,attribute13
117       ,attribute14
118       ,attribute15
119       ,attribute16
120       ,attribute17
121       ,attribute18
122       ,attribute19
123       ,attribute20
124       ,information_category
125       ,information1
126       ,information2
127       ,information3
128       ,information4
129       ,information5
130       ,information6
131       ,information7
132       ,information8
133       ,information9
134       ,information10
135       ,information11
136       ,information12
137       ,information13
138       ,information14
139       ,information15
140       ,information16
141       ,information17
142       ,information18
143       ,information19
144       ,information20
145       )
146   Values
147     (p_rec.task_in_checklist_id
148     ,p_rec.checklist_id
149     ,p_rec.checklist_task_name
150     ,p_rec.eligibility_object_id
151     ,p_rec.eligibility_profile_id
152     ,p_rec.ame_attribute_identifier
153     ,p_rec.description
154     ,p_rec.mandatory_flag
155     ,p_rec.target_duration
156     ,p_rec.target_duration_uom
157     ,p_rec.task_sequence
158     ,p_rec.object_version_number
159     ,p_rec.action_url
160     ,p_rec.attribute_category
161     ,p_rec.attribute1
162     ,p_rec.attribute2
163     ,p_rec.attribute3
164     ,p_rec.attribute4
165     ,p_rec.attribute5
166     ,p_rec.attribute6
167     ,p_rec.attribute7
168     ,p_rec.attribute8
169     ,p_rec.attribute9
170     ,p_rec.attribute10
171     ,p_rec.attribute11
172     ,p_rec.attribute12
173     ,p_rec.attribute13
174     ,p_rec.attribute14
175     ,p_rec.attribute15
176     ,p_rec.attribute16
177     ,p_rec.attribute17
178     ,p_rec.attribute18
179     ,p_rec.attribute19
180     ,p_rec.attribute20
181     ,p_rec.information_category
182     ,p_rec.information1
183     ,p_rec.information2
184     ,p_rec.information3
185     ,p_rec.information4
186     ,p_rec.information5
187     ,p_rec.information6
188     ,p_rec.information7
189     ,p_rec.information8
190     ,p_rec.information9
191     ,p_rec.information10
192     ,p_rec.information11
193     ,p_rec.information12
194     ,p_rec.information13
195     ,p_rec.information14
196     ,p_rec.information15
197     ,p_rec.information16
198     ,p_rec.information17
199     ,p_rec.information18
200     ,p_rec.information19
201     ,p_rec.information20
202     );
203   --
204   --
205   --
206   hr_utility.set_location(' Leaving:'||l_proc, 10);
207 Exception
208   When hr_api.check_integrity_violated Then
209     -- A check constraint has been violated
210     --
211     per_ctk_shd.constraint_error
212       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
213   When hr_api.parent_integrity_violated Then
214     -- Parent integrity has been violated
215     --
216     per_ctk_shd.constraint_error
217       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
218   When hr_api.unique_integrity_violated Then
219     -- Unique integrity has been violated
220     --
221     per_ctk_shd.constraint_error
222       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
223   When Others Then
224     --
225     Raise;
226 End insert_dml;
227 --
228 -- ----------------------------------------------------------------------------
229 -- |------------------------------< pre_insert >------------------------------|
230 -- ----------------------------------------------------------------------------
231 -- {Start Of Comments}
232 --
233 -- Description:
234 --   This private procedure contains any processing which is required before
235 --   the insert dml. Presently, if the entity has a corresponding primary
236 --   key which is maintained by an associating sequence, the primary key for
237 --   the entity will be populated with the next sequence value in
238 --   preparation for the insert dml.
239 --
240 -- Prerequisites:
241 --   This is an internal procedure which is called from the ins procedure.
242 --
243 -- In Parameters:
244 --   A Pl/Sql record structure.
245 --
246 -- Post Success:
247 --   Processing continues.
248 --
249 -- Post Failure:
250 --   If an error has occurred, an error message and exception will be raised
251 --   but not handled.
252 --
253 -- Developer Implementation Notes:
254 --   Any pre-processing required before the insert dml is issued should be
255 --   coded within this procedure. As stated above, a good example is the
256 --   generation of a primary key number via a corresponding sequence.
257 --   It is important to note that any 3rd party maintenance should be reviewed
258 --   before placing in this procedure.
259 --
260 -- Access Status:
261 --   Internal Row Handler Use Only.
262 --
263 -- {End Of Comments}
264 -- ----------------------------------------------------------------------------
265 Procedure pre_insert
266   (p_rec            in out nocopy per_ctk_shd.g_rec_type
267   ,p_effective_date in date
268   ) is
269   --
270   Cursor C_Sel1 is select per_tasks_in_checklist_s.nextval from sys.dual;
271   --
272   cursor c_bg_id(p_checklist_id number) is
273   select business_group_id
274   from per_checklists
275   where checklist_id = p_checklist_id;
276   --
277   Cursor C_Sel2 is
278     Select null
279       from per_tasks_in_checklist
280      where task_in_checklist_id =
281              per_ctk_ins.g_task_in_checklist_id_i;
282   --
283    cursor c_elig_prfl_dates(cur_p_elig_prfl_id number) is
284     select
285          effective_start_date
286     FROM
287         ben_eligy_prfl_f
288     WHERE
289         trunc(sysdate) between effective_start_date and effective_end_date
290     AND stat_cd = 'A'
291     AND bnft_cagr_prtn_cd = 'CHKLIST'
292     and ELIGY_PRFL_ID=cur_p_elig_prfl_id;
293    --
294   l_proc   varchar2(72) := g_package||'pre_insert';
295   l_exists varchar2(1);
296   --
297   l_bgid                  number;
298   l_elig_obj_id           number;
299   l_elig_obj_elig_prfl_id number;
300   l_prf_ovn               number;
301   l_obj_ovn               number;
302   l_effective_date        date;
303   l_tab_name varchar2(30) := 'PER_TASKS_IN_CHECKLIST';
304   l_col_name varchar2(30) := 'TASK_IN_CHECKLIST_ID';
305   l_tic_id   number;
306   l_effective_start_date date;
307   l_effective_end_date   date;
308   --
309 Begin
310   hr_utility.set_location('Entering:'||l_proc, 5);
311   --
312   If (per_ctk_ins.g_task_in_checklist_id_i is not null) Then
313     --
314     -- Verify registered primary key values not already in use
315     --
316     Open C_Sel2;
317     Fetch C_Sel2 into l_exists;
318     If C_Sel2%found Then
319        Close C_Sel2;
320        --
321        -- The primary key values are already in use.
322        --
323        fnd_message.set_name('PER','PER_289391_KEY_ALREADY_USED');
324        fnd_message.set_token('TABLE_NAME','per_tasks_in_checklist');
325        fnd_message.raise_error;
326     End If;
327     Close C_Sel2;
328     --
329     -- Use registered key values and clear globals
330     --
331     p_rec.task_in_checklist_id :=
332       per_ctk_ins.g_task_in_checklist_id_i;
333     per_ctk_ins.g_task_in_checklist_id_i := null;
334   Else
335     --
336     -- No registerd key values, so select the next sequence number
337     --
338     --
339     -- Select the next sequence number
340     --
341     Open C_Sel1;
342     Fetch C_Sel1 Into p_rec.task_in_checklist_id;
343     Close C_Sel1;
344   End If;
345   --
346   --
347   -- Add Create Eligibility Object logic
348   --
349 
350   --l_effective_end_date := hr_api.g_eot;
351   --l_effective_date     := hr_api.g_sys;
352   --l_business_group_id  :=
353     --
354     -- Get the business group_id
355     --
356     Open c_bg_id(p_rec.checklist_id);
357     Fetch c_bg_id Into l_bgid;
358     Close c_bg_id;
359     --
360   l_tic_id   := p_rec.task_in_checklist_id;
361   --
362   --
363   -- Add Create Eligibility Object logic
364   --
365   if ( nvl(p_rec.eligibility_profile_id, hr_api.g_number) <> hr_api.g_number ) then
366     --
367     open c_elig_prfl_dates(p_rec.eligibility_profile_id);
368       fetch c_elig_prfl_dates into l_effective_date;
369     close c_elig_prfl_dates;
370 
371        ben_elig_obj_api.create_ELIG_OBJ
372 	   (
373 	    	p_validate                       => false
374 		   ,p_elig_obj_id                    => l_elig_obj_id
375 		   ,p_effective_start_date           => l_effective_start_date
376 		   ,p_effective_end_date             => l_effective_end_date
377 		   ,p_business_group_id              => l_bgid
378 		   ,p_table_name                     => l_tab_name --'PER_TASKS_IN_CHECKLIST'
379 		   ,p_column_name                    => l_col_name
380 		   ,p_column_value                   => l_tic_id
381 		   ,p_object_version_number          => l_obj_ovn
382 		   ,p_effective_date                 => l_effective_date
383 	   );
384 
385 
386     p_rec.eligibility_object_id := l_elig_obj_id;
387 
388      ben_ELIG_OBJ_ELIG_PROFL_api. create_ELIG_OBJ_ELIG_PROFL
389      (
390       p_validate                       => false
391      ,p_elig_obj_id                    => p_rec.eligibility_object_id
392      ,p_elig_prfl_id                   => p_rec.eligibility_profile_id
393      ,p_mndtry_flag                    => 'N'
394      ,p_business_group_id              => l_bgid
395      ,p_effective_start_date           => l_effective_start_date
396      ,p_effective_end_date             => l_effective_end_date
397      ,p_elig_obj_elig_prfl_id          => l_elig_obj_elig_prfl_id
398      ,p_object_version_number          => l_prf_ovn
399      ,p_effective_date                 => l_effective_date
400      );
401     --
402   end if;
403   --
404   hr_utility.set_location(' Leaving:'||l_proc, 10);
405 End pre_insert;
406 --
407 -- ----------------------------------------------------------------------------
408 -- |-----------------------------< post_insert >------------------------------|
409 -- ----------------------------------------------------------------------------
410 -- {Start Of Comments}
411 --
412 -- Description:
413 --   This private procedure contains any processing which is required after
414 --   the insert dml.
415 --
416 -- Prerequisites:
417 --   This is an internal procedure which is called from the ins procedure.
418 --
419 -- In Parameters:
420 --   A Pl/Sql record structre.
421 --
422 -- Post Success:
423 --   Processing continues.
424 --
425 -- Post Failure:
426 --   If an error has occurred, an error message and exception will be raised
427 --   but not handled.
428 --
429 -- Developer Implementation Notes:
430 --   Any post-processing required after the insert dml is issued should be
431 --   coded within this procedure. It is important to note that any 3rd party
432 --   maintenance should be reviewed before placing in this procedure.
433 --
434 -- Access Status:
435 --   Internal Row Handler Use Only.
436 --
437 -- {End Of Comments}
438 -- ----------------------------------------------------------------------------
439 Procedure post_insert
440   (p_effective_date               in date
441   ,p_rec                          in per_ctk_shd.g_rec_type
442   ) is
443 --
444   l_proc  varchar2(72) := g_package||'post_insert';
445 --
446 Begin
447   hr_utility.set_location('Entering:'||l_proc, 5);
448   begin
449     --
450     per_ctk_rki.after_insert
451       (p_effective_date              => p_effective_date
452       ,p_task_in_checklist_id
453       => p_rec.task_in_checklist_id
454       ,p_checklist_id
455       => p_rec.checklist_id
456       ,p_checklist_task_name
457       => p_rec.checklist_task_name
458       ,p_eligibility_object_id
459       => p_rec.eligibility_object_id
460       ,p_eligibility_profile_id
461       => p_rec.eligibility_profile_id
462       ,p_ame_attribute_identifier
463       => p_rec.ame_attribute_identifier
464       ,p_description
465       => p_rec.description
466       ,p_mandatory_flag
467       => p_rec.mandatory_flag
468       ,p_target_duration
469       => p_rec.target_duration
470       ,p_target_duration_uom
471       => p_rec.target_duration_uom
472       ,p_task_sequence
473       => p_rec.task_sequence
474       ,p_object_version_number
475       => p_rec.object_version_number
476       ,p_action_url
477       => p_rec.action_url
478       ,p_attribute_category
479       => p_rec.attribute_category
480       ,p_attribute1
481       => p_rec.attribute1
482       ,p_attribute2
483       => p_rec.attribute2
484       ,p_attribute3
485       => p_rec.attribute3
486       ,p_attribute4
487       => p_rec.attribute4
488       ,p_attribute5
489       => p_rec.attribute5
490       ,p_attribute6
491       => p_rec.attribute6
492       ,p_attribute7
493       => p_rec.attribute7
494       ,p_attribute8
495       => p_rec.attribute8
496       ,p_attribute9
497       => p_rec.attribute9
498       ,p_attribute10
499       => p_rec.attribute10
500       ,p_attribute11
501       => p_rec.attribute11
502       ,p_attribute12
503       => p_rec.attribute12
504       ,p_attribute13
505       => p_rec.attribute13
506       ,p_attribute14
507       => p_rec.attribute14
508       ,p_attribute15
509       => p_rec.attribute15
510       ,p_attribute16
511       => p_rec.attribute16
512       ,p_attribute17
513       => p_rec.attribute17
514       ,p_attribute18
515       => p_rec.attribute18
516       ,p_attribute19
517       => p_rec.attribute19
518       ,p_attribute20
519       => p_rec.attribute20
520       ,p_information_category
521       => p_rec.information_category
522       ,p_information1
523       => p_rec.information1
524       ,p_information2
525       => p_rec.information2
526       ,p_information3
527       => p_rec.information3
528       ,p_information4
529       => p_rec.information4
530       ,p_information5
531       => p_rec.information5
532       ,p_information6
533       => p_rec.information6
534       ,p_information7
535       => p_rec.information7
536       ,p_information8
537       => p_rec.information8
538       ,p_information9
539       => p_rec.information9
540       ,p_information10
541       => p_rec.information10
542       ,p_information11
543       => p_rec.information11
544       ,p_information12
545       => p_rec.information12
546       ,p_information13
547       => p_rec.information13
548       ,p_information14
549       => p_rec.information14
550       ,p_information15
551       => p_rec.information15
552       ,p_information16
553       => p_rec.information16
554       ,p_information17
555       => p_rec.information17
556       ,p_information18
557       => p_rec.information18
558       ,p_information19
559       => p_rec.information19
560       ,p_information20
561       => p_rec.information20
562       );
563     --
564   exception
565     --
566     when hr_api.cannot_find_prog_unit then
567       --
568       hr_api.cannot_find_prog_unit_error
569         (p_module_name => 'PER_TASKS_IN_CHECKLIST'
570         ,p_hook_type   => 'AI');
571       --
572   end;
573   --
574   hr_utility.set_location(' Leaving:'||l_proc, 10);
575 End post_insert;
576 --
577 -- ----------------------------------------------------------------------------
578 -- |---------------------------------< ins >----------------------------------|
579 -- ----------------------------------------------------------------------------
580 Procedure ins
581   (p_effective_date               in date
582   ,p_rec                          in out nocopy per_ctk_shd.g_rec_type
583   ) is
584 --
585   l_proc  varchar2(72) := g_package||'ins';
586 --
587 Begin
588   hr_utility.set_location('Entering:'||l_proc, 5);
589   --
590   -- Call the supporting insert validate operations
591   --
592   per_ctk_bus.insert_validate
593      (p_effective_date
594      ,p_rec
595      );
596   --
597   -- Call to raise any errors on multi-message list
598   hr_multi_message.end_validation_set;
599   --
600   -- Call the supporting pre-insert operation
601   --
602   per_ctk_ins.pre_insert(p_rec
603                         ,p_effective_date);
604   --
605   -- Insert the row
606   --
607   per_ctk_ins.insert_dml(p_rec);
608   --
609   -- Call the supporting post-insert operation
610   --
611   per_ctk_ins.post_insert
612      (p_effective_date
613      ,p_rec
614      );
615   --
616   -- Call to raise any errors on multi-message list
617   hr_multi_message.end_validation_set;
618   --
619   hr_utility.set_location('Leaving:'||l_proc, 20);
620 end ins;
621 --
622 -- ----------------------------------------------------------------------------
623 -- |---------------------------------< ins >----------------------------------|
624 -- ----------------------------------------------------------------------------
625 Procedure ins
626   (p_effective_date               in     date
627   ,p_checklist_id                   in     number
628   ,p_checklist_task_name            in     varchar2
629   ,p_eligibility_object_id          in     number   default null
630   ,p_eligibility_profile_id         in     number   default null
631   ,p_ame_attribute_identifier       in     varchar2 default null
632   ,p_description                    in     varchar2 default null
633   ,p_mandatory_flag                 in     varchar2 default null
634   ,p_target_duration                in     number   default null
635   ,p_target_duration_uom            in     varchar2 default null
636   ,p_task_sequence                  in     number   default null
637   ,p_action_url                     in     varchar2 default null
638   ,p_attribute_category             in     varchar2 default null
639   ,p_attribute1                     in     varchar2 default null
640   ,p_attribute2                     in     varchar2 default null
641   ,p_attribute3                     in     varchar2 default null
642   ,p_attribute4                     in     varchar2 default null
643   ,p_attribute5                     in     varchar2 default null
644   ,p_attribute6                     in     varchar2 default null
645   ,p_attribute7                     in     varchar2 default null
646   ,p_attribute8                     in     varchar2 default null
647   ,p_attribute9                     in     varchar2 default null
648   ,p_attribute10                    in     varchar2 default null
649   ,p_attribute11                    in     varchar2 default null
650   ,p_attribute12                    in     varchar2 default null
651   ,p_attribute13                    in     varchar2 default null
652   ,p_attribute14                    in     varchar2 default null
653   ,p_attribute15                    in     varchar2 default null
654   ,p_attribute16                    in     varchar2 default null
655   ,p_attribute17                    in     varchar2 default null
656   ,p_attribute18                    in     varchar2 default null
657   ,p_attribute19                    in     varchar2 default null
658   ,p_attribute20                    in     varchar2 default null
659   ,p_information_category           in     varchar2 default null
660   ,p_information1                   in     varchar2 default null
661   ,p_information2                   in     varchar2 default null
662   ,p_information3                   in     varchar2 default null
663   ,p_information4                   in     varchar2 default null
664   ,p_information5                   in     varchar2 default null
665   ,p_information6                   in     varchar2 default null
666   ,p_information7                   in     varchar2 default null
667   ,p_information8                   in     varchar2 default null
668   ,p_information9                   in     varchar2 default null
669   ,p_information10                  in     varchar2 default null
670   ,p_information11                  in     varchar2 default null
671   ,p_information12                  in     varchar2 default null
672   ,p_information13                  in     varchar2 default null
673   ,p_information14                  in     varchar2 default null
674   ,p_information15                  in     varchar2 default null
675   ,p_information16                  in     varchar2 default null
676   ,p_information17                  in     varchar2 default null
677   ,p_information18                  in     varchar2 default null
678   ,p_information19                  in     varchar2 default null
679   ,p_information20                  in     varchar2 default null
680   ,p_task_in_checklist_id              out nocopy number
681   ,p_object_version_number             out nocopy number
682   ) is
683 --
684   l_rec   per_ctk_shd.g_rec_type;
685   l_proc  varchar2(72) := g_package||'ins';
686 --
687 Begin
688   hr_utility.set_location('Entering:'||l_proc, 5);
689   --
690   -- Call conversion function to turn arguments into the
691   -- p_rec structure.
692   --
693   l_rec :=
694   per_ctk_shd.convert_args
695     (null
696     ,p_checklist_id
697     ,p_checklist_task_name
698     ,p_eligibility_object_id
699     ,p_eligibility_profile_id
700     ,p_ame_attribute_identifier
701     ,p_description
702     ,p_mandatory_flag
703     ,p_target_duration
704     ,p_target_duration_uom
705     ,p_task_sequence
706     ,null
707     ,p_action_url
708     ,p_attribute_category
709     ,p_attribute1
710     ,p_attribute2
711     ,p_attribute3
712     ,p_attribute4
713     ,p_attribute5
714     ,p_attribute6
715     ,p_attribute7
716     ,p_attribute8
717     ,p_attribute9
718     ,p_attribute10
719     ,p_attribute11
720     ,p_attribute12
721     ,p_attribute13
722     ,p_attribute14
723     ,p_attribute15
724     ,p_attribute16
725     ,p_attribute17
726     ,p_attribute18
727     ,p_attribute19
728     ,p_attribute20
729     ,p_information_category
730     ,p_information1
731     ,p_information2
732     ,p_information3
733     ,p_information4
734     ,p_information5
735     ,p_information6
736     ,p_information7
737     ,p_information8
738     ,p_information9
739     ,p_information10
740     ,p_information11
741     ,p_information12
742     ,p_information13
743     ,p_information14
744     ,p_information15
745     ,p_information16
746     ,p_information17
747     ,p_information18
748     ,p_information19
749     ,p_information20
750     );
751   --
752   -- Having converted the arguments into the per_ctk_rec
753   -- plsql record structure we call the corresponding record business process.
754   --
755   per_ctk_ins.ins
756      (p_effective_date
757      ,l_rec
758      );
759   --
760   -- As the primary key argument(s)
761   -- are specified as an OUT's we must set these values.
762   --
763   p_task_in_checklist_id := l_rec.task_in_checklist_id;
764   p_object_version_number := l_rec.object_version_number;
765   --
766   hr_utility.set_location(' Leaving:'||l_proc, 10);
767 End ins;
768 --
769 end per_ctk_ins;