1 Package Body ben_rts_ins as
2 /* $Header: bertsrhi.pkb 120.1 2006/01/09 14:37 maagrawa noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' ben_rts_ins.'; -- Global package name
9 g_debug boolean := hr_utility.debug_enabled;
10 --
11 -- The following global variables are only to be used by
12 -- the set_base_key_value and pre_insert procedures.
13 --
14 g_person_rate_id_i number default null;
15 --
16 -- ----------------------------------------------------------------------------
17 -- |------------------------< set_base_key_value >----------------------------|
18 -- ----------------------------------------------------------------------------
19 procedure set_base_key_value
20 (p_person_rate_id in number) is
21 --
22 l_proc varchar2(72) := g_package||'set_base_key_value';
23 --
24 Begin
25 if g_debug then
26 hr_utility.set_location('Entering:'||l_proc, 10);
27 end if;
28 --
29 ben_rts_ins.g_person_rate_id_i := p_person_rate_id;
30 --
31 if g_debug then
32 hr_utility.set_location(' Leaving:'||l_proc, 20);
33 end if;
34 End set_base_key_value;
35 --
36 --
37 -- ----------------------------------------------------------------------------
38 -- |------------------------------< insert_dml >------------------------------|
39 -- ----------------------------------------------------------------------------
40 -- {Start Of Comments}
41 --
42 -- Description:
43 -- This procedure controls the actual dml insert logic. The processing of
44 -- this procedure are as follows:
45 -- 1) Initialise the object_version_number to 1 if the object_version_number
46 -- is defined as an attribute for this entity.
47 -- 2) To set and unset the g_api_dml status as required (as we are about to
48 -- perform dml).
49 -- 3) To insert the row into the schema.
50 -- 4) To trap any constraint violations that may have occurred.
51 -- 5) To raise any other errors.
52 --
53 -- Prerequisites:
54 -- This is an internal private procedure which must be called from the ins
55 -- procedure and must have all mandatory attributes set (except the
56 -- object_version_number which is initialised within this procedure).
57 --
58 -- In Parameters:
59 -- A Pl/Sql record structre.
60 --
61 -- Post Success:
62 -- The specified row will be inserted into the schema.
63 --
64 -- Post Failure:
65 -- On the insert dml failure it is important to note that we always reset the
66 -- g_api_dml status to false.
67 -- If a check, unique or parent integrity constraint violation is raised the
68 -- constraint_error procedure will be called.
69 -- If any other error is reported, the error will be raised after the
70 -- g_api_dml status is reset.
71 --
72 -- Developer Implementation Notes:
73 -- None.
74 --
75 -- Access Status:
76 -- Internal Row Handler Use Only.
77 --
78 -- {End Of Comments}
79 -- ----------------------------------------------------------------------------
80 Procedure insert_dml
81 (p_rec in out nocopy ben_rts_shd.g_rec_type
82 ) is
83 --
84 l_proc varchar2(72) := g_package||'insert_dml';
85 --
86 Begin
87 if g_debug then
88 hr_utility.set_location('Entering:'||l_proc, 5);
89 end if;
90 p_rec.object_version_number := 1; -- Initialise the object version
91 --
92 ben_rts_shd.g_api_dml := true; -- Set the api dml status
93 --
94 -- Insert the row into: ben_cwb_person_rates
95 --
96 insert into ben_cwb_person_rates
97 (person_rate_id
98 ,group_per_in_ler_id
99 ,pl_id
100 ,oipl_id
101 ,group_pl_id
102 ,group_oipl_id
103 ,lf_evt_ocrd_dt
104 ,person_id
105 ,assignment_id
106 ,elig_flag
107 ,ws_val
108 ,ws_mn_val
109 ,ws_mx_val
110 ,ws_incr_val
111 ,elig_sal_val
112 ,stat_sal_val
113 ,oth_comp_val
114 ,tot_comp_val
115 ,misc1_val
116 ,misc2_val
117 ,misc3_val
118 ,rec_val
119 ,rec_mn_val
120 ,rec_mx_val
121 ,rec_incr_val
122 ,ws_val_last_upd_date
123 ,ws_val_last_upd_by
124 ,pay_proposal_id
125 ,element_entry_value_id
126 ,inelig_rsn_cd
127 ,elig_ovrid_dt
128 ,elig_ovrid_person_id
129 ,copy_dist_bdgt_val
130 ,copy_ws_bdgt_val
131 ,copy_rsrv_val
132 ,copy_dist_bdgt_mn_val
133 ,copy_dist_bdgt_mx_val
134 ,copy_dist_bdgt_incr_val
135 ,copy_ws_bdgt_mn_val
136 ,copy_ws_bdgt_mx_val
137 ,copy_ws_bdgt_incr_val
138 ,copy_rsrv_mn_val
139 ,copy_rsrv_mx_val
140 ,copy_rsrv_incr_val
141 ,copy_dist_bdgt_iss_val
142 ,copy_ws_bdgt_iss_val
143 ,copy_dist_bdgt_iss_date
144 ,copy_ws_bdgt_iss_date
145 ,comp_posting_date
146 ,ws_rt_start_date
147 ,currency
148 ,object_version_number
149 )
150 Values
151 (p_rec.person_rate_id
152 ,p_rec.group_per_in_ler_id
153 ,p_rec.pl_id
154 ,p_rec.oipl_id
155 ,p_rec.group_pl_id
156 ,p_rec.group_oipl_id
157 ,p_rec.lf_evt_ocrd_dt
158 ,p_rec.person_id
159 ,p_rec.assignment_id
160 ,p_rec.elig_flag
161 ,p_rec.ws_val
162 ,p_rec.ws_mn_val
163 ,p_rec.ws_mx_val
164 ,p_rec.ws_incr_val
165 ,p_rec.elig_sal_val
166 ,p_rec.stat_sal_val
167 ,p_rec.oth_comp_val
168 ,p_rec.tot_comp_val
169 ,p_rec.misc1_val
170 ,p_rec.misc2_val
171 ,p_rec.misc3_val
172 ,p_rec.rec_val
173 ,p_rec.rec_mn_val
174 ,p_rec.rec_mx_val
175 ,p_rec.rec_incr_val
176 ,p_rec.ws_val_last_upd_date
177 ,p_rec.ws_val_last_upd_by
178 ,p_rec.pay_proposal_id
179 ,p_rec.element_entry_value_id
180 ,p_rec.inelig_rsn_cd
181 ,p_rec.elig_ovrid_dt
182 ,p_rec.elig_ovrid_person_id
183 ,p_rec.copy_dist_bdgt_val
184 ,p_rec.copy_ws_bdgt_val
185 ,p_rec.copy_rsrv_val
186 ,p_rec.copy_dist_bdgt_mn_val
187 ,p_rec.copy_dist_bdgt_mx_val
188 ,p_rec.copy_dist_bdgt_incr_val
189 ,p_rec.copy_ws_bdgt_mn_val
190 ,p_rec.copy_ws_bdgt_mx_val
191 ,p_rec.copy_ws_bdgt_incr_val
192 ,p_rec.copy_rsrv_mn_val
193 ,p_rec.copy_rsrv_mx_val
194 ,p_rec.copy_rsrv_incr_val
195 ,p_rec.copy_dist_bdgt_iss_val
196 ,p_rec.copy_ws_bdgt_iss_val
197 ,p_rec.copy_dist_bdgt_iss_date
198 ,p_rec.copy_ws_bdgt_iss_date
199 ,p_rec.comp_posting_date
200 ,p_rec.ws_rt_start_date
201 ,p_rec.currency
202 ,p_rec.object_version_number
203 );
204 --
205 ben_rts_shd.g_api_dml := false; -- Unset the api dml status
206 --
207 if g_debug then
208 hr_utility.set_location(' Leaving:'||l_proc, 10);
209 end if;
210 Exception
211 When hr_api.check_integrity_violated Then
212 -- A check constraint has been violated
213 ben_rts_shd.g_api_dml := false; -- Unset the api dml status
214 ben_rts_shd.constraint_error
215 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
216 When hr_api.parent_integrity_violated Then
217 -- Parent integrity has been violated
218 ben_rts_shd.g_api_dml := false; -- Unset the api dml status
219 ben_rts_shd.constraint_error
220 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
221 When hr_api.unique_integrity_violated Then
222 -- Unique integrity has been violated
223 ben_rts_shd.g_api_dml := false; -- Unset the api dml status
224 ben_rts_shd.constraint_error
225 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
226 When Others Then
227 ben_rts_shd.g_api_dml := false; -- Unset the api dml status
228 Raise;
229 End insert_dml;
230 --
231 -- ----------------------------------------------------------------------------
232 -- |------------------------------< pre_insert >------------------------------|
233 -- ----------------------------------------------------------------------------
234 -- {Start Of Comments}
235 --
236 -- Description:
237 -- This private procedure contains any processing which is required before
238 -- the insert dml. Presently, if the entity has a corresponding primary
239 -- key which is maintained by an associating sequence, the primary key for
240 -- the entity will be populated with the next sequence value in
241 -- preparation for the insert dml.
242 --
243 -- Prerequisites:
244 -- This is an internal procedure which is called from the ins procedure.
245 --
246 -- In Parameters:
247 -- A Pl/Sql record structure.
248 --
249 -- Post Success:
250 -- Processing continues.
251 --
252 -- Post Failure:
253 -- If an error has occurred, an error message and exception will be raised
254 -- but not handled.
255 --
256 -- Developer Implementation Notes:
257 -- Any pre-processing required before the insert dml is issued should be
258 -- coded within this procedure. As stated above, a good example is the
259 -- generation of a primary key number via a corresponding sequence.
260 -- It is important to note that any 3rd party maintenance should be reviewed
261 -- before placing in this procedure.
262 --
263 -- Access Status:
264 -- Internal Row Handler Use Only.
265 --
266 -- {End Of Comments}
267 -- ----------------------------------------------------------------------------
268 Procedure pre_insert
269 (p_rec in out nocopy ben_rts_shd.g_rec_type
270 ) is
271 --
272 Cursor C_Sel1 is select ben_cwb_person_rates_s.nextval from sys.dual;
273 --
274 Cursor C_Sel2 is
275 Select null
276 from ben_cwb_person_rates
277 where person_rate_id =
278 ben_rts_ins.g_person_rate_id_i;
279 --
280 l_proc varchar2(72) := g_package||'pre_insert';
281 l_exists varchar2(1);
282 --
283 Begin
284 if g_debug then
285 hr_utility.set_location('Entering:'||l_proc, 5);
286 end if;
287 --
288 If (ben_rts_ins.g_person_rate_id_i is not null) Then
289 --
290 -- Verify registered primary key values not already in use
291 --
292 Open C_Sel2;
293 Fetch C_Sel2 into l_exists;
294 If C_Sel2%found Then
295 Close C_Sel2;
296 --
297 -- The primary key values are already in use.
298 --
299 fnd_message.set_name('PER','PER_289391_KEY_ALREADY_USED');
300 fnd_message.set_token('TABLE_NAME','ben_cwb_person_rates');
301 fnd_message.raise_error;
302 End If;
303 Close C_Sel2;
304 --
305 -- Use registered key values and clear globals
306 --
307 p_rec.person_rate_id :=
308 ben_rts_ins.g_person_rate_id_i;
309 ben_rts_ins.g_person_rate_id_i := null;
310 Else
311 --
312 -- No registerd key values, so select the next sequence number
313 --
314 --
315 -- Select the next sequence number
316 --
317 Open C_Sel1;
318 Fetch C_Sel1 Into p_rec.person_rate_id;
319 Close C_Sel1;
320 End If;
321 --
322 if g_debug then
323 hr_utility.set_location(' Leaving:'||l_proc, 10);
324 end if;
325 End pre_insert;
326 --
327 -- ----------------------------------------------------------------------------
328 -- |-----------------------------< post_insert >------------------------------|
329 -- ----------------------------------------------------------------------------
330 -- {Start Of Comments}
331 --
332 -- Description:
333 -- This private procedure contains any processing which is required after
334 -- the insert dml.
335 --
336 -- Prerequisites:
337 -- This is an internal procedure which is called from the ins procedure.
338 --
339 -- In Parameters:
340 -- A Pl/Sql record structre.
341 --
342 -- Post Success:
343 -- Processing continues.
344 --
345 -- Post Failure:
346 -- If an error has occurred, an error message and exception will be raised
347 -- but not handled.
348 --
349 -- Developer Implementation Notes:
350 -- Any post-processing required after the insert dml is issued should be
351 -- coded within this procedure. It is important to note that any 3rd party
352 -- maintenance should be reviewed before placing in this procedure.
353 --
354 -- Access Status:
355 -- Internal Row Handler Use Only.
356 --
357 -- {End Of Comments}
358 -- ----------------------------------------------------------------------------
359 Procedure post_insert
360 (p_rec in ben_rts_shd.g_rec_type
361 ) is
362 --
363 l_proc varchar2(72) := g_package||'post_insert';
364 --
365 Begin
366 if g_debug then
367 hr_utility.set_location('Entering:'||l_proc, 5);
368 end if;
369 begin
370 --
371 ben_rts_rki.after_insert
372 (p_person_rate_id
373 => p_rec.person_rate_id
374 ,p_group_per_in_ler_id
375 => p_rec.group_per_in_ler_id
376 ,p_pl_id
377 => p_rec.pl_id
378 ,p_oipl_id
379 => p_rec.oipl_id
380 ,p_group_pl_id
381 => p_rec.group_pl_id
382 ,p_group_oipl_id
383 => p_rec.group_oipl_id
384 ,p_lf_evt_ocrd_dt
385 => p_rec.lf_evt_ocrd_dt
386 ,p_person_id
387 => p_rec.person_id
388 ,p_assignment_id
389 => p_rec.assignment_id
390 ,p_elig_flag
391 => p_rec.elig_flag
392 ,p_ws_val
393 => p_rec.ws_val
394 ,p_ws_mn_val
395 => p_rec.ws_mn_val
396 ,p_ws_mx_val
397 => p_rec.ws_mx_val
398 ,p_ws_incr_val
399 => p_rec.ws_incr_val
400 ,p_elig_sal_val
401 => p_rec.elig_sal_val
402 ,p_stat_sal_val
403 => p_rec.stat_sal_val
404 ,p_oth_comp_val
405 => p_rec.oth_comp_val
406 ,p_tot_comp_val
407 => p_rec.tot_comp_val
408 ,p_misc1_val
409 => p_rec.misc1_val
410 ,p_misc2_val
411 => p_rec.misc2_val
412 ,p_misc3_val
413 => p_rec.misc3_val
414 ,p_rec_val
415 => p_rec.rec_val
416 ,p_rec_mn_val
417 => p_rec.rec_mn_val
418 ,p_rec_mx_val
419 => p_rec.rec_mx_val
420 ,p_rec_incr_val
421 => p_rec.rec_incr_val
422 ,p_ws_val_last_upd_date
423 => p_rec.ws_val_last_upd_date
424 ,p_ws_val_last_upd_by
425 => p_rec.ws_val_last_upd_by
426 ,p_pay_proposal_id
427 => p_rec.pay_proposal_id
428 ,p_element_entry_value_id
429 => p_rec.element_entry_value_id
430 ,p_inelig_rsn_cd
431 => p_rec.inelig_rsn_cd
432 ,p_elig_ovrid_dt
433 => p_rec.elig_ovrid_dt
434 ,p_elig_ovrid_person_id
435 => p_rec.elig_ovrid_person_id
436 ,p_copy_dist_bdgt_val
437 => p_rec.copy_dist_bdgt_val
438 ,p_copy_ws_bdgt_val
439 => p_rec.copy_ws_bdgt_val
440 ,p_copy_rsrv_val
441 => p_rec.copy_rsrv_val
442 ,p_copy_dist_bdgt_mn_val
443 => p_rec.copy_dist_bdgt_mn_val
444 ,p_copy_dist_bdgt_mx_val
445 => p_rec.copy_dist_bdgt_mx_val
446 ,p_copy_dist_bdgt_incr_val
447 => p_rec.copy_dist_bdgt_incr_val
448 ,p_copy_ws_bdgt_mn_val
449 => p_rec.copy_ws_bdgt_mn_val
450 ,p_copy_ws_bdgt_mx_val
451 => p_rec.copy_ws_bdgt_mx_val
452 ,p_copy_ws_bdgt_incr_val
453 => p_rec.copy_ws_bdgt_incr_val
454 ,p_copy_rsrv_mn_val
455 => p_rec.copy_rsrv_mn_val
456 ,p_copy_rsrv_mx_val
457 => p_rec.copy_rsrv_mx_val
458 ,p_copy_rsrv_incr_val
459 => p_rec.copy_rsrv_incr_val
460 ,p_copy_dist_bdgt_iss_val
461 => p_rec.copy_dist_bdgt_iss_val
462 ,p_copy_ws_bdgt_iss_val
463 => p_rec.copy_ws_bdgt_iss_val
464 ,p_copy_dist_bdgt_iss_date
465 => p_rec.copy_dist_bdgt_iss_date
466 ,p_copy_ws_bdgt_iss_date
467 => p_rec.copy_ws_bdgt_iss_date
468 ,p_comp_posting_date
469 => p_rec.comp_posting_date
470 ,p_ws_rt_start_date
471 => p_rec.ws_rt_start_date
472 ,p_currency
473 => p_rec.currency
474 ,p_object_version_number
475 => p_rec.object_version_number
476 );
477 --
478 exception
479 --
480 when hr_api.cannot_find_prog_unit then
481 --
482 hr_api.cannot_find_prog_unit_error
483 (p_module_name => 'BEN_CWB_PERSON_RATES'
484 ,p_hook_type => 'AI');
485 --
486 end;
487 --
488 if g_debug then
489 hr_utility.set_location(' Leaving:'||l_proc, 10);
490 end if;
491 End post_insert;
492 --
493 -- ----------------------------------------------------------------------------
494 -- |---------------------------------< ins >----------------------------------|
495 -- ----------------------------------------------------------------------------
496 Procedure ins
497 (p_rec in out nocopy ben_rts_shd.g_rec_type
498 ) is
499 --
500 l_proc varchar2(72) := g_package||'ins';
501 --
502 Begin
503 if g_debug then
504 hr_utility.set_location('Entering:'||l_proc, 5);
505 end if;
506 --
507 -- Call the supporting insert validate operations
508 --
509 ben_rts_bus.insert_validate
510 (p_rec
511 );
512 --
513 -- Call to raise any errors on multi-message list
514 hr_multi_message.end_validation_set;
515 --
516 -- Call the supporting pre-insert operation
517 --
518 ben_rts_ins.pre_insert(p_rec);
519 --
520 -- Insert the row
521 --
522 ben_rts_ins.insert_dml(p_rec);
523 --
524 -- Call the supporting post-insert operation
525 --
526 ben_rts_ins.post_insert
527 (p_rec
528 );
529 --
530 -- Call to raise any errors on multi-message list
531 hr_multi_message.end_validation_set;
532 --
533 if g_debug then
534 hr_utility.set_location('Leaving:'||l_proc, 20);
535 end if;
536 end ins;
537 --
538 -- ----------------------------------------------------------------------------
539 -- |---------------------------------< ins >----------------------------------|
540 -- ----------------------------------------------------------------------------
541 Procedure ins
542 (p_group_per_in_ler_id in number
543 ,p_pl_id in number
544 ,p_oipl_id in number
545 ,p_group_pl_id in number
546 ,p_group_oipl_id in number
547 ,p_lf_evt_ocrd_dt in date default null
548 ,p_person_id in number default null
549 ,p_assignment_id in number default null
550 ,p_elig_flag in varchar2 default null
551 ,p_ws_val in number default null
552 ,p_ws_mn_val in number default null
553 ,p_ws_mx_val in number default null
554 ,p_ws_incr_val in number default null
555 ,p_elig_sal_val in number default null
556 ,p_stat_sal_val in number default null
557 ,p_oth_comp_val in number default null
558 ,p_tot_comp_val in number default null
559 ,p_misc1_val in number default null
560 ,p_misc2_val in number default null
561 ,p_misc3_val in number default null
562 ,p_rec_val in number default null
563 ,p_rec_mn_val in number default null
564 ,p_rec_mx_val in number default null
565 ,p_rec_incr_val in number default null
566 ,p_ws_val_last_upd_date in date default null
567 ,p_ws_val_last_upd_by in number default null
568 ,p_pay_proposal_id in number default null
569 ,p_element_entry_value_id in number default null
570 ,p_inelig_rsn_cd in varchar2 default null
571 ,p_elig_ovrid_dt in date default null
572 ,p_elig_ovrid_person_id in number default null
573 ,p_copy_dist_bdgt_val in number default null
574 ,p_copy_ws_bdgt_val in number default null
575 ,p_copy_rsrv_val in number default null
576 ,p_copy_dist_bdgt_mn_val in number default null
577 ,p_copy_dist_bdgt_mx_val in number default null
578 ,p_copy_dist_bdgt_incr_val in number default null
579 ,p_copy_ws_bdgt_mn_val in number default null
580 ,p_copy_ws_bdgt_mx_val in number default null
581 ,p_copy_ws_bdgt_incr_val in number default null
582 ,p_copy_rsrv_mn_val in number default null
583 ,p_copy_rsrv_mx_val in number default null
584 ,p_copy_rsrv_incr_val in number default null
585 ,p_copy_dist_bdgt_iss_val in number default null
586 ,p_copy_ws_bdgt_iss_val in number default null
587 ,p_copy_dist_bdgt_iss_date in date default null
588 ,p_copy_ws_bdgt_iss_date in date default null
589 ,p_comp_posting_date in date default null
590 ,p_ws_rt_start_date in date default null
591 ,p_currency in varchar2 default null
592 ,p_person_rate_id out nocopy number
593 ,p_object_version_number out nocopy number
594 ) is
595 --
596 l_rec ben_rts_shd.g_rec_type;
597 l_proc varchar2(72) := g_package||'ins';
598 --
599 Begin
600 if g_debug then
601 hr_utility.set_location('Entering:'||l_proc, 5);
602 end if;
603 --
604 -- Call conversion function to turn arguments into the
605 -- p_rec structure.
606 --
607 l_rec :=
608 ben_rts_shd.convert_args
609 (null
610 ,p_group_per_in_ler_id
611 ,p_pl_id
612 ,p_oipl_id
613 ,p_group_pl_id
614 ,p_group_oipl_id
615 ,p_lf_evt_ocrd_dt
616 ,p_person_id
617 ,p_assignment_id
618 ,p_elig_flag
619 ,p_ws_val
620 ,p_ws_mn_val
621 ,p_ws_mx_val
622 ,p_ws_incr_val
623 ,p_elig_sal_val
624 ,p_stat_sal_val
625 ,p_oth_comp_val
626 ,p_tot_comp_val
627 ,p_misc1_val
628 ,p_misc2_val
629 ,p_misc3_val
630 ,p_rec_val
631 ,p_rec_mn_val
632 ,p_rec_mx_val
633 ,p_rec_incr_val
634 ,p_ws_val_last_upd_date
635 ,p_ws_val_last_upd_by
636 ,p_pay_proposal_id
637 ,p_element_entry_value_id
638 ,p_inelig_rsn_cd
639 ,p_elig_ovrid_dt
640 ,p_elig_ovrid_person_id
641 ,p_copy_dist_bdgt_val
642 ,p_copy_ws_bdgt_val
643 ,p_copy_rsrv_val
644 ,p_copy_dist_bdgt_mn_val
645 ,p_copy_dist_bdgt_mx_val
646 ,p_copy_dist_bdgt_incr_val
647 ,p_copy_ws_bdgt_mn_val
648 ,p_copy_ws_bdgt_mx_val
649 ,p_copy_ws_bdgt_incr_val
650 ,p_copy_rsrv_mn_val
651 ,p_copy_rsrv_mx_val
652 ,p_copy_rsrv_incr_val
653 ,p_copy_dist_bdgt_iss_val
654 ,p_copy_ws_bdgt_iss_val
655 ,p_copy_dist_bdgt_iss_date
656 ,p_copy_ws_bdgt_iss_date
657 ,p_comp_posting_date
658 ,p_ws_rt_start_date
659 ,p_currency
660 ,null
661 );
662 --
663 -- Having converted the arguments into the ben_rts_rec
664 -- plsql record structure we call the corresponding record business process.
665 --
666 ben_rts_ins.ins
667 (l_rec
668 );
669 --
670 --
671 -- As the primary key argument(s)
672 -- are specified as an OUT's we must set these values.
673 --
674 p_person_rate_id := l_rec.person_rate_id;
675 p_object_version_number := l_rec.object_version_number;
676
677 --
678 if g_debug then
679 hr_utility.set_location(' Leaving:'||l_proc, 10);
680 end if;
681 End ins;
682 --
683 end ben_rts_ins;