[Home] [Help]
PACKAGE BODY: APPS.BEN_CPD_INS
Source
1 Package Body ben_cpd_ins as
2 /* $Header: becpdrhi.pkb 120.1 2006/01/04 01:46 steotia noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' ben_cpd_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_pl_id_i number default null;
14 g_oipl_id_i number default null;
15 g_lf_evt_ocrd_dt_i date default null;
16 --
17 -- ----------------------------------------------------------------------------
18 -- |------------------------< set_base_key_value >----------------------------|
19 -- ----------------------------------------------------------------------------
20 procedure set_base_key_value
21 (p_pl_id in number
22 ,p_oipl_id in number
23 ,p_lf_evt_ocrd_dt in date) is
24 --
25 l_proc varchar2(72) := g_package||'set_base_key_value';
26 --
27 Begin
28 hr_utility.set_location('Entering:'||l_proc, 10);
29 --
30 ben_cpd_ins.g_pl_id_i := p_pl_id;
31 ben_cpd_ins.g_lf_evt_ocrd_dt_i := p_lf_evt_ocrd_dt;
32 ben_cpd_ins.g_oipl_id_i := p_oipl_id;
33 --
34 hr_utility.set_location(' Leaving:'||l_proc, 20);
35 End set_base_key_value;
36 --
37 --
38 -- ----------------------------------------------------------------------------
39 -- |------------------------------< insert_dml >------------------------------|
40 -- ----------------------------------------------------------------------------
41 -- {Start Of Comments}
42 --
43 -- Description:
44 -- This procedure controls the actual dml insert logic. The processing of
45 -- this procedure are as follows:
46 -- 1) Initialise the object_version_number to 1 if the object_version_number
47 -- is defined as an attribute for this entity.
48 -- 2) To set and unset the g_api_dml status as required (as we are about to
49 -- perform dml).
50 -- 3) To insert the row into the schema.
51 -- 4) To trap any constraint violations that may have occurred.
52 -- 5) To raise any other errors.
53 --
54 -- Prerequisites:
55 -- This is an internal private procedure which must be called from the ins
56 -- procedure and must have all mandatory attributes set (except the
57 -- object_version_number which is initialised within this procedure).
58 --
59 -- In Parameters:
60 -- A Pl/Sql record structre.
61 --
62 -- Post Success:
63 -- The specified row will be inserted into the schema.
64 --
65 -- Post Failure:
66 -- On the insert dml failure it is important to note that we always reset the
67 -- g_api_dml status to false.
68 -- If a check, unique or parent integrity constraint violation is raised the
69 -- constraint_error procedure will be called.
70 -- If any other error is reported, the error will be raised after the
71 -- g_api_dml status is reset.
72 --
73 -- Developer Implementation Notes:
74 -- None.
75 --
76 -- Access Status:
77 -- Internal Row Handler Use Only.
78 --
79 -- {End Of Comments}
80 -- ----------------------------------------------------------------------------
81 Procedure insert_dml
82 (p_rec in out nocopy ben_cpd_shd.g_rec_type
83 ) is
84 --
85 l_proc varchar2(72) := g_package||'insert_dml';
86 --
87 Begin
88 hr_utility.set_location('Entering:'||l_proc, 5);
89 p_rec.object_version_number := 1; -- Initialise the object version
90 --
91 ben_cpd_shd.g_api_dml := true; -- Set the api dml status
92 --
93 -- Insert the row into: ben_cwb_pl_dsgn
94 --
95 insert into ben_cwb_pl_dsgn
96 (pl_id
97 ,lf_evt_ocrd_dt
98 ,oipl_id
99 ,effective_date
100 ,name
101 ,group_pl_id
102 ,group_oipl_id
103 ,opt_hidden_flag
104 ,opt_id
105 ,pl_uom
106 ,pl_ordr_num
107 ,oipl_ordr_num
108 ,pl_xchg_rate
109 ,opt_count
110 ,uses_bdgt_flag
111 ,prsrv_bdgt_cd
112 ,upd_start_dt
113 ,upd_end_dt
114 ,approval_mode
115 ,enrt_perd_start_dt
116 ,enrt_perd_end_dt
117 ,yr_perd_start_dt
118 ,yr_perd_end_dt
119 ,wthn_yr_start_dt
120 ,wthn_yr_end_dt
121 ,enrt_perd_id
122 ,yr_perd_id
123 ,business_group_id
124 ,perf_revw_strt_dt
125 ,asg_updt_eff_date
126 ,emp_interview_typ_cd
127 ,salary_change_reason
128 ,ws_abr_id
129 ,ws_nnmntry_uom
130 ,ws_rndg_cd
131 ,ws_sub_acty_typ_cd
132 ,dist_bdgt_abr_id
133 ,dist_bdgt_nnmntry_uom
134 ,dist_bdgt_rndg_cd
135 ,ws_bdgt_abr_id
136 ,ws_bdgt_nnmntry_uom
137 ,ws_bdgt_rndg_cd
138 ,rsrv_abr_id
139 ,rsrv_nnmntry_uom
140 ,rsrv_rndg_cd
141 ,elig_sal_abr_id
142 ,elig_sal_nnmntry_uom
143 ,elig_sal_rndg_cd
144 ,misc1_abr_id
145 ,misc1_nnmntry_uom
146 ,misc1_rndg_cd
147 ,misc2_abr_id
148 ,misc2_nnmntry_uom
149 ,misc2_rndg_cd
150 ,misc3_abr_id
151 ,misc3_nnmntry_uom
152 ,misc3_rndg_cd
153 ,stat_sal_abr_id
154 ,stat_sal_nnmntry_uom
155 ,stat_sal_rndg_cd
156 ,rec_abr_id
157 ,rec_nnmntry_uom
158 ,rec_rndg_cd
159 ,tot_comp_abr_id
160 ,tot_comp_nnmntry_uom
161 ,tot_comp_rndg_cd
162 ,oth_comp_abr_id
163 ,oth_comp_nnmntry_uom
164 ,oth_comp_rndg_cd
165 ,actual_flag
166 ,acty_ref_perd_cd
167 ,legislation_code
168 ,pl_annulization_factor
169 ,pl_stat_cd
170 ,uom_precision
171 ,ws_element_type_id
172 ,ws_input_value_id
173 ,data_freeze_date
174 ,ws_amt_edit_cd
175 ,ws_amt_edit_enf_cd_for_nulls
176 ,ws_over_budget_edit_cd
177 ,ws_over_budget_tolerance_pct
178 ,bdgt_over_budget_edit_cd
179 ,bdgt_over_budget_tolerance_pct
180 ,auto_distr_flag
181 ,pqh_document_short_name
182 ,ovrid_rt_strt_dt
183 ,do_not_process_flag
184 ,ovr_perf_revw_strt_dt
185 ,object_version_number
186 )
187 Values
188 (p_rec.pl_id
189 ,p_rec.lf_evt_ocrd_dt
190 ,p_rec.oipl_id
191 ,p_rec.effective_date
192 ,p_rec.name
193 ,p_rec.group_pl_id
194 ,p_rec.group_oipl_id
195 ,p_rec.opt_hidden_flag
196 ,p_rec.opt_id
197 ,p_rec.pl_uom
198 ,p_rec.pl_ordr_num
199 ,p_rec.oipl_ordr_num
200 ,p_rec.pl_xchg_rate
201 ,p_rec.opt_count
202 ,p_rec.uses_bdgt_flag
203 ,p_rec.prsrv_bdgt_cd
204 ,p_rec.upd_start_dt
205 ,p_rec.upd_end_dt
206 ,p_rec.approval_mode
207 ,p_rec.enrt_perd_start_dt
208 ,p_rec.enrt_perd_end_dt
209 ,p_rec.yr_perd_start_dt
210 ,p_rec.yr_perd_end_dt
211 ,p_rec.wthn_yr_start_dt
212 ,p_rec.wthn_yr_end_dt
213 ,p_rec.enrt_perd_id
214 ,p_rec.yr_perd_id
215 ,p_rec.business_group_id
216 ,p_rec.perf_revw_strt_dt
217 ,p_rec.asg_updt_eff_date
218 ,p_rec.emp_interview_typ_cd
219 ,p_rec.salary_change_reason
220 ,p_rec.ws_abr_id
221 ,p_rec.ws_nnmntry_uom
222 ,p_rec.ws_rndg_cd
223 ,p_rec.ws_sub_acty_typ_cd
224 ,p_rec.dist_bdgt_abr_id
225 ,p_rec.dist_bdgt_nnmntry_uom
226 ,p_rec.dist_bdgt_rndg_cd
227 ,p_rec.ws_bdgt_abr_id
228 ,p_rec.ws_bdgt_nnmntry_uom
229 ,p_rec.ws_bdgt_rndg_cd
230 ,p_rec.rsrv_abr_id
231 ,p_rec.rsrv_nnmntry_uom
232 ,p_rec.rsrv_rndg_cd
233 ,p_rec.elig_sal_abr_id
234 ,p_rec.elig_sal_nnmntry_uom
235 ,p_rec.elig_sal_rndg_cd
236 ,p_rec.misc1_abr_id
237 ,p_rec.misc1_nnmntry_uom
238 ,p_rec.misc1_rndg_cd
239 ,p_rec.misc2_abr_id
240 ,p_rec.misc2_nnmntry_uom
241 ,p_rec.misc2_rndg_cd
242 ,p_rec.misc3_abr_id
243 ,p_rec.misc3_nnmntry_uom
244 ,p_rec.misc3_rndg_cd
245 ,p_rec.stat_sal_abr_id
246 ,p_rec.stat_sal_nnmntry_uom
247 ,p_rec.stat_sal_rndg_cd
248 ,p_rec.rec_abr_id
249 ,p_rec.rec_nnmntry_uom
250 ,p_rec.rec_rndg_cd
251 ,p_rec.tot_comp_abr_id
252 ,p_rec.tot_comp_nnmntry_uom
253 ,p_rec.tot_comp_rndg_cd
254 ,p_rec.oth_comp_abr_id
255 ,p_rec.oth_comp_nnmntry_uom
256 ,p_rec.oth_comp_rndg_cd
257 ,p_rec.actual_flag
258 ,p_rec.acty_ref_perd_cd
259 ,p_rec.legislation_code
260 ,p_rec.pl_annulization_factor
261 ,p_rec.pl_stat_cd
262 ,p_rec.uom_precision
263 ,p_rec.ws_element_type_id
264 ,p_rec.ws_input_value_id
265 ,p_rec.data_freeze_date
266 ,p_rec.ws_amt_edit_cd
267 ,p_rec.ws_amt_edit_enf_cd_for_nulls
268 ,p_rec.ws_over_budget_edit_cd
269 ,p_rec.ws_over_budget_tolerance_pct
270 ,p_rec.bdgt_over_budget_edit_cd
271 ,p_rec.bdgt_over_budget_tolerance_pct
272 ,p_rec.auto_distr_flag
273 ,p_rec.pqh_document_short_name
274 ,p_rec.ovrid_rt_strt_dt
275 ,p_rec.do_not_process_flag
276 ,p_rec.ovr_perf_revw_strt_dt
277 ,p_rec.object_version_number
278 );
279 --
280 ben_cpd_shd.g_api_dml := false; -- Unset the api dml status
281 --
282 hr_utility.set_location(' Leaving:'||l_proc, 10);
283 Exception
284 When hr_api.check_integrity_violated Then
285 -- A check constraint has been violated
286 ben_cpd_shd.g_api_dml := false; -- Unset the api dml status
287 ben_cpd_shd.constraint_error
288 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
289 When hr_api.parent_integrity_violated Then
290 -- Parent integrity has been violated
291 ben_cpd_shd.g_api_dml := false; -- Unset the api dml status
292 ben_cpd_shd.constraint_error
293 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
294 When hr_api.unique_integrity_violated Then
295 -- Unique integrity has been violated
296 ben_cpd_shd.g_api_dml := false; -- Unset the api dml status
297 ben_cpd_shd.constraint_error
298 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
299 When Others Then
300 ben_cpd_shd.g_api_dml := false; -- Unset the api dml status
301 Raise;
302 End insert_dml;
303 --
304 -- ----------------------------------------------------------------------------
305 -- |------------------------------< pre_insert >------------------------------|
306 -- ----------------------------------------------------------------------------
307 -- {Start Of Comments}
308 --
309 -- Description:
310 -- This private procedure contains any processing which is required before
311 -- the insert dml. Presently, if the entity has a corresponding primary
312 -- key which is maintained by an associating sequence, the primary key for
313 -- the entity will be populated with the next sequence value in
314 -- preparation for the insert dml.
315 --
316 -- Prerequisites:
317 -- This is an internal procedure which is called from the ins procedure.
318 --
319 -- In Parameters:
320 -- A Pl/Sql record structure.
321 --
322 -- Post Success:
323 -- Processing continues.
324 --
325 -- Post Failure:
326 -- If an error has occurred, an error message and exception will be raised
327 -- but not handled.
328 --
329 -- Developer Implementation Notes:
330 -- Any pre-processing required before the insert dml is issued should be
331 -- coded within this procedure. As stated above, a good example is the
332 -- generation of a primary key number via a corresponding sequence.
333 -- It is important to note that any 3rd party maintenance should be reviewed
334 -- before placing in this procedure.
335 --
336 -- Access Status:
337 -- Internal Row Handler Use Only.
338 --
339 -- {End Of Comments}
340 -- ----------------------------------------------------------------------------
341 Procedure pre_insert
342 (p_rec in out nocopy ben_cpd_shd.g_rec_type
343 ) is
344 --
345 Cursor C_Sel1 is
346 Select null
347 from ben_cwb_pl_dsgn
348 where pl_id =
349 ben_cpd_ins.g_pl_id_i
350 or lf_evt_ocrd_dt =
351 ben_cpd_ins.g_lf_evt_ocrd_dt_i
352 or oipl_id =
353 ben_cpd_ins.g_oipl_id_i;
354 --
355 l_proc varchar2(72) := g_package||'pre_insert';
356 l_exists varchar2(1);
357 --
358 Begin
359 hr_utility.set_location('Entering:'||l_proc, 5);
360 --
361 If (ben_cpd_ins.g_pl_id_i is not null or
362 ben_cpd_ins.g_lf_evt_ocrd_dt_i is not null or
363 ben_cpd_ins.g_oipl_id_i is not null) Then
364 --
365 -- Verify registered primary key values not already in use
366 --
367 Open C_Sel1;
368 Fetch C_Sel1 into l_exists;
369 If C_Sel1%found Then
370 Close C_Sel1;
371 --
372 -- The primary key values are already in use.
373 --
374 fnd_message.set_name('PER','PER_289391_KEY_ALREADY_USED');
375 fnd_message.set_token('TABLE_NAME','ben_cwb_pl_dsgn');
376 fnd_message.raise_error;
377 End If;
378 Close C_Sel1;
379 --
380 -- Use registered key values and clear globals
381 --
382 p_rec.pl_id :=
383 ben_cpd_ins.g_pl_id_i;
384 ben_cpd_ins.g_pl_id_i := null;
385 p_rec.lf_evt_ocrd_dt :=
386 ben_cpd_ins.g_lf_evt_ocrd_dt_i;
387 ben_cpd_ins.g_lf_evt_ocrd_dt_i := null;
388 p_rec.oipl_id :=
389 ben_cpd_ins.g_oipl_id_i;
390 ben_cpd_ins.g_oipl_id_i := null;
391 Else
392 -- Commented out the following code as it is not required.
393 null;
394 /* --
395 -- No registerd key values, so select the next sequence number
396 --
397 --
398 -- Select the next sequence number
399 --
400 Open C_Sel1;
401 Fetch C_Sel1 Into p_rec.oipl_id;
402 Close C_Sel1; */
403 End If;
404 --
405 hr_utility.set_location(' Leaving:'||l_proc, 10);
406 End pre_insert;
407 --
408 -- ----------------------------------------------------------------------------
409 -- |-----------------------------< post_insert >------------------------------|
410 -- ----------------------------------------------------------------------------
411 -- {Start Of Comments}
412 --
413 -- Description:
414 -- This private procedure contains any processing which is required after
415 -- the insert dml.
416 --
417 -- Prerequisites:
418 -- This is an internal procedure which is called from the ins procedure.
419 --
420 -- In Parameters:
421 -- A Pl/Sql record structre.
422 --
423 -- Post Success:
424 -- Processing continues.
425 --
426 -- Post Failure:
427 -- If an error has occurred, an error message and exception will be raised
428 -- but not handled.
429 --
430 -- Developer Implementation Notes:
431 -- Any post-processing required after the insert dml is issued should be
432 -- coded within this procedure. It is important to note that any 3rd party
433 -- maintenance should be reviewed before placing in this procedure.
434 --
435 -- Access Status:
436 -- Internal Row Handler Use Only.
437 --
438 -- {End Of Comments}
439 -- ----------------------------------------------------------------------------
440 Procedure post_insert
441 (p_rec in ben_cpd_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 ben_cpd_rki.after_insert
451 (p_pl_id
452 => p_rec.pl_id
453 ,p_lf_evt_ocrd_dt
454 => p_rec.lf_evt_ocrd_dt
455 ,p_oipl_id
456 => p_rec.oipl_id
457 ,p_effective_date
458 => p_rec.effective_date
459 ,p_name
460 => p_rec.name
461 ,p_group_pl_id
462 => p_rec.group_pl_id
463 ,p_group_oipl_id
464 => p_rec.group_oipl_id
465 ,p_opt_hidden_flag
466 => p_rec.opt_hidden_flag
467 ,p_opt_id
468 => p_rec.opt_id
469 ,p_pl_uom
470 => p_rec.pl_uom
471 ,p_pl_ordr_num
472 => p_rec.pl_ordr_num
473 ,p_oipl_ordr_num
474 => p_rec.oipl_ordr_num
475 ,p_pl_xchg_rate
476 => p_rec.pl_xchg_rate
477 ,p_opt_count
478 => p_rec.opt_count
479 ,p_uses_bdgt_flag
480 => p_rec.uses_bdgt_flag
481 ,p_prsrv_bdgt_cd
482 => p_rec.prsrv_bdgt_cd
483 ,p_upd_start_dt
484 => p_rec.upd_start_dt
485 ,p_upd_end_dt
486 => p_rec.upd_end_dt
487 ,p_approval_mode
488 => p_rec.approval_mode
489 ,p_enrt_perd_start_dt
490 => p_rec.enrt_perd_start_dt
491 ,p_enrt_perd_end_dt
492 => p_rec.enrt_perd_end_dt
493 ,p_yr_perd_start_dt
494 => p_rec.yr_perd_start_dt
495 ,p_yr_perd_end_dt
496 => p_rec.yr_perd_end_dt
497 ,p_wthn_yr_start_dt
498 => p_rec.wthn_yr_start_dt
499 ,p_wthn_yr_end_dt
500 => p_rec.wthn_yr_end_dt
501 ,p_enrt_perd_id
502 => p_rec.enrt_perd_id
503 ,p_yr_perd_id
504 => p_rec.yr_perd_id
505 ,p_business_group_id
506 => p_rec.business_group_id
507 ,p_perf_revw_strt_dt
508 => p_rec.perf_revw_strt_dt
509 ,p_asg_updt_eff_date
510 => p_rec.asg_updt_eff_date
511 ,p_emp_interview_typ_cd
512 => p_rec.emp_interview_typ_cd
513 ,p_salary_change_reason
514 => p_rec.salary_change_reason
515 ,p_ws_abr_id
516 => p_rec.ws_abr_id
517 ,p_ws_nnmntry_uom
518 => p_rec.ws_nnmntry_uom
519 ,p_ws_rndg_cd
520 => p_rec.ws_rndg_cd
521 ,p_ws_sub_acty_typ_cd
522 => p_rec.ws_sub_acty_typ_cd
523 ,p_dist_bdgt_abr_id
524 => p_rec.dist_bdgt_abr_id
525 ,p_dist_bdgt_nnmntry_uom
526 => p_rec.dist_bdgt_nnmntry_uom
527 ,p_dist_bdgt_rndg_cd
528 => p_rec.dist_bdgt_rndg_cd
529 ,p_ws_bdgt_abr_id
530 => p_rec.ws_bdgt_abr_id
531 ,p_ws_bdgt_nnmntry_uom
532 => p_rec.ws_bdgt_nnmntry_uom
533 ,p_ws_bdgt_rndg_cd
534 => p_rec.ws_bdgt_rndg_cd
535 ,p_rsrv_abr_id
536 => p_rec.rsrv_abr_id
537 ,p_rsrv_nnmntry_uom
538 => p_rec.rsrv_nnmntry_uom
539 ,p_rsrv_rndg_cd
540 => p_rec.rsrv_rndg_cd
541 ,p_elig_sal_abr_id
542 => p_rec.elig_sal_abr_id
543 ,p_elig_sal_nnmntry_uom
544 => p_rec.elig_sal_nnmntry_uom
545 ,p_elig_sal_rndg_cd
546 => p_rec.elig_sal_rndg_cd
547 ,p_misc1_abr_id
548 => p_rec.misc1_abr_id
549 ,p_misc1_nnmntry_uom
550 => p_rec.misc1_nnmntry_uom
551 ,p_misc1_rndg_cd
552 => p_rec.misc1_rndg_cd
553 ,p_misc2_abr_id
554 => p_rec.misc2_abr_id
555 ,p_misc2_nnmntry_uom
556 => p_rec.misc2_nnmntry_uom
557 ,p_misc2_rndg_cd
558 => p_rec.misc2_rndg_cd
559 ,p_misc3_abr_id
560 => p_rec.misc3_abr_id
561 ,p_misc3_nnmntry_uom
562 => p_rec.misc3_nnmntry_uom
563 ,p_misc3_rndg_cd
564 => p_rec.misc3_rndg_cd
565 ,p_stat_sal_abr_id
566 => p_rec.stat_sal_abr_id
567 ,p_stat_sal_nnmntry_uom
568 => p_rec.stat_sal_nnmntry_uom
569 ,p_stat_sal_rndg_cd
570 => p_rec.stat_sal_rndg_cd
571 ,p_rec_abr_id
572 => p_rec.rec_abr_id
573 ,p_rec_nnmntry_uom
574 => p_rec.rec_nnmntry_uom
575 ,p_rec_rndg_cd
576 => p_rec.rec_rndg_cd
577 ,p_tot_comp_abr_id
578 => p_rec.tot_comp_abr_id
579 ,p_tot_comp_nnmntry_uom
580 => p_rec.tot_comp_nnmntry_uom
581 ,p_tot_comp_rndg_cd
582 => p_rec.tot_comp_rndg_cd
583 ,p_oth_comp_abr_id
584 => p_rec.oth_comp_abr_id
585 ,p_oth_comp_nnmntry_uom
586 => p_rec.oth_comp_nnmntry_uom
587 ,p_oth_comp_rndg_cd
588 => p_rec.oth_comp_rndg_cd
589 ,p_actual_flag
590 => p_rec.actual_flag
591 ,p_acty_ref_perd_cd
592 => p_rec.acty_ref_perd_cd
593 ,p_legislation_code
594 => p_rec.legislation_code
595 ,p_pl_annulization_factor
596 => p_rec.pl_annulization_factor
597 ,p_pl_stat_cd
598 => p_rec.pl_stat_cd
599 ,p_uom_precision
600 => p_rec.uom_precision
601 ,p_ws_element_type_id
602 => p_rec.ws_element_type_id
603 ,p_ws_input_value_id
604 => p_rec.ws_input_value_id
605 ,p_data_freeze_date
606 => p_rec.data_freeze_date
607 ,p_ws_amt_edit_cd
608 => p_rec.ws_amt_edit_cd
609 ,p_ws_amt_edit_enf_cd_for_nul
610 => p_rec.ws_amt_edit_enf_cd_for_nulls
611 ,p_ws_over_budget_edit_cd
612 => p_rec.ws_over_budget_edit_cd
613 ,p_ws_over_budget_tol_pct
614 => p_rec.ws_over_budget_tolerance_pct
615 ,p_bdgt_over_budget_edit_cd
616 => p_rec.bdgt_over_budget_edit_cd
617 ,p_bdgt_over_budget_tol_pct
618 => p_rec.bdgt_over_budget_tolerance_pct
619 ,p_auto_distr_flag
620 => p_rec.auto_distr_flag
621 ,p_pqh_document_short_name
622 => p_rec.pqh_document_short_name
623 ,p_ovrid_rt_strt_dt
624 => p_rec.ovrid_rt_strt_dt
625 ,p_do_not_process_flag
626 => p_rec.do_not_process_flag
627 ,p_ovr_perf_revw_strt_dt
628 => p_rec.ovr_perf_revw_strt_dt
629 ,p_object_version_number
630 => p_rec.object_version_number
631 );
632 --
633 exception
634 --
635 when hr_api.cannot_find_prog_unit then
636 --
637 hr_api.cannot_find_prog_unit_error
638 (p_module_name => 'BEN_CWB_PL_DSGN'
639 ,p_hook_type => 'AI');
640 --
641 end;
642 --
643 hr_utility.set_location(' Leaving:'||l_proc, 10);
644 End post_insert;
645 --
646 -- ----------------------------------------------------------------------------
647 -- |---------------------------------< ins >----------------------------------|
648 -- ----------------------------------------------------------------------------
649 Procedure ins
650 (p_rec in out nocopy ben_cpd_shd.g_rec_type
651 ) is
652 --
653 l_proc varchar2(72) := g_package||'ins';
654 --
655 Begin
656 hr_utility.set_location('Entering:'||l_proc, 5);
657 --
658 -- Call the supporting insert validate operations
659 --
660 ben_cpd_bus.insert_validate
661 (p_rec
662 );
663 --
664 -- Call to raise any errors on multi-message list
665 hr_multi_message.end_validation_set;
666 --
667 -- Call the supporting pre-insert operation
668 --
669 ben_cpd_ins.pre_insert(p_rec);
670 --
671 -- Insert the row
672 --
673 ben_cpd_ins.insert_dml(p_rec);
674 --
675 -- Call the supporting post-insert operation
676 --
677 ben_cpd_ins.post_insert
678 (p_rec
679 );
680 --
681 -- Call to raise any errors on multi-message list
682 hr_multi_message.end_validation_set;
683 --
684 hr_utility.set_location('Leaving:'||l_proc, 20);
685 end ins;
686 --
687 -- ----------------------------------------------------------------------------
688 -- |---------------------------------< ins >----------------------------------|
689 -- ----------------------------------------------------------------------------
690 Procedure ins
691 (p_pl_id in number
692 ,p_oipl_id in number
693 ,p_lf_evt_ocrd_dt in date
694 ,p_effective_date in date default null
695 ,p_name in varchar2 default null
696 ,p_group_pl_id in number default null
697 ,p_group_oipl_id in number default null
698 ,p_opt_hidden_flag in varchar2 default null
699 ,p_opt_id in number default null
700 ,p_pl_uom in varchar2 default null
701 ,p_pl_ordr_num in number default null
702 ,p_oipl_ordr_num in number default null
703 ,p_pl_xchg_rate in number default null
704 ,p_opt_count in number default null
705 ,p_uses_bdgt_flag in varchar2 default null
706 ,p_prsrv_bdgt_cd in varchar2 default null
707 ,p_upd_start_dt in date default null
708 ,p_upd_end_dt in date default null
709 ,p_approval_mode in varchar2 default null
710 ,p_enrt_perd_start_dt in date default null
711 ,p_enrt_perd_end_dt in date default null
712 ,p_yr_perd_start_dt in date default null
713 ,p_yr_perd_end_dt in date default null
714 ,p_wthn_yr_start_dt in date default null
715 ,p_wthn_yr_end_dt in date default null
716 ,p_enrt_perd_id in number default null
717 ,p_yr_perd_id in number default null
718 ,p_business_group_id in number default null
719 ,p_perf_revw_strt_dt in date default null
720 ,p_asg_updt_eff_date in date default null
721 ,p_emp_interview_typ_cd in varchar2 default null
722 ,p_salary_change_reason in varchar2 default null
723 ,p_ws_abr_id in number default null
724 ,p_ws_nnmntry_uom in varchar2 default null
725 ,p_ws_rndg_cd in varchar2 default null
726 ,p_ws_sub_acty_typ_cd in varchar2 default null
727 ,p_dist_bdgt_abr_id in number default null
728 ,p_dist_bdgt_nnmntry_uom in varchar2 default null
729 ,p_dist_bdgt_rndg_cd in varchar2 default null
730 ,p_ws_bdgt_abr_id in number default null
731 ,p_ws_bdgt_nnmntry_uom in varchar2 default null
732 ,p_ws_bdgt_rndg_cd in varchar2 default null
733 ,p_rsrv_abr_id in number default null
734 ,p_rsrv_nnmntry_uom in varchar2 default null
735 ,p_rsrv_rndg_cd in varchar2 default null
736 ,p_elig_sal_abr_id in number default null
737 ,p_elig_sal_nnmntry_uom in varchar2 default null
738 ,p_elig_sal_rndg_cd in varchar2 default null
739 ,p_misc1_abr_id in number default null
740 ,p_misc1_nnmntry_uom in varchar2 default null
741 ,p_misc1_rndg_cd in varchar2 default null
742 ,p_misc2_abr_id in number default null
743 ,p_misc2_nnmntry_uom in varchar2 default null
744 ,p_misc2_rndg_cd in varchar2 default null
745 ,p_misc3_abr_id in number default null
746 ,p_misc3_nnmntry_uom in varchar2 default null
747 ,p_misc3_rndg_cd in varchar2 default null
748 ,p_stat_sal_abr_id in number default null
749 ,p_stat_sal_nnmntry_uom in varchar2 default null
750 ,p_stat_sal_rndg_cd in varchar2 default null
751 ,p_rec_abr_id in number default null
752 ,p_rec_nnmntry_uom in varchar2 default null
753 ,p_rec_rndg_cd in varchar2 default null
754 ,p_tot_comp_abr_id in number default null
755 ,p_tot_comp_nnmntry_uom in varchar2 default null
756 ,p_tot_comp_rndg_cd in varchar2 default null
757 ,p_oth_comp_abr_id in number default null
758 ,p_oth_comp_nnmntry_uom in varchar2 default null
759 ,p_oth_comp_rndg_cd in varchar2 default null
760 ,p_actual_flag in varchar2 default null
761 ,p_acty_ref_perd_cd in varchar2 default null
762 ,p_legislation_code in varchar2 default null
763 ,p_pl_annulization_factor in number default null
764 ,p_pl_stat_cd in varchar2 default null
765 ,p_uom_precision in number default null
766 ,p_ws_element_type_id in number default null
767 ,p_ws_input_value_id in number default null
768 ,p_data_freeze_date in date default null
769 ,p_ws_amt_edit_cd in varchar2 default null
770 ,p_ws_amt_edit_enf_cd_for_nul in varchar2 default null
771 ,p_ws_over_budget_edit_cd in varchar2 default null
772 ,p_ws_over_budget_tol_pct in number default null
773 ,p_bdgt_over_budget_edit_cd in varchar2 default null
774 ,p_bdgt_over_budget_tol_pct in number default null
775 ,p_auto_distr_flag in varchar2 default null
776 ,p_pqh_document_short_name in varchar2 default null
777 ,p_ovrid_rt_strt_dt in date default null
778 ,p_do_not_process_flag in varchar2 default null
779 ,p_ovr_perf_revw_strt_dt in date default null
780 ,p_object_version_number out nocopy number
781 ) is
782 --
783 l_rec ben_cpd_shd.g_rec_type;
784 l_proc varchar2(72) := g_package||'ins';
785 --
786 Begin
787 hr_utility.set_location('Entering:'||l_proc, 5);
788 --
789 -- Call conversion function to turn arguments into the
790 -- p_rec structure.
791 --
792 l_rec :=
793 ben_cpd_shd.convert_args
794 (p_pl_id
795 ,p_oipl_id
796 ,p_lf_evt_ocrd_dt
797 ,p_effective_date
798 ,p_name
799 ,p_group_pl_id
800 ,p_group_oipl_id
801 ,p_opt_hidden_flag
802 ,p_opt_id
803 ,p_pl_uom
804 ,p_pl_ordr_num
805 ,p_oipl_ordr_num
806 ,p_pl_xchg_rate
807 ,p_opt_count
808 ,p_uses_bdgt_flag
809 ,p_prsrv_bdgt_cd
810 ,p_upd_start_dt
811 ,p_upd_end_dt
812 ,p_approval_mode
813 ,p_enrt_perd_start_dt
814 ,p_enrt_perd_end_dt
815 ,p_yr_perd_start_dt
816 ,p_yr_perd_end_dt
817 ,p_wthn_yr_start_dt
818 ,p_wthn_yr_end_dt
819 ,p_enrt_perd_id
820 ,p_yr_perd_id
821 ,p_business_group_id
822 ,p_perf_revw_strt_dt
823 ,p_asg_updt_eff_date
824 ,p_emp_interview_typ_cd
825 ,p_salary_change_reason
826 ,p_ws_abr_id
827 ,p_ws_nnmntry_uom
828 ,p_ws_rndg_cd
829 ,p_ws_sub_acty_typ_cd
830 ,p_dist_bdgt_abr_id
831 ,p_dist_bdgt_nnmntry_uom
832 ,p_dist_bdgt_rndg_cd
833 ,p_ws_bdgt_abr_id
834 ,p_ws_bdgt_nnmntry_uom
835 ,p_ws_bdgt_rndg_cd
836 ,p_rsrv_abr_id
837 ,p_rsrv_nnmntry_uom
838 ,p_rsrv_rndg_cd
839 ,p_elig_sal_abr_id
840 ,p_elig_sal_nnmntry_uom
841 ,p_elig_sal_rndg_cd
842 ,p_misc1_abr_id
843 ,p_misc1_nnmntry_uom
844 ,p_misc1_rndg_cd
845 ,p_misc2_abr_id
846 ,p_misc2_nnmntry_uom
847 ,p_misc2_rndg_cd
848 ,p_misc3_abr_id
849 ,p_misc3_nnmntry_uom
850 ,p_misc3_rndg_cd
851 ,p_stat_sal_abr_id
852 ,p_stat_sal_nnmntry_uom
853 ,p_stat_sal_rndg_cd
854 ,p_rec_abr_id
855 ,p_rec_nnmntry_uom
856 ,p_rec_rndg_cd
857 ,p_tot_comp_abr_id
858 ,p_tot_comp_nnmntry_uom
859 ,p_tot_comp_rndg_cd
860 ,p_oth_comp_abr_id
861 ,p_oth_comp_nnmntry_uom
862 ,p_oth_comp_rndg_cd
863 ,p_actual_flag
864 ,p_acty_ref_perd_cd
865 ,p_legislation_code
866 ,p_pl_annulization_factor
867 ,p_pl_stat_cd
868 ,p_uom_precision
869 ,p_ws_element_type_id
870 ,p_ws_input_value_id
871 ,p_data_freeze_date
872 ,p_ws_amt_edit_cd
873 ,p_ws_amt_edit_enf_cd_for_nul
874 ,p_ws_over_budget_edit_cd
875 ,p_ws_over_budget_tol_pct
876 ,p_bdgt_over_budget_edit_cd
877 ,p_bdgt_over_budget_tol_pct
878 ,p_auto_distr_flag
879 ,p_pqh_document_short_name
880 ,p_ovrid_rt_strt_dt
881 ,p_do_not_process_flag
882 ,p_ovr_perf_revw_strt_dt
883 ,null
884 );
885 --
886 -- Having converted the arguments into the ben_cpd_rec
887 -- plsql record structure we call the corresponding record business process.
888 --
889 ben_cpd_ins.ins
890 (l_rec
891 );
892 --
893 -- As the primary key argument(s)
894 -- are specified as an OUT's we must set these values.
895 --
896 p_object_version_number := l_rec.object_version_number;
897 --
898 hr_utility.set_location(' Leaving:'||l_proc, 10);
899 End ins;
900 --
901 end ben_cpd_ins;