DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_ENP_INS

Source


1 Package Body ben_enp_ins as
2 /* $Header: beenprhi.pkb 120.1.12000000.3 2007/05/13 22:36:53 rtagarra noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  ben_enp_ins.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------------< insert_dml >------------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 --   This procedure controls the actual dml insert logic. The processing of
17 --   this procedure are as follows:
18 --   1) Initialise the object_version_number to 1 if the object_version_number
19 --      is defined as an attribute for this entity.
20 --   2) To set and unset the g_api_dml status as required (as we are about to
21 --      perform dml).
22 --   3) To insert the row into the schema.
23 --   4) To trap any constraint violations that may have occurred.
24 --   5) To raise any other errors.
25 --
26 -- Prerequisites:
27 --   This is an internal private procedure which must be called from the ins
28 --   procedure and must have all mandatory attributes set (except the
29 --   object_version_number which is initialised within this procedure).
30 --
31 -- In Parameters:
32 --   A Pl/Sql record structre.
33 --
34 -- Post Success:
35 --   The specified row will be inserted into the schema.
36 --
37 -- Post Failure:
38 --   On the insert dml failure it is important to note that we always reset the
39 --   g_api_dml status to false.
40 --   If a check, unique or parent integrity constraint violation is raised the
41 --   constraint_error procedure will be called.
42 --   If any other error is reported, the error will be raised after the
43 --   g_api_dml status is reset.
44 --
45 -- Developer Implementation Notes:
46 --   None.
47 --
48 -- Access Status:
49 --   Internal Row Handler Use Only.
50 --
51 -- {End Of Comments}
52 -- ----------------------------------------------------------------------------
53 Procedure insert_dml(p_rec in out nocopy ben_enp_shd.g_rec_type) is
54 --
55   l_proc  varchar2(72) := g_package||'insert_dml';
56 --
57 Begin
58   hr_utility.set_location('Entering:'||l_proc, 5);
59   p_rec.object_version_number := 1;  -- Initialise the object version
60   --
61   ben_enp_shd.g_api_dml := true;  -- Set the api dml status
62   --
63   -- Insert the row into: ben_enrt_perd
64   --
65   insert into ben_enrt_perd
66   (	enrt_perd_id,
67 	business_group_id,
68 	yr_perd_id,
69 	popl_enrt_typ_cycl_id,
70 	end_dt,
71 	strt_dt,
72         asnd_lf_evt_dt ,
73 	cls_enrt_dt_to_use_cd,
74 	dflt_enrt_dt,
75 	enrt_cvg_strt_dt_cd,
76 	rt_strt_dt_rl,
77 	enrt_cvg_end_dt_cd,
78 	enrt_cvg_strt_dt_rl,
79 	enrt_cvg_end_dt_rl,
80 	procg_end_dt,
81 	rt_strt_dt_cd,
82 	rt_end_dt_cd,
83 	rt_end_dt_rl,
84         bdgt_upd_strt_dt,
85         bdgt_upd_end_dt,
86         ws_upd_strt_dt,
87         ws_upd_end_dt,
88         dflt_ws_acc_cd,
89         prsvr_bdgt_cd,
90         uses_bdgt_flag,
91         auto_distr_flag,
92         hrchy_to_use_cd,
93         pos_structure_version_id,
94         emp_interview_type_cd,
95         wthn_yr_perd_id,
96         ler_id,
97         perf_revw_strt_dt,
98         asg_updt_eff_date,
99 	enp_attribute_category,
100 	enp_attribute1,
101 	enp_attribute2,
102 	enp_attribute3,
103 	enp_attribute4,
104 	enp_attribute5,
105 	enp_attribute6,
106 	enp_attribute7,
107 	enp_attribute8,
108 	enp_attribute9,
109 	enp_attribute10,
110 	enp_attribute11,
111 	enp_attribute12,
112 	enp_attribute13,
113 	enp_attribute14,
114 	enp_attribute15,
115 	enp_attribute16,
116 	enp_attribute17,
117 	enp_attribute18,
118 	enp_attribute19,
119 	enp_attribute20,
120 	enp_attribute21,
121 	enp_attribute22,
122 	enp_attribute23,
123 	enp_attribute24,
124 	enp_attribute25,
125 	enp_attribute26,
126 	enp_attribute27,
127 	enp_attribute28,
128 	enp_attribute29,
129 	enp_attribute30,
130 	enrt_perd_det_ovrlp_bckdt_cd,
131         --cwb
132         data_freeze_date   ,
133         Sal_chg_reason_cd ,
134         Approval_mode_cd ,
135         hrchy_ame_trn_cd,
136         hrchy_rl     ,
137         hrchy_ame_app_id ,
138 	object_version_number,
139 	reinstate_cd,
140 	reinstate_ovrdn_cd,
141 	defer_deenrol_flag
142   )
143   Values
144   (	p_rec.enrt_perd_id,
145 	p_rec.business_group_id,
146 	p_rec.yr_perd_id,
147 	p_rec.popl_enrt_typ_cycl_id,
148 	p_rec.end_dt,
149 	p_rec.strt_dt,
150         p_rec.asnd_lf_evt_dt,
151 	p_rec.cls_enrt_dt_to_use_cd,
152 	p_rec.dflt_enrt_dt,
153 	p_rec.enrt_cvg_strt_dt_cd,
154 	p_rec.rt_strt_dt_rl,
155 	p_rec.enrt_cvg_end_dt_cd,
156 	p_rec.enrt_cvg_strt_dt_rl,
157 	p_rec.enrt_cvg_end_dt_rl,
158 	p_rec.procg_end_dt,
159 	p_rec.rt_strt_dt_cd,
160 	p_rec.rt_end_dt_cd,
161 	p_rec.rt_end_dt_rl,
162         p_rec.bdgt_upd_strt_dt,
163         p_rec.bdgt_upd_end_dt,
164         p_rec.ws_upd_strt_dt,
165         p_rec.ws_upd_end_dt,
166         p_rec.dflt_ws_acc_cd,
167         p_rec.prsvr_bdgt_cd,
168         p_rec.uses_bdgt_flag,
169         p_rec.auto_distr_flag,
170         p_rec.hrchy_to_use_cd,
171         p_rec.pos_structure_version_id,
172         p_rec.emp_interview_type_cd,
173         p_rec.wthn_yr_perd_id,
174         p_rec.ler_id,
175         p_rec.perf_revw_strt_dt,
176         p_rec.asg_updt_eff_date,
177 	p_rec.enp_attribute_category,
178 	p_rec.enp_attribute1,
179 	p_rec.enp_attribute2,
180 	p_rec.enp_attribute3,
181 	p_rec.enp_attribute4,
182 	p_rec.enp_attribute5,
183 	p_rec.enp_attribute6,
184 	p_rec.enp_attribute7,
185 	p_rec.enp_attribute8,
186 	p_rec.enp_attribute9,
187 	p_rec.enp_attribute10,
188 	p_rec.enp_attribute11,
189 	p_rec.enp_attribute12,
190 	p_rec.enp_attribute13,
191 	p_rec.enp_attribute14,
192 	p_rec.enp_attribute15,
193 	p_rec.enp_attribute16,
194 	p_rec.enp_attribute17,
195 	p_rec.enp_attribute18,
196 	p_rec.enp_attribute19,
197 	p_rec.enp_attribute20,
198 	p_rec.enp_attribute21,
199 	p_rec.enp_attribute22,
200 	p_rec.enp_attribute23,
201 	p_rec.enp_attribute24,
202 	p_rec.enp_attribute25,
203 	p_rec.enp_attribute26,
204 	p_rec.enp_attribute27,
205 	p_rec.enp_attribute28,
206 	p_rec.enp_attribute29,
207 	p_rec.enp_attribute30,
208 	p_rec.enrt_perd_det_ovrlp_bckdt_cd,
209          --cwb
210         p_rec.data_freeze_date   ,
211         p_rec.Sal_chg_reason_cd ,
212         p_rec.Approval_mode_cd ,
213         p_rec.hrchy_ame_trn_cd,
214         p_rec.hrchy_rl     ,
215         p_rec.hrchy_ame_app_id ,
216 	p_rec.object_version_number ,
217 	p_rec.reinstate_cd,
218 	p_rec.reinstate_ovrdn_cd,
219 	p_rec.defer_deenrol_flag
220   );
221   --
222   ben_enp_shd.g_api_dml := false;   -- Unset the api dml status
223   --
224   hr_utility.set_location(' Leaving:'||l_proc, 10);
225 Exception
226   When hr_api.check_integrity_violated Then
227     -- A check constraint has been violated
228     ben_enp_shd.g_api_dml := false;   -- Unset the api dml status
229     ben_enp_shd.constraint_error
230       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
231   When hr_api.parent_integrity_violated Then
232     -- Parent integrity has been violated
233     ben_enp_shd.g_api_dml := false;   -- Unset the api dml status
234     ben_enp_shd.constraint_error
235       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
236   When hr_api.unique_integrity_violated Then
237     -- Unique integrity has been violated
238     ben_enp_shd.g_api_dml := false;   -- Unset the api dml status
239     ben_enp_shd.constraint_error
240       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
241   When Others Then
242     ben_enp_shd.g_api_dml := false;   -- Unset the api dml status
243     Raise;
244 End insert_dml;
245 --
246 -- ----------------------------------------------------------------------------
247 -- |------------------------------< pre_insert >------------------------------|
248 -- ----------------------------------------------------------------------------
249 -- {Start Of Comments}
250 --
251 -- Description:
252 --   This private procedure contains any processing which is required before
253 --   the insert dml. Presently, if the entity has a corresponding primary
254 --   key which is maintained by an associating sequence, the primary key for
255 --   the entity will be populated with the next sequence value in
256 --   preparation for the insert dml.
257 --
258 -- Prerequisites:
259 --   This is an internal procedure which is called from the ins procedure.
260 --
261 -- In Parameters:
262 --   A Pl/Sql record structre.
263 --
264 -- Post Success:
265 --   Processing continues.
266 --
267 -- Post Failure:
268 --   If an error has occurred, an error message and exception will be raised
269 --   but not handled.
270 --
271 -- Developer Implementation Notes:
272 --   Any pre-processing required before the insert dml is issued should be
273 --   coded within this procedure. As stated above, a good example is the
274 --   generation of a primary key number via a corresponding sequence.
275 --   It is important to note that any 3rd party maintenance should be reviewed
276 --   before placing in this procedure.
277 --
278 -- Access Status:
279 --   Internal Row Handler Use Only.
280 --
281 -- {End Of Comments}
282 -- ----------------------------------------------------------------------------
283 Procedure pre_insert(p_rec  in out nocopy ben_enp_shd.g_rec_type) is
284 --
285   l_proc  varchar2(72) := g_package||'pre_insert';
286 --
287   Cursor C_Sel1 is select ben_enrt_perd_s.nextval from sys.dual;
288 --
289 Begin
290   hr_utility.set_location('Entering:'||l_proc, 5);
291   --
292   --
293   -- Select the next sequence number
294   --
295   Open C_Sel1;
296   Fetch C_Sel1 Into p_rec.enrt_perd_id;
297   Close C_Sel1;
298   --
299   hr_utility.set_location(' Leaving:'||l_proc, 10);
300 End pre_insert;
301 --
302 -- ----------------------------------------------------------------------------
303 -- |-----------------------------< post_insert >------------------------------|
304 -- ----------------------------------------------------------------------------
305 -- {Start Of Comments}
306 --
307 -- Description:
308 --   This private procedure contains any processing which is required after the
309 --   insert dml.
310 --
311 -- Prerequisites:
312 --   This is an internal procedure which is called from the ins procedure.
313 --
314 -- In Parameters:
315 --   A Pl/Sql record structre.
316 --
317 -- Post Success:
318 --   Processing continues.
319 --
320 -- Post Failure:
321 --   If an error has occurred, an error message and exception will be raised
322 --   but not handled.
323 --
324 -- Developer Implementation Notes:
325 --   Any post-processing required after the insert dml is issued should be
326 --   coded within this procedure. It is important to note that any 3rd party
327 --   maintenance should be reviewed before placing in this procedure.
328 --
329 -- Access Status:
330 --   Internal Row Handler Use Only.
331 --
332 -- {End Of Comments}
333 -- ----------------------------------------------------------------------------
334 Procedure post_insert(
335 p_effective_date in date,p_rec in ben_enp_shd.g_rec_type) is
336 --
337   l_proc  varchar2(72) := g_package||'post_insert';
338 --
339 Begin
340   hr_utility.set_location('Entering:'||l_proc, 5);
341 --
342   --
343   -- Start of API User Hook for post_insert.
344   --
345   begin
346     --
347     ben_enp_rki.after_insert
348       (
349   p_enrt_perd_id                  =>p_rec.enrt_perd_id
350  ,p_business_group_id             =>p_rec.business_group_id
351  ,p_yr_perd_id                    =>p_rec.yr_perd_id
352  ,p_popl_enrt_typ_cycl_id         =>p_rec.popl_enrt_typ_cycl_id
353  ,p_end_dt                        =>p_rec.end_dt
354  ,p_strt_dt                       =>p_rec.strt_dt
355  ,p_asnd_lf_evt_dt                =>p_rec.asnd_lf_evt_dt
356  ,p_cls_enrt_dt_to_use_cd         =>p_rec.cls_enrt_dt_to_use_cd
357  ,p_dflt_enrt_dt                  =>p_rec.dflt_enrt_dt
358  ,p_enrt_cvg_strt_dt_cd           =>p_rec.enrt_cvg_strt_dt_cd
359  ,p_rt_strt_dt_rl                 =>p_rec.rt_strt_dt_rl
360  ,p_enrt_cvg_end_dt_cd            =>p_rec.enrt_cvg_end_dt_cd
361  ,p_enrt_cvg_strt_dt_rl           =>p_rec.enrt_cvg_strt_dt_rl
362  ,p_enrt_cvg_end_dt_rl            =>p_rec.enrt_cvg_end_dt_rl
363  ,p_procg_end_dt                  =>p_rec.procg_end_dt
364  ,p_rt_strt_dt_cd                 =>p_rec.rt_strt_dt_cd
365  ,p_rt_end_dt_cd                  =>p_rec.rt_end_dt_cd
366  ,p_rt_end_dt_rl                  =>p_rec.rt_end_dt_rl
367  ,p_bdgt_upd_strt_dt              =>p_rec.bdgt_upd_strt_dt
368  ,p_bdgt_upd_end_dt               =>p_rec.bdgt_upd_end_dt
369  ,p_ws_upd_strt_dt                =>p_rec.ws_upd_strt_dt
370  ,p_ws_upd_end_dt                 =>p_rec.ws_upd_end_dt
371  ,p_dflt_ws_acc_cd                =>p_rec.dflt_ws_acc_cd
372  ,p_prsvr_bdgt_cd                 =>p_rec.prsvr_bdgt_cd
373  ,p_uses_bdgt_flag                =>p_rec.uses_bdgt_flag
374  ,p_auto_distr_flag               =>p_rec.auto_distr_flag
375  ,p_hrchy_to_use_cd               =>p_rec.hrchy_to_use_cd
376  ,p_pos_structure_version_id         =>p_rec.pos_structure_version_id
377  ,p_emp_interview_type_cd         =>p_rec.emp_interview_type_cd
378  ,p_wthn_yr_perd_id               =>p_rec.wthn_yr_perd_id
379  ,p_ler_id                        =>p_rec.ler_id
380  ,p_perf_revw_strt_dt             =>p_rec.perf_revw_strt_dt
381  ,p_asg_updt_eff_date             =>p_rec.asg_updt_eff_date
382  ,p_enp_attribute_category        =>p_rec.enp_attribute_category
383  ,p_enp_attribute1                =>p_rec.enp_attribute1
384  ,p_enp_attribute2                =>p_rec.enp_attribute2
385  ,p_enp_attribute3                =>p_rec.enp_attribute3
386  ,p_enp_attribute4                =>p_rec.enp_attribute4
387  ,p_enp_attribute5                =>p_rec.enp_attribute5
388  ,p_enp_attribute6                =>p_rec.enp_attribute6
389  ,p_enp_attribute7                =>p_rec.enp_attribute7
390  ,p_enp_attribute8                =>p_rec.enp_attribute8
391  ,p_enp_attribute9                =>p_rec.enp_attribute9
392  ,p_enp_attribute10               =>p_rec.enp_attribute10
393  ,p_enp_attribute11               =>p_rec.enp_attribute11
394  ,p_enp_attribute12               =>p_rec.enp_attribute12
395  ,p_enp_attribute13               =>p_rec.enp_attribute13
396  ,p_enp_attribute14               =>p_rec.enp_attribute14
397  ,p_enp_attribute15               =>p_rec.enp_attribute15
398  ,p_enp_attribute16               =>p_rec.enp_attribute16
399  ,p_enp_attribute17               =>p_rec.enp_attribute17
400  ,p_enp_attribute18               =>p_rec.enp_attribute18
401  ,p_enp_attribute19               =>p_rec.enp_attribute19
402  ,p_enp_attribute20               =>p_rec.enp_attribute20
403  ,p_enp_attribute21               =>p_rec.enp_attribute21
404  ,p_enp_attribute22               =>p_rec.enp_attribute22
405  ,p_enp_attribute23               =>p_rec.enp_attribute23
406  ,p_enp_attribute24               =>p_rec.enp_attribute24
410  ,p_enp_attribute28               =>p_rec.enp_attribute28
407  ,p_enp_attribute25               =>p_rec.enp_attribute25
408  ,p_enp_attribute26               =>p_rec.enp_attribute26
409  ,p_enp_attribute27               =>p_rec.enp_attribute27
411  ,p_enp_attribute29               =>p_rec.enp_attribute29
412  ,p_enp_attribute30               =>p_rec.enp_attribute30
413  ,p_enrt_perd_det_ovrlp_bckdt_cd  =>p_rec.enrt_perd_det_ovrlp_bckdt_cd
414     --cwb
415  ,p_data_freeze_date              =>p_rec.data_freeze_date
416  ,p_Sal_chg_reason_cd             =>p_rec.Sal_chg_reason_cd
417  ,p_Approval_mode_cd              =>p_rec.Approval_mode_cd
418  ,p_hrchy_ame_trn_cd              =>p_rec.hrchy_ame_trn_cd
419  ,p_hrchy_rl                      =>p_rec.hrchy_rl
420  ,p_hrchy_ame_app_id              =>p_rec.hrchy_ame_app_id
421   --
422  ,p_object_version_number         =>p_rec.object_version_number
423  ,p_effective_date                =>p_effective_date
424  ,p_reinstate_cd		  =>p_rec.reinstate_cd
425  ,p_reinstate_ovrdn_cd		  =>p_rec.reinstate_ovrdn_cd
426  ,p_defer_deenrol_flag            =>p_rec.defer_deenrol_flag
427       );
428     --
429   exception
430     --
431     when hr_api.cannot_find_prog_unit then
432       --
433       hr_api.cannot_find_prog_unit_error
434         (p_module_name => 'ben_enrt_perd'
435         ,p_hook_type   => 'AI');
436       --
437   end;
438   --
439   -- End of API User Hook for post_insert.
440   --
441   --
442   --
443   hr_utility.set_location(' Leaving:'||l_proc, 10);
444 End post_insert;
445 --
446 -- ----------------------------------------------------------------------------
447 -- |---------------------------------< ins >----------------------------------|
448 -- ----------------------------------------------------------------------------
449 Procedure ins
450   (
451   p_effective_date in date,
452   p_rec        in out nocopy ben_enp_shd.g_rec_type
453   ) is
454 --
455   l_proc  varchar2(72) := g_package||'ins';
456 --
457 Begin
458   hr_utility.set_location('Entering:'||l_proc, 5);
459   --
460   -- Call the supporting insert validate operations
461   --
462   ben_enp_bus.insert_validate(p_rec
463                              ,p_effective_date);
464   --
465   -- Call the supporting pre-insert operation
466   --
467   pre_insert(p_rec);
468   --
469   -- Insert the row
470   --
471   insert_dml(p_rec);
472   --
473   -- Call the supporting post-insert operation
474   --
475   post_insert(
476 p_effective_date,p_rec);
477 end ins;
478 --
479 -- ----------------------------------------------------------------------------
480 -- |---------------------------------< ins >----------------------------------|
481 -- ----------------------------------------------------------------------------
482 Procedure ins
483   (
484   p_effective_date in date,
485   p_enrt_perd_id                 out nocopy number,
486   p_business_group_id            in number,
487   p_yr_perd_id                   in number,
488   p_popl_enrt_typ_cycl_id        in number,
489   p_end_dt                       in date,
490   p_strt_dt                      in date,
491   p_asnd_lf_evt_dt               in date,
492   p_cls_enrt_dt_to_use_cd        in varchar2         ,
493   p_dflt_enrt_dt                 in date             ,
494   p_enrt_cvg_strt_dt_cd          in varchar2         ,
495   p_rt_strt_dt_rl                in number           ,
496   p_enrt_cvg_end_dt_cd           in varchar2         ,
497   p_enrt_cvg_strt_dt_rl          in number           ,
498   p_enrt_cvg_end_dt_rl           in number           ,
499   p_procg_end_dt                 in date,
500   p_rt_strt_dt_cd                in varchar2         ,
501   p_rt_end_dt_cd                 in varchar2         ,
502   p_rt_end_dt_rl                 in number           ,
503   p_bdgt_upd_strt_dt             in  date            ,
504   p_bdgt_upd_end_dt              in  date            ,
505   p_ws_upd_strt_dt               in  date            ,
506   p_ws_upd_end_dt                in  date            ,
507   p_dflt_ws_acc_cd               in  varchar2        ,
508   p_prsvr_bdgt_cd                in  varchar2        ,
509   p_uses_bdgt_flag               in  varchar2        ,
510   p_auto_distr_flag              in  varchar2        ,
511   p_hrchy_to_use_cd              in  varchar2        ,
512   p_pos_structure_version_id        in  number       ,
513   p_emp_interview_type_cd        in  varchar2        ,
514   p_wthn_yr_perd_id              in  number          ,
515   p_ler_id                       in  number          ,
516   p_perf_revw_strt_dt            in date             ,
517   p_asg_updt_eff_date            in date             ,
518   p_enp_attribute_category       in varchar2         ,
519   p_enp_attribute1               in varchar2         ,
520   p_enp_attribute2               in varchar2         ,
521   p_enp_attribute3               in varchar2         ,
522   p_enp_attribute4               in varchar2         ,
523   p_enp_attribute5               in varchar2         ,
524   p_enp_attribute6               in varchar2         ,
525   p_enp_attribute7               in varchar2         ,
526   p_enp_attribute8               in varchar2         ,
527   p_enp_attribute9               in varchar2         ,
528   p_enp_attribute10              in varchar2         ,
532   p_enp_attribute14              in varchar2         ,
529   p_enp_attribute11              in varchar2         ,
530   p_enp_attribute12              in varchar2         ,
531   p_enp_attribute13              in varchar2         ,
533   p_enp_attribute15              in varchar2         ,
534   p_enp_attribute16              in varchar2         ,
535   p_enp_attribute17              in varchar2         ,
536   p_enp_attribute18              in varchar2         ,
537   p_enp_attribute19              in varchar2         ,
538   p_enp_attribute20              in varchar2         ,
539   p_enp_attribute21              in varchar2         ,
540   p_enp_attribute22              in varchar2         ,
541   p_enp_attribute23              in varchar2         ,
542   p_enp_attribute24              in varchar2         ,
543   p_enp_attribute25              in varchar2         ,
544   p_enp_attribute26              in varchar2         ,
545   p_enp_attribute27              in varchar2         ,
546   p_enp_attribute28              in varchar2         ,
547   p_enp_attribute29              in varchar2         ,
548   p_enp_attribute30              in varchar2         ,
549   p_enrt_perd_det_ovrlp_bckdt_cd in varchar2         ,
550   --cwb
551   p_data_freeze_date               in  date    ,
552   p_Sal_chg_reason_cd              in  varchar2,
553   p_Approval_mode_cd               in  varchar2,
554   p_hrchy_ame_trn_cd               in  varchar2,
555   p_hrchy_rl                       in  number,
556   p_hrchy_ame_app_id               in  number,
557   --
558   p_object_version_number        out nocopy number
559   ,p_reinstate_cd		in varchar2
560   ,p_reinstate_ovrdn_cd	in varchar2
561   ,p_defer_deenrol_flag in varchar2
562   ) is
563 --
564   l_rec	  ben_enp_shd.g_rec_type;
565   l_proc  varchar2(72) := g_package||'ins';
566 --
567 Begin
568   hr_utility.set_location('Entering:'||l_proc, 5);
569   --
570   -- Call conversion function to turn arguments into the
571   -- p_rec structure.
572   --
573   l_rec :=
574   ben_enp_shd.convert_args
575   (
576   null,
577   p_business_group_id,
578   p_yr_perd_id,
579   p_popl_enrt_typ_cycl_id,
580   p_end_dt,
581   p_strt_dt,
582   p_asnd_lf_evt_dt,
583   p_cls_enrt_dt_to_use_cd,
584   p_dflt_enrt_dt,
585   p_enrt_cvg_strt_dt_cd,
586   p_rt_strt_dt_rl,
587   p_enrt_cvg_end_dt_cd,
588   p_enrt_cvg_strt_dt_rl,
589   p_enrt_cvg_end_dt_rl,
590   p_procg_end_dt,
591   p_rt_strt_dt_cd,
592   p_rt_end_dt_cd,
593   p_rt_end_dt_rl,
594   p_bdgt_upd_strt_dt,
595   p_bdgt_upd_end_dt,
596   p_ws_upd_strt_dt,
597   p_ws_upd_end_dt,
598   p_dflt_ws_acc_cd,
599   p_prsvr_bdgt_cd,
600   p_uses_bdgt_flag,
601   p_auto_distr_flag,
602   p_hrchy_to_use_cd,
603   p_pos_structure_version_id,
604   p_emp_interview_type_cd,
605   p_wthn_yr_perd_id,
606   p_ler_id,
607   p_perf_revw_strt_dt,
608   p_asg_updt_eff_date,
609   p_enp_attribute_category,
610   p_enp_attribute1,
611   p_enp_attribute2,
612   p_enp_attribute3,
613   p_enp_attribute4,
614   p_enp_attribute5,
615   p_enp_attribute6,
616   p_enp_attribute7,
617   p_enp_attribute8,
618   p_enp_attribute9,
619   p_enp_attribute10,
620   p_enp_attribute11,
621   p_enp_attribute12,
622   p_enp_attribute13,
623   p_enp_attribute14,
624   p_enp_attribute15,
625   p_enp_attribute16,
626   p_enp_attribute17,
627   p_enp_attribute18,
628   p_enp_attribute19,
629   p_enp_attribute20,
630   p_enp_attribute21,
631   p_enp_attribute22,
632   p_enp_attribute23,
633   p_enp_attribute24,
634   p_enp_attribute25,
635   p_enp_attribute26,
636   p_enp_attribute27,
637   p_enp_attribute28,
638   p_enp_attribute29,
639   p_enp_attribute30,
640   p_enrt_perd_det_ovrlp_bckdt_cd,
641   --cwb
642   p_data_freeze_date    ,
643   p_Sal_chg_reason_cd   ,
644   p_Approval_mode_cd    ,
645   p_hrchy_ame_trn_cd    ,
646   p_hrchy_rl            ,
647   p_hrchy_ame_app_id
648   , null              -- bug 4341773 :p_reinstate_cd was passed to object_version_number.
649   ,p_reinstate_cd
650   ,p_reinstate_ovrdn_cd
651   --
652   ,p_defer_deenrol_flag
653   );
654   --
655   -- Having converted the arguments into the ben_enp_rec
656   -- plsql record structure we call the corresponding record business process.
657   --
658   ins(
659     p_effective_date,l_rec);
660   --
661   -- As the primary key argument(s)
662   -- are specified as an OUT's we must set these values.
663   --
664   p_enrt_perd_id := l_rec.enrt_perd_id;
665   p_object_version_number := l_rec.object_version_number;
666   --
667   hr_utility.set_location(' Leaving:'||l_proc, 10);
668 End ins;
669 --
670 end ben_enp_ins;