DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_POPULATE_RBV

Source


1 package body ben_populate_rbv as
2 /* $Header: benrbvpo.pkb 120.0 2005/05/28 09:25:06 appldev noship $ */
3 --
4 g_package varchar2(50) := 'ben_populate_rbv.';
5 --
6 Type t_ppl_tab   is table of ben_ptnl_ler_for_per%rowtype     index by binary_integer;
7 Type t_pil_tab   is table of ben_per_in_ler%rowtype     index by binary_integer;
8 Type t_crp_tab   is table of ben_cbr_per_in_ler%rowtype     index by binary_integer;
9 Type t_cqb_tab   is table of ben_cbr_quald_bnf%rowtype     index by binary_integer;
10 Type t_pep_tab   is table of ben_elig_per_f%rowtype     index by binary_integer;
11 Type t_epo_tab   is table of ben_elig_per_opt_f%rowtype index by binary_integer;
12 Type t_epe_tab   is table of ben_elig_per_elctbl_chc%rowtype index by binary_integer;
13 Type t_pel_tab   is table of ben_pil_elctbl_chc_popl%rowtype index by binary_integer;
14 Type t_ecc_tab   is table of ben_elctbl_chc_ctfn%rowtype index by binary_integer;
15 Type t_egd_tab   is table of ben_elig_dpnt%rowtype index by binary_integer;
16 Type t_pdp_tab   is table of ben_elig_cvrd_dpnt_f%rowtype index by binary_integer;
17 Type t_enb_tab   is table of ben_enrt_bnft%rowtype index by binary_integer;
18 Type t_epr_tab   is table of ben_enrt_prem%rowtype index by binary_integer;
19 Type t_ecr_tab   is table of ben_enrt_rt%rowtype index by binary_integer;
20 Type t_prv_tab   is table of ben_prtt_rt_val%rowtype index by binary_integer;
21 Type t_pen_tab   is table of ben_prtt_enrt_rslt_f%rowtype index by binary_integer;
22 Type t_pcm_tab   is table of ben_per_cm_f%rowtype index by binary_integer;
23 Type t_bpl_tab   is table of ben_bnft_prvdd_ldgr_f%rowtype index by binary_integer;
24 Type t_cwbmh_tab is table of ben_cwb_mgr_hrchy%rowtype index by binary_integer;
25 --
26 PROCEDURE write_ppl_rbvs
27   (p_benefit_action_id in     number
28   ,p_person_action_id  in     number
29   ,p_ppl_set           in     t_ppl_tab
30   )
31 is
32   --
33   PRAGMA AUTONOMOUS_TRANSACTION;
34   --
35 begin
36   --
37   if p_ppl_set.count > 0 then
38     --
39     for elenum in p_ppl_set.first..p_ppl_set.last
40     loop
41       --
42       insert into ben_ptnl_ler_for_per_rbv
43         (ptnl_ler_for_per_id
44         ,business_group_id
45         ,lf_evt_ocrd_dt
46         ,ler_id
47         ,ptnl_ler_for_per_stat_cd
48         ,ptnl_ler_for_per_src_cd
49         ,ntfn_dt
50         ,person_id
51         ,dtctd_dt
52         ,procd_dt
53         ,unprocd_dt
54         ,voidd_dt
55         ,mnl_dt
56         ,enrt_perd_id
57         ,last_update_date
58         ,last_updated_by
59         ,last_update_login
60         ,created_by
61         ,creation_date
62         ,request_id
63         ,program_application_id
64         ,program_id
65         ,program_update_date
66         ,object_version_number
67         ,mnlo_dt
71         )
68         ,csd_by_ptnl_ler_for_per_id
69         ,benefit_action_id
70         ,person_action_id
72       values
73         (p_ppl_set(elenum).ptnl_ler_for_per_id
74         ,p_ppl_set(elenum).business_group_id
75         ,p_ppl_set(elenum).lf_evt_ocrd_dt
76         ,p_ppl_set(elenum).ler_id
77         ,p_ppl_set(elenum).ptnl_ler_for_per_stat_cd
78         ,p_ppl_set(elenum).ptnl_ler_for_per_src_cd
79         ,p_ppl_set(elenum).ntfn_dt
80         ,p_ppl_set(elenum).person_id
81         ,p_ppl_set(elenum).dtctd_dt
82         ,p_ppl_set(elenum).procd_dt
83         ,p_ppl_set(elenum).unprocd_dt
84         ,p_ppl_set(elenum).voidd_dt
85         ,p_ppl_set(elenum).mnl_dt
86         ,p_ppl_set(elenum).enrt_perd_id
87         ,p_ppl_set(elenum).last_update_date
88         ,p_ppl_set(elenum).last_updated_by
89         ,p_ppl_set(elenum).last_update_login
90         ,p_ppl_set(elenum).created_by
91         ,p_ppl_set(elenum).creation_date
92         ,p_ppl_set(elenum).request_id
93         ,p_ppl_set(elenum).program_application_id
94         ,p_ppl_set(elenum).program_id
95         ,p_ppl_set(elenum).program_update_date
96         ,p_ppl_set(elenum).object_version_number
97         ,p_ppl_set(elenum).mnlo_dt
98         ,p_ppl_set(elenum).csd_by_ptnl_ler_for_per_id
99         ,p_benefit_action_id
100         ,p_person_action_id
101         );
102       --
103     end loop;
104     --
105   end if;
106   --
107   commit;
108   --
109 end write_ppl_rbvs;
110 --
111 PROCEDURE write_pil_rbvs
112   (p_benefit_action_id in     number
113   ,p_person_action_id  in     number
114   ,p_pil_set           in     t_pil_tab
115   )
116 is
117   --
118   PRAGMA AUTONOMOUS_TRANSACTION;
119   --
120 begin
121   --
122   if p_pil_set.count > 0 then
123     --
124     for elenum in p_pil_set.first ..p_pil_set.last
125     loop
126       --
127       insert into ben_per_in_ler_rbv
128         (per_in_ler_id
129         ,per_in_ler_stat_cd
130         ,prvs_stat_cd
131         ,lf_evt_ocrd_dt
132         ,procd_dt
133         ,strtd_dt
134         ,voidd_dt
135         ,bckt_dt
136         ,clsd_dt
137         ,ntfn_dt
138         ,ptnl_ler_for_per_id
139         ,bckt_per_in_ler_id
140         ,ler_id
141         ,person_id
142         ,business_group_id
143         ,pil_attribute_category
144         ,pil_attribute1
145         ,pil_attribute2
146         ,pil_attribute3
147         ,pil_attribute4
148         ,pil_attribute5
149         ,pil_attribute6
150         ,pil_attribute7
151         ,pil_attribute8
152         ,pil_attribute9
153         ,pil_attribute10
154         ,pil_attribute11
155         ,pil_attribute12
156         ,pil_attribute13
157         ,pil_attribute14
158         ,pil_attribute15
159         ,pil_attribute16
160         ,pil_attribute17
161         ,pil_attribute18
162         ,pil_attribute19
163         ,pil_attribute20
164         ,pil_attribute21
165         ,pil_attribute22
166         ,pil_attribute23
167         ,pil_attribute24
168         ,pil_attribute25
169         ,pil_attribute26
170         ,pil_attribute27
171         ,pil_attribute28
172         ,pil_attribute29
173         ,pil_attribute30
174         ,request_id
175         ,program_application_id
176         ,program_id
177         ,program_update_date
178         ,object_version_number
179         ,benefit_action_id
180         ,person_action_id
181         )
182       values
183         (p_pil_set(elenum).per_in_ler_id
184         ,p_pil_set(elenum).per_in_ler_stat_cd
185         ,p_pil_set(elenum).prvs_stat_cd
186         ,p_pil_set(elenum).lf_evt_ocrd_dt
187         ,p_pil_set(elenum).procd_dt
188         ,p_pil_set(elenum).strtd_dt
189         ,p_pil_set(elenum).voidd_dt
190         ,p_pil_set(elenum).bckt_dt
191         ,p_pil_set(elenum).clsd_dt
192         ,p_pil_set(elenum).ntfn_dt
193         ,p_pil_set(elenum).ptnl_ler_for_per_id
194         ,p_pil_set(elenum).bckt_per_in_ler_id
195         ,p_pil_set(elenum).ler_id
196         ,p_pil_set(elenum).person_id
197         ,p_pil_set(elenum).business_group_id
198         ,p_pil_set(elenum).pil_attribute_category
199         ,p_pil_set(elenum).pil_attribute1
200         ,p_pil_set(elenum).pil_attribute2
201         ,p_pil_set(elenum).pil_attribute3
202         ,p_pil_set(elenum).pil_attribute4
203         ,p_pil_set(elenum).pil_attribute5
204         ,p_pil_set(elenum).pil_attribute6
205         ,p_pil_set(elenum).pil_attribute7
206         ,p_pil_set(elenum).pil_attribute8
207         ,p_pil_set(elenum).pil_attribute9
208         ,p_pil_set(elenum).pil_attribute10
209         ,p_pil_set(elenum).pil_attribute11
210         ,p_pil_set(elenum).pil_attribute12
211         ,p_pil_set(elenum).pil_attribute13
212         ,p_pil_set(elenum).pil_attribute14
213         ,p_pil_set(elenum).pil_attribute15
214         ,p_pil_set(elenum).pil_attribute16
215         ,p_pil_set(elenum).pil_attribute17
216         ,p_pil_set(elenum).pil_attribute18
217         ,p_pil_set(elenum).pil_attribute19
218         ,p_pil_set(elenum).pil_attribute20
219         ,p_pil_set(elenum).pil_attribute21
220         ,p_pil_set(elenum).pil_attribute22
221         ,p_pil_set(elenum).pil_attribute23
222         ,p_pil_set(elenum).pil_attribute24
223         ,p_pil_set(elenum).pil_attribute25
224         ,p_pil_set(elenum).pil_attribute26
228         ,p_pil_set(elenum).pil_attribute30
225         ,p_pil_set(elenum).pil_attribute27
226         ,p_pil_set(elenum).pil_attribute28
227         ,p_pil_set(elenum).pil_attribute29
229         ,p_pil_set(elenum).request_id
230         ,p_pil_set(elenum).program_application_id
231         ,p_pil_set(elenum).program_id
232         ,p_pil_set(elenum).program_update_date
233         ,p_pil_set(elenum).object_version_number
234         ,p_benefit_action_id
235         ,p_person_action_id
236         );
237       --
238     end loop;
239     --
240   end if;
241   --
242   commit;
243   --
244 end write_pil_rbvs;
245 --
246 PROCEDURE write_crp_rbvs
247   (p_benefit_action_id in     number
248   ,p_person_action_id  in     number
249   ,p_crp_set           in     t_crp_tab
250   )
251 is
252   --
253   PRAGMA AUTONOMOUS_TRANSACTION;
254   --
255 begin
256   --
257   if p_crp_set.count > 0 then
258     --
259     for elenum in p_crp_set.first ..p_crp_set.last
260     loop
261       --
262       insert into ben_cbr_per_in_ler_rbv
263         (cbr_per_in_ler_id
264         ,init_evt_flag
265         ,per_in_ler_id
266         ,cbr_quald_bnf_id
267         ,business_group_id
268         ,crp_attribute_category
269         ,crp_attribute1
270         ,crp_attribute2
271         ,crp_attribute3
272         ,crp_attribute4
273         ,crp_attribute5
274         ,crp_attribute6
275         ,crp_attribute7
276         ,crp_attribute8
277         ,crp_attribute9
278         ,crp_attribute10
279         ,crp_attribute11
280         ,crp_attribute12
281         ,crp_attribute13
282         ,crp_attribute14
283         ,crp_attribute15
284         ,crp_attribute16
285         ,crp_attribute17
286         ,crp_attribute18
287         ,crp_attribute19
288         ,crp_attribute20
289         ,crp_attribute21
290         ,crp_attribute22
291         ,crp_attribute23
292         ,crp_attribute24
293         ,crp_attribute25
294         ,crp_attribute26
295         ,crp_attribute27
296         ,crp_attribute28
297         ,crp_attribute29
298         ,crp_attribute30
299         ,last_update_date
300         ,last_updated_by
301         ,last_update_login
302         ,created_by
303         ,creation_date
304         ,object_version_number
305         ,cnt_num
306         ,prvs_elig_perd_end_dt
307         ,benefit_action_id
308         ,person_action_id
309         )
310       values
311         (p_crp_set(elenum).cbr_per_in_ler_id
312         ,p_crp_set(elenum).init_evt_flag
313         ,p_crp_set(elenum).per_in_ler_id
314         ,p_crp_set(elenum).cbr_quald_bnf_id
315         ,p_crp_set(elenum).business_group_id
316         ,p_crp_set(elenum).crp_attribute_category
317         ,p_crp_set(elenum).crp_attribute1
318         ,p_crp_set(elenum).crp_attribute2
319         ,p_crp_set(elenum).crp_attribute3
320         ,p_crp_set(elenum).crp_attribute4
321         ,p_crp_set(elenum).crp_attribute5
322         ,p_crp_set(elenum).crp_attribute6
323         ,p_crp_set(elenum).crp_attribute7
324         ,p_crp_set(elenum).crp_attribute8
325         ,p_crp_set(elenum).crp_attribute9
326         ,p_crp_set(elenum).crp_attribute10
327         ,p_crp_set(elenum).crp_attribute11
328         ,p_crp_set(elenum).crp_attribute12
329         ,p_crp_set(elenum).crp_attribute13
330         ,p_crp_set(elenum).crp_attribute14
331         ,p_crp_set(elenum).crp_attribute15
332         ,p_crp_set(elenum).crp_attribute16
333         ,p_crp_set(elenum).crp_attribute17
334         ,p_crp_set(elenum).crp_attribute18
335         ,p_crp_set(elenum).crp_attribute19
336         ,p_crp_set(elenum).crp_attribute20
337         ,p_crp_set(elenum).crp_attribute21
338         ,p_crp_set(elenum).crp_attribute22
339         ,p_crp_set(elenum).crp_attribute23
340         ,p_crp_set(elenum).crp_attribute24
341         ,p_crp_set(elenum).crp_attribute25
342         ,p_crp_set(elenum).crp_attribute26
343         ,p_crp_set(elenum).crp_attribute27
344         ,p_crp_set(elenum).crp_attribute28
345         ,p_crp_set(elenum).crp_attribute29
346         ,p_crp_set(elenum).crp_attribute30
347         ,p_crp_set(elenum).last_update_date
348         ,p_crp_set(elenum).last_updated_by
349         ,p_crp_set(elenum).last_update_login
350         ,p_crp_set(elenum).created_by
351         ,p_crp_set(elenum).creation_date
352         ,p_crp_set(elenum).object_version_number
353         ,p_crp_set(elenum).cnt_num
354         ,p_crp_set(elenum).prvs_elig_perd_end_dt
355         ,p_benefit_action_id
356         ,p_person_action_id
357         );
358       --
359     end loop;
360     --
361   end if;
362   --
363   commit;
364   --
365 end write_crp_rbvs;
366 --
367 PROCEDURE write_pep_rbvs
368   (p_benefit_action_id in     number
369   ,p_person_action_id  in     number
370   ,p_pep_set           in     t_pep_tab
371   )
372 is
373   --
374   PRAGMA AUTONOMOUS_TRANSACTION;
375   --
376 begin
377   --
378   if p_pep_set.count > 0 then
379     --
380     for elenum in p_pep_set.first ..p_pep_set.last
381     loop
382       --
383       insert into ben_elig_per_f_rbv
384         (
385         elig_per_id,
386         effective_start_date,
387         effective_end_date,
388         business_group_id,
389         pl_id,
390         pgm_id,
394         person_id,
391         plip_id,
392         ptip_id,
393         ler_id,
395         per_in_ler_id,
396         dpnt_othr_pl_cvrd_rl_flag,
397         prtn_ovridn_thru_dt,
398         pl_key_ee_flag,
399         pl_hghly_compd_flag,
400         elig_flag,
401         comp_ref_amt,
402         cmbn_age_n_los_val,
403         comp_ref_uom,
404         age_val,
405         los_val,
406         prtn_end_dt,
407         prtn_strt_dt,
408         wait_perd_cmpltn_dt,
409         wait_perd_strt_dt ,
410         wv_ctfn_typ_cd,
411         hrs_wkd_val,
412         hrs_wkd_bndry_perd_cd,
413         prtn_ovridn_flag,
414         no_mx_prtn_ovrid_thru_flag,
415         prtn_ovridn_rsn_cd,
416         age_uom,
417         los_uom,
418         ovrid_svc_dt,
419         inelg_rsn_cd,
420         frz_los_flag,
421         frz_age_flag,
422         frz_cmp_lvl_flag,
423         frz_pct_fl_tm_flag,
424         frz_hrs_wkd_flag,
425         frz_comb_age_and_los_flag,
426         dstr_rstcn_flag,
427         pct_fl_tm_val,
428         wv_prtn_rsn_cd,
429         pl_wvd_flag,
430         rt_comp_ref_amt,
431         rt_cmbn_age_n_los_val,
432         rt_comp_ref_uom,
433         rt_age_val,
434         rt_los_val,
435         rt_hrs_wkd_val,
436         rt_hrs_wkd_bndry_perd_cd,
437         rt_age_uom,
438         rt_los_uom,
439         rt_pct_fl_tm_val,
440         rt_frz_los_flag,
441         rt_frz_age_flag,
442         rt_frz_cmp_lvl_flag,
443         rt_frz_pct_fl_tm_flag,
444         rt_frz_hrs_wkd_flag,
445         rt_frz_comb_age_and_los_flag,
446         once_r_cntug_cd,
447         pl_ordr_num,
448         plip_ordr_num,
449         ptip_ordr_num,
450         pep_attribute_category,
451         pep_attribute1,
452         pep_attribute2,
453         pep_attribute3,
454         pep_attribute4,
455         pep_attribute5,
456         pep_attribute6,
457         pep_attribute7,
458         pep_attribute8,
459         pep_attribute9,
460         pep_attribute10,
461         pep_attribute11,
462         pep_attribute12,
463         pep_attribute13,
464         pep_attribute14,
465         pep_attribute15,
466         pep_attribute16,
467         pep_attribute17,
468         pep_attribute18,
469         pep_attribute19,
470         pep_attribute20,
471         pep_attribute21,
472         pep_attribute22,
473         pep_attribute23,
474         pep_attribute24,
475         pep_attribute25,
476         pep_attribute26,
477         pep_attribute27,
478         pep_attribute28,
479         pep_attribute29,
480         pep_attribute30,
481         request_id,
482         program_application_id,
483         program_id,
484         program_update_date,
485         object_version_number,
486         created_by,
487         creation_date,
488         last_update_date,
489         last_updated_by,
490         last_update_login,
491         benefit_action_id,
492         person_action_id
493       )
494       Values
495       (
496         p_pep_set(elenum).elig_per_id,
497         p_pep_set(elenum).effective_start_date,
498         p_pep_set(elenum).effective_end_date,
499         p_pep_set(elenum).business_group_id,
500         p_pep_set(elenum).pl_id,
501         p_pep_set(elenum).pgm_id,
502         p_pep_set(elenum).plip_id,
503         p_pep_set(elenum).ptip_id,
504         p_pep_set(elenum).ler_id,
505         p_pep_set(elenum).person_id,
506         p_pep_set(elenum).per_in_ler_id,
507         p_pep_set(elenum).dpnt_othr_pl_cvrd_rl_flag,
508         p_pep_set(elenum).prtn_ovridn_thru_dt,
509         p_pep_set(elenum).pl_key_ee_flag,
510         p_pep_set(elenum).pl_hghly_compd_flag,
511         p_pep_set(elenum).elig_flag,
512         p_pep_set(elenum).comp_ref_amt,
513         p_pep_set(elenum).cmbn_age_n_los_val,
514         p_pep_set(elenum).comp_ref_uom,
515         p_pep_set(elenum).age_val,
516         p_pep_set(elenum).los_val,
517         p_pep_set(elenum).prtn_end_dt,
518         p_pep_set(elenum).prtn_strt_dt,
519         p_pep_set(elenum).wait_perd_cmpltn_dt,
520         p_pep_set(elenum).wait_perd_strt_dt ,
521         p_pep_set(elenum).wv_ctfn_typ_cd,
522         p_pep_set(elenum).hrs_wkd_val,
523         p_pep_set(elenum).hrs_wkd_bndry_perd_cd,
524         p_pep_set(elenum).prtn_ovridn_flag,
525         p_pep_set(elenum).no_mx_prtn_ovrid_thru_flag,
526         p_pep_set(elenum).prtn_ovridn_rsn_cd,
527         p_pep_set(elenum).age_uom,
528         p_pep_set(elenum).los_uom,
529         p_pep_set(elenum).ovrid_svc_dt,
530         p_pep_set(elenum).inelg_rsn_cd,
531         p_pep_set(elenum).frz_los_flag,
532         p_pep_set(elenum).frz_age_flag,
533         p_pep_set(elenum).frz_cmp_lvl_flag,
534         p_pep_set(elenum).frz_pct_fl_tm_flag,
535         p_pep_set(elenum).frz_hrs_wkd_flag,
536         p_pep_set(elenum).frz_comb_age_and_los_flag,
537         p_pep_set(elenum).dstr_rstcn_flag,
538         p_pep_set(elenum).pct_fl_tm_val,
539         p_pep_set(elenum).wv_prtn_rsn_cd,
540         p_pep_set(elenum).pl_wvd_flag,
541         p_pep_set(elenum).rt_comp_ref_amt,
542         p_pep_set(elenum).rt_cmbn_age_n_los_val,
543         p_pep_set(elenum).rt_comp_ref_uom,
544         p_pep_set(elenum).rt_age_val,
545         p_pep_set(elenum).rt_los_val,
546         p_pep_set(elenum).rt_hrs_wkd_val,
547         p_pep_set(elenum).rt_hrs_wkd_bndry_perd_cd,
551         p_pep_set(elenum).rt_frz_los_flag,
548         p_pep_set(elenum).rt_age_uom,
549         p_pep_set(elenum).rt_los_uom,
550         p_pep_set(elenum).rt_pct_fl_tm_val,
552         p_pep_set(elenum).rt_frz_age_flag,
553         p_pep_set(elenum).rt_frz_cmp_lvl_flag,
554         p_pep_set(elenum).rt_frz_pct_fl_tm_flag,
555         p_pep_set(elenum).rt_frz_hrs_wkd_flag,
556         p_pep_set(elenum).rt_frz_comb_age_and_los_flag,
557         p_pep_set(elenum).once_r_cntug_cd,
558         p_pep_set(elenum).pl_ordr_num,
559         p_pep_set(elenum).plip_ordr_num,
560         p_pep_set(elenum).ptip_ordr_num,
561         p_pep_set(elenum).pep_attribute_category,
562         p_pep_set(elenum).pep_attribute1,
563         p_pep_set(elenum).pep_attribute2,
564         p_pep_set(elenum).pep_attribute3,
565         p_pep_set(elenum).pep_attribute4,
566         p_pep_set(elenum).pep_attribute5,
567         p_pep_set(elenum).pep_attribute6,
568         p_pep_set(elenum).pep_attribute7,
569         p_pep_set(elenum).pep_attribute8,
570         p_pep_set(elenum).pep_attribute9,
571         p_pep_set(elenum).pep_attribute10,
572         p_pep_set(elenum).pep_attribute11,
573         p_pep_set(elenum).pep_attribute12,
574         p_pep_set(elenum).pep_attribute13,
575         p_pep_set(elenum).pep_attribute14,
576         p_pep_set(elenum).pep_attribute15,
577         p_pep_set(elenum).pep_attribute16,
578         p_pep_set(elenum).pep_attribute17,
579         p_pep_set(elenum).pep_attribute18,
580         p_pep_set(elenum).pep_attribute19,
581         p_pep_set(elenum).pep_attribute20,
582         p_pep_set(elenum).pep_attribute21,
583         p_pep_set(elenum).pep_attribute22,
584         p_pep_set(elenum).pep_attribute23,
585         p_pep_set(elenum).pep_attribute24,
586         p_pep_set(elenum).pep_attribute25,
587         p_pep_set(elenum).pep_attribute26,
588         p_pep_set(elenum).pep_attribute27,
589         p_pep_set(elenum).pep_attribute28,
590         p_pep_set(elenum).pep_attribute29,
591         p_pep_set(elenum).pep_attribute30,
592         p_pep_set(elenum).request_id,
593         p_pep_set(elenum).program_application_id,
594         p_pep_set(elenum).program_id,
595         p_pep_set(elenum).program_update_date,
596         p_pep_set(elenum).object_version_number,
597         p_pep_set(elenum).created_by,
598         p_pep_set(elenum).creation_date,
599         p_pep_set(elenum).last_update_date,
600         p_pep_set(elenum).last_updated_by,
601         p_pep_set(elenum).last_update_login,
602         p_benefit_action_id,
603         p_person_action_id
604         );
605       --
606     end loop;
607     --
608   end if;
609   --
610   commit;
611   --
612 end write_pep_rbvs;
613 --
614 PROCEDURE write_epo_rbvs
615   (p_benefit_action_id in     number
616   ,p_person_action_id  in     number
617   ,p_epo_set           in     t_epo_tab
618   )
619 is
620   --
621   PRAGMA AUTONOMOUS_TRANSACTION;
622   --
623 begin
624   --
625   if p_epo_set.count > 0 then
626     --
627     for elenum in p_epo_set.first ..p_epo_set.last
628     loop
629       --
630       insert into ben_elig_per_opt_f_rbv
631       ( elig_per_opt_id,
632         elig_per_id,
633         effective_start_date,
634         effective_end_date,
635         prtn_ovridn_flag,
636         prtn_ovridn_thru_dt,
637         no_mx_prtn_ovrid_thru_flag,
638         elig_flag,
639         prtn_strt_dt,
640         prtn_end_dt,
641         wait_perd_cmpltn_dt,
642         wait_perd_strt_dt,
643         prtn_ovridn_rsn_cd,
644         pct_fl_tm_val,
645         opt_id,
646         per_in_ler_id,
647         rt_comp_ref_amt,
648         rt_cmbn_age_n_los_val,
649         rt_comp_ref_uom,
650         rt_age_val,
651         rt_los_val,
652         rt_hrs_wkd_val,
653         rt_hrs_wkd_bndry_perd_cd,
654         rt_age_uom,
655         rt_los_uom,
656         rt_pct_fl_tm_val,
657         rt_frz_los_flag,
658         rt_frz_age_flag,
659         rt_frz_cmp_lvl_flag,
660         rt_frz_pct_fl_tm_flag,
661         rt_frz_hrs_wkd_flag,
662         rt_frz_comb_age_and_los_flag,
663         comp_ref_amt,
664         cmbn_age_n_los_val,
665         comp_ref_uom,
666         age_val,
667         los_val,
668         hrs_wkd_val,
669         hrs_wkd_bndry_perd_cd,
670         age_uom,
671         los_uom,
672         frz_los_flag,
673         frz_age_flag,
674         frz_cmp_lvl_flag,
675         frz_pct_fl_tm_flag,
676         frz_hrs_wkd_flag,
677         frz_comb_age_and_los_flag,
678         ovrid_svc_dt,
679         inelg_rsn_cd,
680         once_r_cntug_cd,
681         oipl_ordr_num,
682         business_group_id,
683         epo_attribute_category,
684         epo_attribute1,
685         epo_attribute2,
686         epo_attribute3,
687         epo_attribute4,
688         epo_attribute5,
689         epo_attribute6,
690         epo_attribute7,
691         epo_attribute8,
692         epo_attribute9,
693         epo_attribute10,
694         epo_attribute11,
695         epo_attribute12,
696         epo_attribute13,
697         epo_attribute14,
698         epo_attribute15,
699         epo_attribute16,
700         epo_attribute17,
701         epo_attribute18,
702         epo_attribute19,
703         epo_attribute20,
704         epo_attribute21,
705         epo_attribute22,
706         epo_attribute23,
707         epo_attribute24,
708         epo_attribute25,
709         epo_attribute26,
710         epo_attribute27,
714         request_id,
711         epo_attribute28,
712         epo_attribute29,
713         epo_attribute30,
715         program_application_id,
716         program_id,
717         program_update_date,
718         object_version_number,
719         created_by,
720         creation_date,
721         last_update_date,
722         last_updated_by,
723         last_update_login,
724         benefit_action_id,
725         person_action_id
726       )
727       Values
728       ( p_epo_set(elenum).elig_per_opt_id,
729         p_epo_set(elenum).elig_per_id,
730         p_epo_set(elenum).effective_start_date,
731         p_epo_set(elenum).effective_end_date,
732         p_epo_set(elenum).prtn_ovridn_flag,
733         p_epo_set(elenum).prtn_ovridn_thru_dt,
734         p_epo_set(elenum).no_mx_prtn_ovrid_thru_flag,
735         p_epo_set(elenum).elig_flag,
736         p_epo_set(elenum).prtn_strt_dt,
737         p_epo_set(elenum).prtn_end_dt,
738         p_epo_set(elenum).wait_perd_cmpltn_dt,
739         p_epo_set(elenum).wait_perd_strt_dt,
740         p_epo_set(elenum).prtn_ovridn_rsn_cd,
741         p_epo_set(elenum).pct_fl_tm_val,
742         p_epo_set(elenum).opt_id,
743         p_epo_set(elenum).per_in_ler_id,
744         p_epo_set(elenum).rt_comp_ref_amt,
745         p_epo_set(elenum).rt_cmbn_age_n_los_val,
746         p_epo_set(elenum).rt_comp_ref_uom,
747         p_epo_set(elenum).rt_age_val,
748         p_epo_set(elenum).rt_los_val,
749         p_epo_set(elenum).rt_hrs_wkd_val,
750         p_epo_set(elenum).rt_hrs_wkd_bndry_perd_cd,
751         p_epo_set(elenum).rt_age_uom,
752         p_epo_set(elenum).rt_los_uom,
753         p_epo_set(elenum).rt_pct_fl_tm_val,
754         p_epo_set(elenum).rt_frz_los_flag,
755         p_epo_set(elenum).rt_frz_age_flag,
756         p_epo_set(elenum).rt_frz_cmp_lvl_flag,
757         p_epo_set(elenum).rt_frz_pct_fl_tm_flag,
758         p_epo_set(elenum).rt_frz_hrs_wkd_flag,
759         p_epo_set(elenum).rt_frz_comb_age_and_los_flag,
760         p_epo_set(elenum).comp_ref_amt,
761         p_epo_set(elenum).cmbn_age_n_los_val,
762         p_epo_set(elenum).comp_ref_uom,
763         p_epo_set(elenum).age_val,
764         p_epo_set(elenum).los_val,
765         p_epo_set(elenum).hrs_wkd_val,
766         p_epo_set(elenum).hrs_wkd_bndry_perd_cd,
767         p_epo_set(elenum).age_uom,
768         p_epo_set(elenum).los_uom,
769         p_epo_set(elenum).frz_los_flag,
770         p_epo_set(elenum).frz_age_flag,
771         p_epo_set(elenum).frz_cmp_lvl_flag,
772         p_epo_set(elenum).frz_pct_fl_tm_flag,
773         p_epo_set(elenum).frz_hrs_wkd_flag,
774         p_epo_set(elenum).frz_comb_age_and_los_flag,
775         p_epo_set(elenum).ovrid_svc_dt,
776         p_epo_set(elenum).inelg_rsn_cd,
777         p_epo_set(elenum).once_r_cntug_cd,
778         p_epo_set(elenum).oipl_ordr_num,
779         p_epo_set(elenum).business_group_id,
780         p_epo_set(elenum).epo_attribute_category,
781         p_epo_set(elenum).epo_attribute1,
782         p_epo_set(elenum).epo_attribute2,
783         p_epo_set(elenum).epo_attribute3,
784         p_epo_set(elenum).epo_attribute4,
785         p_epo_set(elenum).epo_attribute5,
786         p_epo_set(elenum).epo_attribute6,
787         p_epo_set(elenum).epo_attribute7,
788         p_epo_set(elenum).epo_attribute8,
789         p_epo_set(elenum).epo_attribute9,
790         p_epo_set(elenum).epo_attribute10,
791         p_epo_set(elenum).epo_attribute11,
792         p_epo_set(elenum).epo_attribute12,
793         p_epo_set(elenum).epo_attribute13,
794         p_epo_set(elenum).epo_attribute14,
795         p_epo_set(elenum).epo_attribute15,
796         p_epo_set(elenum).epo_attribute16,
797         p_epo_set(elenum).epo_attribute17,
798         p_epo_set(elenum).epo_attribute18,
799         p_epo_set(elenum).epo_attribute19,
800         p_epo_set(elenum).epo_attribute20,
801         p_epo_set(elenum).epo_attribute21,
802         p_epo_set(elenum).epo_attribute22,
803         p_epo_set(elenum).epo_attribute23,
804         p_epo_set(elenum).epo_attribute24,
805         p_epo_set(elenum).epo_attribute25,
806         p_epo_set(elenum).epo_attribute26,
807         p_epo_set(elenum).epo_attribute27,
808         p_epo_set(elenum).epo_attribute28,
809         p_epo_set(elenum).epo_attribute29,
810         p_epo_set(elenum).epo_attribute30,
811         p_epo_set(elenum).request_id,
812         p_epo_set(elenum).program_application_id,
813         p_epo_set(elenum).program_id,
814         p_epo_set(elenum).program_update_date,
815         p_epo_set(elenum).object_version_number,
816         p_epo_set(elenum).created_by,
817         p_epo_set(elenum).creation_date,
818         p_epo_set(elenum).last_update_date,
819         p_epo_set(elenum).last_updated_by,
820         p_epo_set(elenum).last_update_login,
821         p_benefit_action_id,
822         p_person_action_id
823       );
824       --
825     end loop;
826     --
827   end if;
828   --
829   commit;
830   --
831 end write_epo_rbvs;
832 --
833 PROCEDURE write_epe_rbvs
834   (p_benefit_action_id in     number
835   ,p_person_action_id  in     number
836   ,p_epe_set           in     t_epe_tab
837   )
838 is
839   --
840   PRAGMA AUTONOMOUS_TRANSACTION;
841   --
842 begin
843   --
844   if p_epe_set.count > 0 then
845     --
846     for elenum in p_epe_set.first ..p_epe_set.last
847     loop
848       --
849       insert into ben_elig_per_elctbl_chc_rbv
850   (	elig_per_elctbl_chc_id,
851 --	enrt_typ_cycl_cd,
852 	enrt_cvg_strt_dt_cd,
853 --	enrt_perd_end_dt,
854 --	enrt_perd_strt_dt,
855 	enrt_cvg_strt_dt_rl,
856 --	rt_strt_dt,
857 --	rt_strt_dt_rl,
861 	roll_crs_flag,
858 --	rt_strt_dt_cd,
859         ctfn_rqd_flag,
860         pil_elctbl_chc_popl_id,
862 	crntly_enrd_flag,
863 	dflt_flag,
864 	elctbl_flag,
865 	mndtry_flag,
866         in_pndg_wkflow_flag,
867 --	dflt_enrt_dt,
868 	dpnt_cvg_strt_dt_cd,
869 	dpnt_cvg_strt_dt_rl,
870 	enrt_cvg_strt_dt,
871 	alws_dpnt_dsgn_flag,
872 	dpnt_dsgn_cd,
873 	ler_chg_dpnt_cvg_cd,
874 	erlst_deenrt_dt,
875 	procg_end_dt,
876 	comp_lvl_cd,
877 	pl_id,
878 	oipl_id,
879 	pgm_id,
880 	plip_id,
881 	ptip_id,
882 	pl_typ_id,
883 	oiplip_id,
884 	cmbn_plip_id,
885 	cmbn_ptip_id,
886 	cmbn_ptip_opt_id,
887         assignment_id,
888 	spcl_rt_pl_id,
889 	spcl_rt_oipl_id,
890 	must_enrl_anthr_pl_id,
891 	interim_elig_per_elctbl_chc_id,
892 	prtt_enrt_rslt_id,
893 	bnft_prvdr_pool_id,
894 	per_in_ler_id,
895 	yr_perd_id,
896 	auto_enrt_flag,
897 	business_group_id,
898         pl_ordr_num,
899         plip_ordr_num,
900         ptip_ordr_num,
901         oipl_ordr_num,
902         -- cwb
903         comments,
904         elig_flag,
905         elig_ovrid_dt,
906         elig_ovrid_person_id,
907         inelig_rsn_cd,
908         mgr_ovrid_dt,
909         mgr_ovrid_person_id,
910         ws_mgr_id,
911         -- cwb
912 	epe_attribute_category,
913 	epe_attribute1,
914 	epe_attribute2,
915 	epe_attribute3,
916 	epe_attribute4,
917 	epe_attribute5,
918 	epe_attribute6,
919 	epe_attribute7,
920 	epe_attribute8,
921 	epe_attribute9,
922 	epe_attribute10,
923 	epe_attribute11,
924 	epe_attribute12,
925 	epe_attribute13,
926 	epe_attribute14,
927 	epe_attribute15,
928 	epe_attribute16,
929 	epe_attribute17,
930 	epe_attribute18,
931 	epe_attribute19,
932 	epe_attribute20,
933 	epe_attribute21,
934 	epe_attribute22,
935 	epe_attribute23,
936 	epe_attribute24,
937 	epe_attribute25,
938 	epe_attribute26,
939 	epe_attribute27,
940 	epe_attribute28,
941 	epe_attribute29,
942 	epe_attribute30,
943         cryfwd_elig_dpnt_cd,
944 	request_id,
945 	program_application_id,
946 	program_id,
947 	program_update_date,
948 	object_version_number,
949         benefit_action_id,
950         person_action_id
951        )
952   Values
953        (p_epe_set(elenum).elig_per_elctbl_chc_id,
954 --	p_enrt_typ_cycl_cd,
955         p_epe_set(elenum).enrt_cvg_strt_dt_cd,
956 --	p_enrt_perd_end_dt,
957 --	p_enrt_perd_strt_dt,
958         p_epe_set(elenum).enrt_cvg_strt_dt_rl,
959 --	p_rt_strt_dt,
960 --	p_rt_strt_dt_rl,
961 --	p_rt_strt_dt_cd,
962         p_epe_set(elenum).ctfn_rqd_flag,
963         p_epe_set(elenum).pil_elctbl_chc_popl_id,
964         p_epe_set(elenum).roll_crs_flag,
965         p_epe_set(elenum).crntly_enrd_flag,
966         p_epe_set(elenum).dflt_flag,
967         p_epe_set(elenum).elctbl_flag,
968         p_epe_set(elenum).mndtry_flag,
969         p_epe_set(elenum).in_pndg_wkflow_flag,
970 --	p_dflt_enrt_dt,
971         p_epe_set(elenum).dpnt_cvg_strt_dt_cd,
972         p_epe_set(elenum).dpnt_cvg_strt_dt_rl,
973         p_epe_set(elenum).enrt_cvg_strt_dt,
974         p_epe_set(elenum).alws_dpnt_dsgn_flag,
975         p_epe_set(elenum).dpnt_dsgn_cd,
976         p_epe_set(elenum).ler_chg_dpnt_cvg_cd,
977         p_epe_set(elenum).erlst_deenrt_dt,
978         p_epe_set(elenum).procg_end_dt,
979         p_epe_set(elenum).comp_lvl_cd,
980         p_epe_set(elenum).pl_id,
981         p_epe_set(elenum).oipl_id,
982         p_epe_set(elenum).pgm_id,
983         p_epe_set(elenum).plip_id,
984         p_epe_set(elenum).ptip_id,
985         p_epe_set(elenum).pl_typ_id,
986         p_epe_set(elenum).oiplip_id,
987         p_epe_set(elenum).cmbn_plip_id,
988         p_epe_set(elenum).cmbn_ptip_id,
989         p_epe_set(elenum).cmbn_ptip_opt_id,
990         p_epe_set(elenum).assignment_id,
991         p_epe_set(elenum).spcl_rt_pl_id,
992         p_epe_set(elenum).spcl_rt_oipl_id,
993         p_epe_set(elenum).must_enrl_anthr_pl_id,
994         p_epe_set(elenum).interim_elig_per_elctbl_chc_id,
995         p_epe_set(elenum).prtt_enrt_rslt_id,
996         p_epe_set(elenum).bnft_prvdr_pool_id,
997         p_epe_set(elenum).per_in_ler_id,
998         p_epe_set(elenum).yr_perd_id,
999         p_epe_set(elenum).auto_enrt_flag,
1000         p_epe_set(elenum).business_group_id,
1001         p_epe_set(elenum).pl_ordr_num,
1002         p_epe_set(elenum).plip_ordr_num,
1003         p_epe_set(elenum).ptip_ordr_num,
1004         p_epe_set(elenum).oipl_ordr_num,
1005         -- cwb
1006         p_epe_set(elenum).comments,
1007         p_epe_set(elenum).elig_flag,
1008         p_epe_set(elenum).elig_ovrid_dt,
1009         p_epe_set(elenum).elig_ovrid_person_id,
1010         p_epe_set(elenum).inelig_rsn_cd,
1011         p_epe_set(elenum).mgr_ovrid_dt,
1012         p_epe_set(elenum).mgr_ovrid_person_id,
1013         p_epe_set(elenum).ws_mgr_id,
1014         -- cwb
1015         p_epe_set(elenum).epe_attribute_category,
1016         p_epe_set(elenum).epe_attribute1,
1017         p_epe_set(elenum).epe_attribute2,
1018         p_epe_set(elenum).epe_attribute3,
1019         p_epe_set(elenum).epe_attribute4,
1020         p_epe_set(elenum).epe_attribute5,
1021         p_epe_set(elenum).epe_attribute6,
1022         p_epe_set(elenum).epe_attribute7,
1023         p_epe_set(elenum).epe_attribute8,
1024         p_epe_set(elenum).epe_attribute9,
1025         p_epe_set(elenum).epe_attribute10,
1026         p_epe_set(elenum).epe_attribute11,
1030         p_epe_set(elenum).epe_attribute15,
1027         p_epe_set(elenum).epe_attribute12,
1028         p_epe_set(elenum).epe_attribute13,
1029         p_epe_set(elenum).epe_attribute14,
1031         p_epe_set(elenum).epe_attribute16,
1032         p_epe_set(elenum).epe_attribute17,
1033         p_epe_set(elenum).epe_attribute18,
1034         p_epe_set(elenum).epe_attribute19,
1035         p_epe_set(elenum).epe_attribute20,
1036         p_epe_set(elenum).epe_attribute21,
1037         p_epe_set(elenum).epe_attribute22,
1038         p_epe_set(elenum).epe_attribute23,
1039         p_epe_set(elenum).epe_attribute24,
1040         p_epe_set(elenum).epe_attribute25,
1041         p_epe_set(elenum).epe_attribute26,
1042         p_epe_set(elenum).epe_attribute27,
1043         p_epe_set(elenum).epe_attribute28,
1044         p_epe_set(elenum).epe_attribute29,
1045         p_epe_set(elenum).epe_attribute30,
1046         p_epe_set(elenum).cryfwd_elig_dpnt_cd,
1047         p_epe_set(elenum).request_id,
1048         p_epe_set(elenum).program_application_id,
1049         p_epe_set(elenum).program_id,
1050         p_epe_set(elenum).program_update_date,
1051         p_epe_set(elenum).object_version_number,
1052         p_benefit_action_id,
1053         p_person_action_id
1054         );
1055       --
1056     end loop;
1057     --
1058   end if;
1059   --
1060   commit;
1061   --
1062 end write_epe_rbvs;
1063 --
1064 PROCEDURE write_pel_rbvs
1065   (p_benefit_action_id in     number
1066   ,p_person_action_id  in     number
1067   ,p_pel_set           in     t_pel_tab
1068   )
1069 is
1070   --
1071   PRAGMA AUTONOMOUS_TRANSACTION;
1072   --
1073 begin
1074   --
1075   if p_pel_set.count > 0 then
1076     --
1077     for elenum in p_pel_set.first..p_pel_set.last
1078     loop
1079       --
1080       insert into ben_pil_epe_popl_rbv
1081   (	pil_elctbl_chc_popl_id,
1082 	dflt_enrt_dt,
1083 	dflt_asnd_dt,
1084 	elcns_made_dt,
1085 	cls_enrt_dt_to_use_cd,
1086 	enrt_typ_cycl_cd,
1087 	enrt_perd_end_dt,
1088 	enrt_perd_strt_dt,
1089 	procg_end_dt,
1090 	pil_elctbl_popl_stat_cd,
1091 	acty_ref_perd_cd,
1092 	uom,
1093         --cwb
1094         bdgt_acc_cd,
1095         pop_cd,
1096         bdgt_due_dt,
1097         bdgt_export_flag,
1098         bdgt_iss_dt,
1099         bdgt_stat_cd,
1100         ws_acc_cd,
1101         ws_due_dt,
1102         ws_export_flag,
1103         ws_iss_dt,
1104         ws_stat_cd,
1105         --cwb
1106 	auto_asnd_dt,
1107         cbr_elig_perd_strt_dt,
1108         cbr_elig_perd_end_dt,
1109 	lee_rsn_id,
1110 	enrt_perd_id,
1111 	per_in_ler_id,
1112 	pgm_id,
1113 	pl_id,
1114 	business_group_id,
1115 	pel_attribute_category,
1116 	pel_attribute1,
1117 	pel_attribute2,
1118 	pel_attribute3,
1119 	pel_attribute4,
1120 	pel_attribute5,
1121 	pel_attribute6,
1122 	pel_attribute7,
1123 	pel_attribute8,
1124 	pel_attribute9,
1125 	pel_attribute10,
1126 	pel_attribute11,
1127 	pel_attribute12,
1128 	pel_attribute13,
1129 	pel_attribute14,
1130 	pel_attribute15,
1131 	pel_attribute16,
1132 	pel_attribute17,
1133 	pel_attribute18,
1134 	pel_attribute19,
1135 	pel_attribute20,
1136 	pel_attribute21,
1137 	pel_attribute22,
1138 	pel_attribute23,
1139 	pel_attribute24,
1140 	pel_attribute25,
1141 	pel_attribute26,
1142 	pel_attribute27,
1143 	pel_attribute28,
1144 	pel_attribute29,
1145 	pel_attribute30,
1146 	request_id,
1147 	program_application_id,
1148 	program_id,
1149 	program_update_date,
1150 	object_version_number,
1151         benefit_action_id,
1152         person_action_id
1153   )
1154   Values
1155   (     p_pel_set(elenum).pil_elctbl_chc_popl_id,
1156         p_pel_set(elenum).dflt_enrt_dt,
1157         p_pel_set(elenum).dflt_asnd_dt,
1158         p_pel_set(elenum).elcns_made_dt,
1159         p_pel_set(elenum).cls_enrt_dt_to_use_cd,
1160         p_pel_set(elenum).enrt_typ_cycl_cd,
1161         p_pel_set(elenum).enrt_perd_end_dt,
1162         p_pel_set(elenum).enrt_perd_strt_dt,
1163         p_pel_set(elenum).procg_end_dt,
1164         p_pel_set(elenum).pil_elctbl_popl_stat_cd,
1165         p_pel_set(elenum).acty_ref_perd_cd,
1166         p_pel_set(elenum).uom,
1167         --cwb
1168         p_pel_set(elenum).bdgt_acc_cd,
1169         p_pel_set(elenum).pop_cd,
1170         p_pel_set(elenum).bdgt_due_dt,
1171         p_pel_set(elenum).bdgt_export_flag,
1172         p_pel_set(elenum).bdgt_iss_dt,
1173         p_pel_set(elenum).bdgt_stat_cd,
1174         p_pel_set(elenum).ws_acc_cd,
1175         p_pel_set(elenum).ws_due_dt,
1176         p_pel_set(elenum).ws_export_flag,
1177         p_pel_set(elenum).ws_iss_dt,
1178         p_pel_set(elenum).ws_stat_cd,
1179         --cwb
1180         p_pel_set(elenum).auto_asnd_dt,
1181         p_pel_set(elenum).cbr_elig_perd_strt_dt,
1182         p_pel_set(elenum).cbr_elig_perd_end_dt,
1183         p_pel_set(elenum).lee_rsn_id,
1184         p_pel_set(elenum).enrt_perd_id,
1185         p_pel_set(elenum).per_in_ler_id,
1186         p_pel_set(elenum).pgm_id,
1187         p_pel_set(elenum).pl_id,
1188         p_pel_set(elenum).business_group_id,
1189         p_pel_set(elenum).pel_attribute_category,
1190         p_pel_set(elenum).pel_attribute1,
1191         p_pel_set(elenum).pel_attribute2,
1192         p_pel_set(elenum).pel_attribute3,
1193         p_pel_set(elenum).pel_attribute4,
1194         p_pel_set(elenum).pel_attribute5,
1195         p_pel_set(elenum).pel_attribute6,
1199         p_pel_set(elenum).pel_attribute10,
1196         p_pel_set(elenum).pel_attribute7,
1197         p_pel_set(elenum).pel_attribute8,
1198         p_pel_set(elenum).pel_attribute9,
1200         p_pel_set(elenum).pel_attribute11,
1201         p_pel_set(elenum).pel_attribute12,
1202         p_pel_set(elenum).pel_attribute13,
1203         p_pel_set(elenum).pel_attribute14,
1204         p_pel_set(elenum).pel_attribute15,
1205         p_pel_set(elenum).pel_attribute16,
1206         p_pel_set(elenum).pel_attribute17,
1207         p_pel_set(elenum).pel_attribute18,
1208         p_pel_set(elenum).pel_attribute19,
1209         p_pel_set(elenum).pel_attribute20,
1210         p_pel_set(elenum).pel_attribute21,
1211         p_pel_set(elenum).pel_attribute22,
1212         p_pel_set(elenum).pel_attribute23,
1213         p_pel_set(elenum).pel_attribute24,
1214         p_pel_set(elenum).pel_attribute25,
1215         p_pel_set(elenum).pel_attribute26,
1216         p_pel_set(elenum).pel_attribute27,
1217         p_pel_set(elenum).pel_attribute28,
1218         p_pel_set(elenum).pel_attribute29,
1219         p_pel_set(elenum).pel_attribute30,
1220         p_pel_set(elenum).request_id,
1221         p_pel_set(elenum).program_application_id,
1222         p_pel_set(elenum).program_id,
1223         p_pel_set(elenum).program_update_date,
1224         p_pel_set(elenum).object_version_number,
1225         p_benefit_action_id,
1226         p_person_action_id
1227         );
1228       --
1229     end loop;
1230     --
1231   end if;
1232   --
1233   commit;
1234   --
1235 end write_pel_rbvs;
1236 --
1237 PROCEDURE write_ecc_rbvs
1238   (p_benefit_action_id in     number
1239   ,p_person_action_id  in     number
1240   ,p_ecc_set           in     t_ecc_tab
1241   )
1242 is
1243   --
1244   PRAGMA AUTONOMOUS_TRANSACTION;
1245   --
1246 begin
1247   --
1248   if p_ecc_set.count > 0 then
1249     --
1250     for elenum in p_ecc_set.first..p_ecc_set.last
1251     loop
1252       --
1253       insert into ben_elctbl_chc_ctfn_rbv
1254       (	elctbl_chc_ctfn_id,
1255     	enrt_ctfn_typ_cd,
1256     	rqd_flag,
1257     	elig_per_elctbl_chc_id,
1258     	enrt_bnft_id,
1259     	business_group_id,
1260     	ecc_attribute_category,
1261     	ecc_attribute1,
1262     	ecc_attribute2,
1263     	ecc_attribute3,
1264     	ecc_attribute4,
1265     	ecc_attribute5,
1266     	ecc_attribute6,
1267     	ecc_attribute7,
1268     	ecc_attribute8,
1269     	ecc_attribute9,
1270     	ecc_attribute10,
1271     	ecc_attribute11,
1272     	ecc_attribute12,
1273     	ecc_attribute13,
1274     	ecc_attribute14,
1275     	ecc_attribute15,
1276     	ecc_attribute16,
1277     	ecc_attribute17,
1278     	ecc_attribute18,
1279     	ecc_attribute19,
1280     	ecc_attribute20,
1281     	ecc_attribute21,
1282     	ecc_attribute22,
1283     	ecc_attribute23,
1284     	ecc_attribute24,
1285     	ecc_attribute25,
1286     	ecc_attribute26,
1287     	ecc_attribute27,
1288     	ecc_attribute28,
1289     	ecc_attribute29,
1290     	ecc_attribute30,
1291     	request_id,
1292     	program_application_id,
1293     	program_id,
1294     	program_update_date,
1295     	object_version_number,
1296         benefit_action_id,
1297         person_action_id
1298       )
1299   Values
1300       (	p_ecc_set(elenum).elctbl_chc_ctfn_id,
1301     	p_ecc_set(elenum).enrt_ctfn_typ_cd,
1302     	p_ecc_set(elenum).rqd_flag,
1303     	p_ecc_set(elenum).elig_per_elctbl_chc_id,
1304     	p_ecc_set(elenum).enrt_bnft_id,
1305     	p_ecc_set(elenum).business_group_id,
1306     	p_ecc_set(elenum).ecc_attribute_category,
1307     	p_ecc_set(elenum).ecc_attribute1,
1308     	p_ecc_set(elenum).ecc_attribute2,
1309     	p_ecc_set(elenum).ecc_attribute3,
1310     	p_ecc_set(elenum).ecc_attribute4,
1311     	p_ecc_set(elenum).ecc_attribute5,
1312     	p_ecc_set(elenum).ecc_attribute6,
1313     	p_ecc_set(elenum).ecc_attribute7,
1314     	p_ecc_set(elenum).ecc_attribute8,
1315     	p_ecc_set(elenum).ecc_attribute9,
1316     	p_ecc_set(elenum).ecc_attribute10,
1317     	p_ecc_set(elenum).ecc_attribute11,
1318     	p_ecc_set(elenum).ecc_attribute12,
1319     	p_ecc_set(elenum).ecc_attribute13,
1320     	p_ecc_set(elenum).ecc_attribute14,
1321     	p_ecc_set(elenum).ecc_attribute15,
1322     	p_ecc_set(elenum).ecc_attribute16,
1323     	p_ecc_set(elenum).ecc_attribute17,
1324     	p_ecc_set(elenum).ecc_attribute18,
1325     	p_ecc_set(elenum).ecc_attribute19,
1326     	p_ecc_set(elenum).ecc_attribute20,
1327     	p_ecc_set(elenum).ecc_attribute21,
1328     	p_ecc_set(elenum).ecc_attribute22,
1329     	p_ecc_set(elenum).ecc_attribute23,
1330     	p_ecc_set(elenum).ecc_attribute24,
1331     	p_ecc_set(elenum).ecc_attribute25,
1332     	p_ecc_set(elenum).ecc_attribute26,
1333     	p_ecc_set(elenum).ecc_attribute27,
1334     	p_ecc_set(elenum).ecc_attribute28,
1335     	p_ecc_set(elenum).ecc_attribute29,
1336     	p_ecc_set(elenum).ecc_attribute30,
1337     	p_ecc_set(elenum).request_id,
1338     	p_ecc_set(elenum).program_application_id,
1339     	p_ecc_set(elenum).program_id,
1340     	p_ecc_set(elenum).program_update_date,
1341     	p_ecc_set(elenum).object_version_number,
1342         p_benefit_action_id,
1343         p_person_action_id
1344         );
1345       --
1346     end loop;
1347     --
1348   end if;
1349   --
1350   commit;
1351   --
1352 end write_ecc_rbvs;
1353 --
1354 PROCEDURE write_egd_rbvs
1355   (p_benefit_action_id in     number
1359 is
1356   ,p_person_action_id  in     number
1357   ,p_egd_set           in     t_egd_tab
1358   )
1360   --
1361   PRAGMA AUTONOMOUS_TRANSACTION;
1362   --
1363 begin
1364   --
1365   if p_egd_set.count > 0 then
1366     --
1367     for elenum in p_egd_set.first ..p_egd_set.last
1368     loop
1369       --
1370       insert into ben_elig_dpnt_rbv
1371         ( elig_dpnt_id,
1372           create_dt,
1373           elig_strt_dt,
1374           elig_thru_dt,
1375           ovrdn_flag,
1376           ovrdn_thru_dt,
1377           inelg_rsn_cd,
1378           dpnt_inelig_flag,
1379           elig_per_elctbl_chc_id,
1380           per_in_ler_id,
1381           elig_per_id,
1382           elig_per_opt_id,
1383           elig_cvrd_dpnt_id,
1384           dpnt_person_id,
1385           business_group_id,
1386           egd_attribute_category,
1387           egd_attribute1,
1388           egd_attribute2,
1389           egd_attribute3,
1390           egd_attribute4,
1391           egd_attribute5,
1392           egd_attribute6,
1393           egd_attribute7,
1394           egd_attribute8,
1395           egd_attribute9,
1396           egd_attribute10,
1397           egd_attribute11,
1398           egd_attribute12,
1399           egd_attribute13,
1400           egd_attribute14,
1401           egd_attribute15,
1402           egd_attribute16,
1403           egd_attribute17,
1404           egd_attribute18,
1405           egd_attribute19,
1406           egd_attribute20,
1407           egd_attribute21,
1408           egd_attribute22,
1409           egd_attribute23,
1410           egd_attribute24,
1411           egd_attribute25,
1412           egd_attribute26,
1413           egd_attribute27,
1414           egd_attribute28,
1415           egd_attribute29,
1416           egd_attribute30,
1417           request_id,
1418           program_application_id,
1419           program_id,
1420           program_update_date,
1421           object_version_number,
1422           benefit_action_id,
1423           person_action_id
1424         )
1425         Values
1426         (p_egd_set(elenum).elig_dpnt_id,
1427          p_egd_set(elenum).create_dt,
1428          p_egd_set(elenum).elig_strt_dt,
1429          p_egd_set(elenum).elig_thru_dt,
1430          p_egd_set(elenum).ovrdn_flag,
1431          p_egd_set(elenum).ovrdn_thru_dt,
1432          p_egd_set(elenum).inelg_rsn_cd,
1433          p_egd_set(elenum).dpnt_inelig_flag,
1434          p_egd_set(elenum).elig_per_elctbl_chc_id,
1435          p_egd_set(elenum).per_in_ler_id,
1436          p_egd_set(elenum).elig_per_id,
1437          p_egd_set(elenum).elig_per_opt_id,
1438          p_egd_set(elenum).elig_cvrd_dpnt_id,
1439          p_egd_set(elenum).dpnt_person_id,
1440          p_egd_set(elenum).business_group_id,
1441          p_egd_set(elenum).egd_attribute_category,
1442          p_egd_set(elenum).egd_attribute1,
1443          p_egd_set(elenum).egd_attribute2,
1444          p_egd_set(elenum).egd_attribute3,
1445          p_egd_set(elenum).egd_attribute4,
1446          p_egd_set(elenum).egd_attribute5,
1447          p_egd_set(elenum).egd_attribute6,
1448          p_egd_set(elenum).egd_attribute7,
1449          p_egd_set(elenum).egd_attribute8,
1450          p_egd_set(elenum).egd_attribute9,
1451          p_egd_set(elenum).egd_attribute10,
1452          p_egd_set(elenum).egd_attribute11,
1453          p_egd_set(elenum).egd_attribute12,
1454          p_egd_set(elenum).egd_attribute13,
1455          p_egd_set(elenum).egd_attribute14,
1456          p_egd_set(elenum).egd_attribute15,
1457          p_egd_set(elenum).egd_attribute16,
1458          p_egd_set(elenum).egd_attribute17,
1459          p_egd_set(elenum).egd_attribute18,
1460          p_egd_set(elenum).egd_attribute19,
1461          p_egd_set(elenum).egd_attribute20,
1462          p_egd_set(elenum).egd_attribute21,
1463          p_egd_set(elenum).egd_attribute22,
1464          p_egd_set(elenum).egd_attribute23,
1465          p_egd_set(elenum).egd_attribute24,
1466          p_egd_set(elenum).egd_attribute25,
1467          p_egd_set(elenum).egd_attribute26,
1468          p_egd_set(elenum).egd_attribute27,
1469          p_egd_set(elenum).egd_attribute28,
1470          p_egd_set(elenum).egd_attribute29,
1471          p_egd_set(elenum).egd_attribute30,
1472          p_egd_set(elenum).request_id,
1473          p_egd_set(elenum).program_application_id,
1474          p_egd_set(elenum).program_id,
1475          p_egd_set(elenum).program_update_date,
1476          p_egd_set(elenum).object_version_number,
1477          p_benefit_action_id,
1478          p_person_action_id
1479         );
1480       --
1481     end loop;
1482     --
1483   end if;
1484   --
1485   commit;
1486   --
1487 end write_egd_rbvs;
1488 --
1489 PROCEDURE write_pdp_rbvs
1490   (p_benefit_action_id in     number
1491   ,p_person_action_id  in     number
1492   ,p_pdp_set           in     t_pdp_tab
1493   )
1494 is
1495   --
1496   PRAGMA AUTONOMOUS_TRANSACTION;
1497   --
1498 begin
1499   --
1500   if p_pdp_set.count > 0 then
1501     --
1502     for elenum in p_pdp_set.first ..p_pdp_set.last
1503     loop
1504       --
1505       insert into ben_elig_cvrd_dpnt_f_rbv
1506       (	elig_cvrd_dpnt_id,
1507         effective_start_date,
1508         effective_end_date,
1509         business_group_id,
1510         prtt_enrt_rslt_id,
1511         dpnt_person_id,
1512         cvg_strt_dt,
1513         cvg_thru_dt,
1514         cvg_pndg_flag,
1518 	pdp_attribute3,
1515         pdp_attribute_category,
1516 	pdp_attribute1,
1517 	pdp_attribute2,
1519 	pdp_attribute4,
1520 	pdp_attribute5,
1521 	pdp_attribute6,
1522 	pdp_attribute7,
1523 	pdp_attribute8,
1524 	pdp_attribute9,
1525 	pdp_attribute10,
1526 	pdp_attribute11,
1527 	pdp_attribute12,
1528 	pdp_attribute13,
1529 	pdp_attribute14,
1530 	pdp_attribute15,
1531 	pdp_attribute16,
1532 	pdp_attribute17,
1533 	pdp_attribute18,
1534 	pdp_attribute19,
1535 	pdp_attribute20,
1536 	pdp_attribute21,
1537 	pdp_attribute22,
1538 	pdp_attribute23,
1539 	pdp_attribute24,
1540 	pdp_attribute25,
1541 	pdp_attribute26,
1542 	pdp_attribute27,
1543 	pdp_attribute28,
1544 	pdp_attribute29,
1545 	pdp_attribute30,
1546         request_id,
1547         program_application_id,
1548         program_id,
1549         program_update_date,
1550 	object_version_number,
1551         ovrdn_flag,
1552         per_in_ler_id,
1553         ovrdn_thru_dt,
1554         created_by,
1555    	creation_date,
1556    	last_update_date,
1557    	last_updated_by,
1558    	last_update_login,
1559         benefit_action_id,
1560         person_action_id
1561       )
1562   Values
1563       (	p_pdp_set(elenum).elig_cvrd_dpnt_id,
1564 	p_pdp_set(elenum).effective_start_date,
1565 	p_pdp_set(elenum).effective_end_date,
1566 	p_pdp_set(elenum).business_group_id,
1567 	p_pdp_set(elenum).prtt_enrt_rslt_id,
1568 	p_pdp_set(elenum).dpnt_person_id,
1569 	p_pdp_set(elenum).cvg_strt_dt,
1570 	p_pdp_set(elenum).cvg_thru_dt,
1571 	p_pdp_set(elenum).cvg_pndg_flag,
1572 	p_pdp_set(elenum).pdp_attribute_category,
1573 	p_pdp_set(elenum).pdp_attribute1,
1574 	p_pdp_set(elenum).pdp_attribute2,
1575 	p_pdp_set(elenum).pdp_attribute3,
1576 	p_pdp_set(elenum).pdp_attribute4,
1577 	p_pdp_set(elenum).pdp_attribute5,
1578 	p_pdp_set(elenum).pdp_attribute6,
1579 	p_pdp_set(elenum).pdp_attribute7,
1580 	p_pdp_set(elenum).pdp_attribute8,
1581 	p_pdp_set(elenum).pdp_attribute9,
1582 	p_pdp_set(elenum).pdp_attribute10,
1583 	p_pdp_set(elenum).pdp_attribute11,
1584 	p_pdp_set(elenum).pdp_attribute12,
1585 	p_pdp_set(elenum).pdp_attribute13,
1586 	p_pdp_set(elenum).pdp_attribute14,
1587 	p_pdp_set(elenum).pdp_attribute15,
1588 	p_pdp_set(elenum).pdp_attribute16,
1589 	p_pdp_set(elenum).pdp_attribute17,
1590 	p_pdp_set(elenum).pdp_attribute18,
1591 	p_pdp_set(elenum).pdp_attribute19,
1592 	p_pdp_set(elenum).pdp_attribute20,
1593 	p_pdp_set(elenum).pdp_attribute21,
1594 	p_pdp_set(elenum).pdp_attribute22,
1595 	p_pdp_set(elenum).pdp_attribute23,
1596 	p_pdp_set(elenum).pdp_attribute24,
1597 	p_pdp_set(elenum).pdp_attribute25,
1598 	p_pdp_set(elenum).pdp_attribute26,
1599 	p_pdp_set(elenum).pdp_attribute27,
1600 	p_pdp_set(elenum).pdp_attribute28,
1601 	p_pdp_set(elenum).pdp_attribute29,
1602 	p_pdp_set(elenum).pdp_attribute30,
1603 	p_pdp_set(elenum).request_id,
1604 	p_pdp_set(elenum).program_application_id,
1605 	p_pdp_set(elenum).program_id,
1606 	p_pdp_set(elenum).program_update_date,
1607 	p_pdp_set(elenum).object_version_number,
1608 	p_pdp_set(elenum).ovrdn_flag,
1609 	p_pdp_set(elenum).per_in_ler_id,
1610 	p_pdp_set(elenum).ovrdn_thru_dt,
1611 	p_pdp_set(elenum).created_by,
1612 	p_pdp_set(elenum).creation_date,
1613 	p_pdp_set(elenum).last_update_date,
1614 	p_pdp_set(elenum).last_updated_by,
1615         p_pdp_set(elenum).last_update_login,
1616         p_benefit_action_id,
1617         p_person_action_id
1618         );
1619       --
1620     end loop;
1621     --
1622   end if;
1623   --
1624   commit;
1625   --
1626 end write_pdp_rbvs;
1627 --
1628 PROCEDURE write_cqb_rbvs
1629   (p_benefit_action_id in     number
1630   ,p_person_action_id  in     number
1631   ,p_cqb_set           in     t_cqb_tab
1632   )
1633 is
1634   --
1635   PRAGMA AUTONOMOUS_TRANSACTION;
1636   --
1637 begin
1638   --
1639   if p_cqb_set.count > 0 then
1640     --
1641     for elenum in p_cqb_set.first ..p_cqb_set.last
1642     loop
1643       --
1644       insert into ben_cbr_quald_bnf_rbv
1645         (cbr_quald_bnf_id
1646         ,quald_bnf_flag
1647         ,quald_bnf_person_id
1648         ,business_group_id
1649         ,cqb_attribute_category
1650         ,cqb_attribute1
1651         ,cqb_attribute2
1652         ,cqb_attribute3
1653         ,cqb_attribute4
1654         ,cqb_attribute5
1655         ,cqb_attribute6
1656         ,cqb_attribute7
1657         ,cqb_attribute8
1658         ,cqb_attribute9
1659         ,cqb_attribute10
1660         ,cqb_attribute11
1661         ,cqb_attribute12
1662         ,cqb_attribute13
1663         ,cqb_attribute14
1664         ,cqb_attribute15
1665         ,cqb_attribute16
1666         ,cqb_attribute17
1667         ,cqb_attribute18
1668         ,cqb_attribute19
1669         ,cqb_attribute20
1670         ,cqb_attribute21
1671         ,cqb_attribute22
1672         ,cqb_attribute23
1673         ,cqb_attribute24
1674         ,cqb_attribute25
1675         ,cqb_attribute26
1676         ,cqb_attribute27
1677         ,cqb_attribute28
1678         ,cqb_attribute29
1679         ,cqb_attribute30
1680         ,last_update_date
1681         ,last_updated_by
1682         ,last_update_login
1683         ,created_by
1684         ,creation_date
1685         ,object_version_number
1686         ,cbr_elig_perd_strt_dt
1687         ,cbr_elig_perd_end_dt
1688         ,cvrd_emp_person_id
1689         ,cbr_inelg_rsn_cd
1690         ,pgm_id
1691         ,ptip_id
1692         ,pl_typ_id
1693         ,benefit_action_id
1694         ,person_action_id
1698         ,p_cqb_set(elenum).quald_bnf_flag
1695         )
1696       values
1697         (p_cqb_set(elenum).cbr_quald_bnf_id
1699         ,p_cqb_set(elenum).quald_bnf_person_id
1700         ,p_cqb_set(elenum).business_group_id
1701         ,p_cqb_set(elenum).cqb_attribute_category
1702         ,p_cqb_set(elenum).cqb_attribute1
1703         ,p_cqb_set(elenum).cqb_attribute2
1704         ,p_cqb_set(elenum).cqb_attribute3
1705         ,p_cqb_set(elenum).cqb_attribute4
1706         ,p_cqb_set(elenum).cqb_attribute5
1707         ,p_cqb_set(elenum).cqb_attribute6
1708         ,p_cqb_set(elenum).cqb_attribute7
1709         ,p_cqb_set(elenum).cqb_attribute8
1710         ,p_cqb_set(elenum).cqb_attribute9
1711         ,p_cqb_set(elenum).cqb_attribute10
1712         ,p_cqb_set(elenum).cqb_attribute11
1713         ,p_cqb_set(elenum).cqb_attribute12
1714         ,p_cqb_set(elenum).cqb_attribute13
1715         ,p_cqb_set(elenum).cqb_attribute14
1716         ,p_cqb_set(elenum).cqb_attribute15
1717         ,p_cqb_set(elenum).cqb_attribute16
1718         ,p_cqb_set(elenum).cqb_attribute17
1719         ,p_cqb_set(elenum).cqb_attribute18
1720         ,p_cqb_set(elenum).cqb_attribute19
1721         ,p_cqb_set(elenum).cqb_attribute20
1722         ,p_cqb_set(elenum).cqb_attribute21
1723         ,p_cqb_set(elenum).cqb_attribute22
1724         ,p_cqb_set(elenum).cqb_attribute23
1725         ,p_cqb_set(elenum).cqb_attribute24
1726         ,p_cqb_set(elenum).cqb_attribute25
1727         ,p_cqb_set(elenum).cqb_attribute26
1728         ,p_cqb_set(elenum).cqb_attribute27
1729         ,p_cqb_set(elenum).cqb_attribute28
1730         ,p_cqb_set(elenum).cqb_attribute29
1731         ,p_cqb_set(elenum).cqb_attribute30
1732         ,p_cqb_set(elenum).last_update_date
1733         ,p_cqb_set(elenum).last_updated_by
1734         ,p_cqb_set(elenum).last_update_login
1735         ,p_cqb_set(elenum).created_by
1736         ,p_cqb_set(elenum).creation_date
1737         ,p_cqb_set(elenum).object_version_number
1738         ,p_cqb_set(elenum).cbr_elig_perd_strt_dt
1739         ,p_cqb_set(elenum).cbr_elig_perd_end_dt
1740         ,p_cqb_set(elenum).cvrd_emp_person_id
1741         ,p_cqb_set(elenum).cbr_inelg_rsn_cd
1742         ,p_cqb_set(elenum).pgm_id
1743         ,p_cqb_set(elenum).ptip_id
1744         ,p_cqb_set(elenum).pl_typ_id
1745         ,p_benefit_action_id
1746         ,p_person_action_id
1747         );
1748       --
1749     end loop;
1750     --
1751   end if;
1752   --
1753   commit;
1754   --
1755 end write_cqb_rbvs;
1756 --
1757 PROCEDURE write_enb_rbvs
1758   (p_benefit_action_id in     number
1759   ,p_person_action_id  in     number
1760   ,p_enb_set           in     t_enb_tab
1761   )
1762 is
1763   --
1764   PRAGMA AUTONOMOUS_TRANSACTION;
1765   --
1766 begin
1767   --
1768   if p_enb_set.count > 0 then
1769     --
1770     for elenum in p_enb_set.first ..p_enb_set.last
1771     loop
1772       --
1773       insert into ben_enrt_bnft_rbv
1774         (enrt_bnft_id
1775 	,dflt_flag
1776 	,val_has_bn_prortd_flag
1777 	,bndry_perd_cd
1778 	,val
1779 	,nnmntry_uom
1780 	,bnft_typ_cd
1781 	,entr_val_at_enrt_flag
1782 	,mn_val
1783 	,mx_val
1784 	,incrmt_val
1785         ,dflt_val
1786 	,rt_typ_cd
1787 	,cvg_mlt_cd
1788 	,ctfn_rqd_flag
1789 	,ordr_num
1790 	,crntly_enrld_flag
1791 	,elig_per_elctbl_chc_id
1792 	,prtt_enrt_rslt_id
1793 	,comp_lvl_fctr_id
1794 	,business_group_id
1795 	,enb_attribute_category
1796 	,enb_attribute1
1797 	,enb_attribute2
1798 	,enb_attribute3
1799 	,enb_attribute4
1800 	,enb_attribute5
1801 	,enb_attribute6
1802 	,enb_attribute7
1803 	,enb_attribute8
1804 	,enb_attribute9
1805 	,enb_attribute10
1806 	,enb_attribute11
1807 	,enb_attribute12
1808 	,enb_attribute13
1809 	,enb_attribute14
1810 	,enb_attribute15
1811 	,enb_attribute16
1812 	,enb_attribute17
1813 	,enb_attribute18
1814 	,enb_attribute19
1815 	,enb_attribute20
1816 	,enb_attribute21
1817 	,enb_attribute22
1818 	,enb_attribute23
1819 	,enb_attribute24
1820 	,enb_attribute25
1821 	,enb_attribute26
1822 	,enb_attribute27
1823 	,enb_attribute28
1824 	,enb_attribute29
1825         ,enb_attribute30
1826         ,request_id
1827         ,program_application_id
1828         ,program_id
1829         ,mx_wout_ctfn_val
1830         ,mx_wo_ctfn_flag
1831         ,program_update_date
1832         ,object_version_number
1833         ,benefit_action_id
1834         ,person_action_id
1835         )
1836      Values
1837         (p_enb_set(elenum).enrt_bnft_id
1838         ,p_enb_set(elenum).dflt_flag
1839         ,p_enb_set(elenum).val_has_bn_prortd_flag
1840         ,p_enb_set(elenum).bndry_perd_cd
1841         ,p_enb_set(elenum).val
1842         ,p_enb_set(elenum).nnmntry_uom
1843         ,p_enb_set(elenum).bnft_typ_cd
1844         ,p_enb_set(elenum).entr_val_at_enrt_flag
1845         ,p_enb_set(elenum).mn_val
1846         ,p_enb_set(elenum).mx_val
1847         ,p_enb_set(elenum).incrmt_val
1848         ,p_enb_set(elenum).dflt_val
1849         ,p_enb_set(elenum).rt_typ_cd
1850         ,p_enb_set(elenum).cvg_mlt_cd
1851         ,p_enb_set(elenum).ctfn_rqd_flag
1852         ,p_enb_set(elenum).ordr_num
1853         ,p_enb_set(elenum).crntly_enrld_flag
1854         ,p_enb_set(elenum).elig_per_elctbl_chc_id
1855         ,p_enb_set(elenum).prtt_enrt_rslt_id
1856         ,p_enb_set(elenum).comp_lvl_fctr_id
1857         ,p_enb_set(elenum).business_group_id
1858         ,p_enb_set(elenum).enb_attribute_category
1859         ,p_enb_set(elenum).enb_attribute1
1860         ,p_enb_set(elenum).enb_attribute2
1861         ,p_enb_set(elenum).enb_attribute3
1865         ,p_enb_set(elenum).enb_attribute7
1862         ,p_enb_set(elenum).enb_attribute4
1863         ,p_enb_set(elenum).enb_attribute5
1864         ,p_enb_set(elenum).enb_attribute6
1866         ,p_enb_set(elenum).enb_attribute8
1867         ,p_enb_set(elenum).enb_attribute9
1868         ,p_enb_set(elenum).enb_attribute10
1869         ,p_enb_set(elenum).enb_attribute11
1870         ,p_enb_set(elenum).enb_attribute12
1871         ,p_enb_set(elenum).enb_attribute13
1872         ,p_enb_set(elenum).enb_attribute14
1873         ,p_enb_set(elenum).enb_attribute15
1874         ,p_enb_set(elenum).enb_attribute16
1875         ,p_enb_set(elenum).enb_attribute17
1876         ,p_enb_set(elenum).enb_attribute18
1877         ,p_enb_set(elenum).enb_attribute19
1878         ,p_enb_set(elenum).enb_attribute20
1879         ,p_enb_set(elenum).enb_attribute21
1880         ,p_enb_set(elenum).enb_attribute22
1881         ,p_enb_set(elenum).enb_attribute23
1882         ,p_enb_set(elenum).enb_attribute24
1883         ,p_enb_set(elenum).enb_attribute25
1884         ,p_enb_set(elenum).enb_attribute26
1885         ,p_enb_set(elenum).enb_attribute27
1886         ,p_enb_set(elenum).enb_attribute28
1887         ,p_enb_set(elenum).enb_attribute29
1888         ,p_enb_set(elenum).enb_attribute30
1889         ,p_enb_set(elenum).request_id
1890         ,p_enb_set(elenum).program_application_id
1891         ,p_enb_set(elenum).program_id
1892         ,p_enb_set(elenum).mx_wout_ctfn_val
1893         ,p_enb_set(elenum).mx_wo_ctfn_flag
1894         ,p_enb_set(elenum).program_update_date
1895         ,p_enb_set(elenum).object_version_number
1896         ,p_benefit_action_id
1897         ,p_person_action_id
1898         );
1899       --
1900     end loop;
1901     --
1902   end if;
1903   --
1904   commit;
1905   --
1906 end write_enb_rbvs;
1907 --
1908 PROCEDURE write_epr_rbvs
1909   (p_benefit_action_id in     number
1910   ,p_person_action_id  in     number
1911   ,p_epr_set           in     t_epr_tab
1912   )
1913 is
1914   --
1915   PRAGMA AUTONOMOUS_TRANSACTION;
1916   --
1917 begin
1918   --
1919   if p_epr_set.count > 0 then
1920     --
1921     for elenum in p_epr_set.first ..p_epr_set.last
1922     loop
1923       --
1924       insert into ben_enrt_prem_rbv
1925         (enrt_prem_id,
1926          val,
1927          uom,
1928          elig_per_elctbl_chc_id,
1929          enrt_bnft_id,
1930          actl_prem_id,
1931          business_group_id,
1932          epr_attribute_category,
1933          epr_attribute1,
1934          epr_attribute2,
1935          epr_attribute3,
1936          epr_attribute4,
1937          epr_attribute5,
1938          epr_attribute6,
1939          epr_attribute7,
1940          epr_attribute8,
1941          epr_attribute9,
1942          epr_attribute10,
1943          epr_attribute11,
1944          epr_attribute12,
1945          epr_attribute13,
1946          epr_attribute14,
1947          epr_attribute15,
1948          epr_attribute16,
1949          epr_attribute17,
1950          epr_attribute18,
1951          epr_attribute19,
1952          epr_attribute20,
1953          epr_attribute21,
1954          epr_attribute22,
1955          epr_attribute23,
1956          epr_attribute24,
1957          epr_attribute25,
1958          epr_attribute26,
1959          epr_attribute27,
1960          epr_attribute28,
1961          epr_attribute29,
1962          epr_attribute30,
1963          object_version_number,
1964          request_id,
1965          program_application_id,
1966          program_id,
1967          program_update_date,
1968          benefit_action_id,
1969          person_action_id
1970         )
1971     VALUES
1972       (p_epr_set(elenum).enrt_prem_id,
1973        p_epr_set(elenum).val,
1974        p_epr_set(elenum).uom,
1975        p_epr_set(elenum).elig_per_elctbl_chc_id,
1976        p_epr_set(elenum).enrt_bnft_id,
1977        p_epr_set(elenum).actl_prem_id,
1978        p_epr_set(elenum).business_group_id,
1979        p_epr_set(elenum).epr_attribute_category,
1980        p_epr_set(elenum).epr_attribute1,
1981        p_epr_set(elenum).epr_attribute2,
1982        p_epr_set(elenum).epr_attribute3,
1983        p_epr_set(elenum).epr_attribute4,
1984        p_epr_set(elenum).epr_attribute5,
1985        p_epr_set(elenum).epr_attribute6,
1986        p_epr_set(elenum).epr_attribute7,
1987        p_epr_set(elenum).epr_attribute8,
1988        p_epr_set(elenum).epr_attribute9,
1989        p_epr_set(elenum).epr_attribute10,
1990        p_epr_set(elenum).epr_attribute11,
1991        p_epr_set(elenum).epr_attribute12,
1992        p_epr_set(elenum).epr_attribute13,
1993        p_epr_set(elenum).epr_attribute14,
1994        p_epr_set(elenum).epr_attribute15,
1995        p_epr_set(elenum).epr_attribute16,
1996        p_epr_set(elenum).epr_attribute17,
1997        p_epr_set(elenum).epr_attribute18,
1998        p_epr_set(elenum).epr_attribute19,
1999        p_epr_set(elenum).epr_attribute20,
2000        p_epr_set(elenum).epr_attribute21,
2001        p_epr_set(elenum).epr_attribute22,
2002        p_epr_set(elenum).epr_attribute23,
2003        p_epr_set(elenum).epr_attribute24,
2004        p_epr_set(elenum).epr_attribute25,
2005        p_epr_set(elenum).epr_attribute26,
2006        p_epr_set(elenum).epr_attribute27,
2007        p_epr_set(elenum).epr_attribute28,
2008        p_epr_set(elenum).epr_attribute29,
2009        p_epr_set(elenum).epr_attribute30,
2010        p_epr_set(elenum).object_version_number,
2011        p_epr_set(elenum).request_id,
2012        p_epr_set(elenum).program_application_id,
2013        p_epr_set(elenum).program_id,
2014        p_epr_set(elenum).program_update_date,
2015        p_benefit_action_id,
2019     end loop;
2016        p_person_action_id
2017        );
2018       --
2020     --
2021   end if;
2022   --
2023   commit;
2024   --
2025 end write_epr_rbvs;
2026 --
2027 PROCEDURE write_ecr_rbvs
2028   (p_benefit_action_id in     number
2029   ,p_person_action_id  in     number
2030   ,p_ecr_set           in     t_ecr_tab
2031   )
2032 is
2033   --
2034   PRAGMA AUTONOMOUS_TRANSACTION;
2035   --
2036 begin
2037   --
2038   if p_ecr_set.count > 0 then
2039     --
2040     for elenum in p_ecr_set.first ..p_ecr_set.last
2041     loop
2042       --
2043       insert into ben_enrt_rt_rbv
2044         (enrt_rt_id,
2045          acty_typ_cd,
2046          tx_typ_cd,
2047          ctfn_rqd_flag,
2048          dflt_flag,
2049          dflt_pndg_ctfn_flag,
2050          dsply_on_enrt_flag,
2051          use_to_calc_net_flx_cr_flag,
2052          entr_val_at_enrt_flag,
2053          asn_on_enrt_flag,
2054          rl_crs_only_flag,
2055          dflt_val,
2056          ann_val,
2057          ann_mn_elcn_val,
2058          ann_mx_elcn_val,
2059          val,
2060          nnmntry_uom,
2061          mx_elcn_val,
2062          mn_elcn_val,
2063          incrmt_elcn_val,
2064          cmcd_acty_ref_perd_cd,
2065          cmcd_mn_elcn_val,
2066          cmcd_mx_elcn_val,
2067          cmcd_val,
2068          cmcd_dflt_val,
2069          rt_usg_cd,
2070          ann_dflt_val,
2071          bnft_rt_typ_cd,
2072          rt_mlt_cd,
2073          dsply_mn_elcn_val,
2074          dsply_mx_elcn_val,
2075          entr_ann_val_flag,
2076          rt_strt_dt,
2077          rt_strt_dt_cd,
2078          rt_strt_dt_rl,
2079          rt_typ_cd,
2080          elig_per_elctbl_chc_id,
2081          acty_base_rt_id,
2082          spcl_rt_enrt_rt_id,
2083          enrt_bnft_id,
2084          prtt_rt_val_id,
2085          decr_bnft_prvdr_pool_id,
2086          cvg_amt_calc_mthd_id,
2087          actl_prem_id,
2088          comp_lvl_fctr_id,
2089          ptd_comp_lvl_fctr_id,
2090          clm_comp_lvl_fctr_id,
2091          business_group_id,
2092          ecr_attribute_category,
2093          ecr_attribute1,
2094          ecr_attribute2,
2095          ecr_attribute3,
2096          ecr_attribute4,
2097          ecr_attribute5,
2098          ecr_attribute6,
2099          ecr_attribute7,
2100          ecr_attribute8,
2101          ecr_attribute9,
2102          ecr_attribute10,
2103          ecr_attribute11,
2104          ecr_attribute12,
2105          ecr_attribute13,
2106          ecr_attribute14,
2107          ecr_attribute15,
2108          ecr_attribute16,
2109          ecr_attribute17,
2110          ecr_attribute18,
2111          ecr_attribute19,
2112          ecr_attribute20,
2113          ecr_attribute21,
2114          ecr_attribute22,
2115          ecr_attribute23,
2116          ecr_attribute24,
2117          ecr_attribute25,
2118          ecr_attribute26,
2119          ecr_attribute27,
2120          ecr_attribute28,
2121          ecr_attribute29,
2122          ecr_attribute30,
2123          last_update_login,
2124          created_by,
2125          creation_date,
2126          last_updated_by,
2127          last_update_date,
2128          request_id,
2129          program_application_id,
2130          program_id,
2131          program_update_date,
2132          object_version_number,
2133          benefit_action_id,
2134          person_action_id
2135          )
2136       VALUES
2137         (p_ecr_set(elenum).enrt_rt_id,
2138          p_ecr_set(elenum).acty_typ_cd,
2139          p_ecr_set(elenum).tx_typ_cd,
2140          p_ecr_set(elenum).ctfn_rqd_flag,
2141          p_ecr_set(elenum).dflt_flag,
2142          p_ecr_set(elenum).dflt_pndg_ctfn_flag,
2143          p_ecr_set(elenum).dsply_on_enrt_flag,
2144          p_ecr_set(elenum).use_to_calc_net_flx_cr_flag,
2145          p_ecr_set(elenum).entr_val_at_enrt_flag,
2146          p_ecr_set(elenum).asn_on_enrt_flag,
2147          p_ecr_set(elenum).rl_crs_only_flag,
2148          p_ecr_set(elenum).dflt_val,
2149          p_ecr_set(elenum).ann_val,
2150          p_ecr_set(elenum).ann_mn_elcn_val,
2151          p_ecr_set(elenum).ann_mx_elcn_val,
2152          p_ecr_set(elenum).val,
2153          p_ecr_set(elenum).nnmntry_uom,
2154          p_ecr_set(elenum).mx_elcn_val,
2155          p_ecr_set(elenum).mn_elcn_val,
2156          p_ecr_set(elenum).incrmt_elcn_val,
2157          p_ecr_set(elenum).cmcd_acty_ref_perd_cd,
2158          p_ecr_set(elenum).cmcd_mn_elcn_val,
2159          p_ecr_set(elenum).cmcd_mx_elcn_val,
2160          p_ecr_set(elenum).cmcd_val,
2161          p_ecr_set(elenum).cmcd_dflt_val,
2162          p_ecr_set(elenum).rt_usg_cd,
2163          p_ecr_set(elenum).ann_dflt_val,
2164          p_ecr_set(elenum).bnft_rt_typ_cd,
2165          p_ecr_set(elenum).rt_mlt_cd,
2166          p_ecr_set(elenum).dsply_mn_elcn_val,
2167          p_ecr_set(elenum).dsply_mx_elcn_val,
2168          p_ecr_set(elenum).entr_ann_val_flag,
2169          p_ecr_set(elenum).rt_strt_dt,
2170          p_ecr_set(elenum).rt_strt_dt_cd,
2171          p_ecr_set(elenum).rt_strt_dt_rl,
2172          p_ecr_set(elenum).rt_typ_cd,
2173          p_ecr_set(elenum).elig_per_elctbl_chc_id,
2174          p_ecr_set(elenum).acty_base_rt_id,
2175          p_ecr_set(elenum).spcl_rt_enrt_rt_id,
2176          p_ecr_set(elenum).enrt_bnft_id,
2177          p_ecr_set(elenum).prtt_rt_val_id,
2178          p_ecr_set(elenum).decr_bnft_prvdr_pool_id,
2179          p_ecr_set(elenum).cvg_amt_calc_mthd_id,
2180          p_ecr_set(elenum).actl_prem_id,
2184          p_ecr_set(elenum).business_group_id,
2181          p_ecr_set(elenum).comp_lvl_fctr_id,
2182          p_ecr_set(elenum).ptd_comp_lvl_fctr_id,
2183          p_ecr_set(elenum).clm_comp_lvl_fctr_id,
2185          p_ecr_set(elenum).ecr_attribute_category,
2186          p_ecr_set(elenum).ecr_attribute1,
2187          p_ecr_set(elenum).ecr_attribute2,
2188          p_ecr_set(elenum).ecr_attribute3,
2189          p_ecr_set(elenum).ecr_attribute4,
2190          p_ecr_set(elenum).ecr_attribute5,
2191          p_ecr_set(elenum).ecr_attribute6,
2192          p_ecr_set(elenum).ecr_attribute7,
2193          p_ecr_set(elenum).ecr_attribute8,
2194          p_ecr_set(elenum).ecr_attribute9,
2195          p_ecr_set(elenum).ecr_attribute10,
2196          p_ecr_set(elenum).ecr_attribute11,
2197          p_ecr_set(elenum).ecr_attribute12,
2198          p_ecr_set(elenum).ecr_attribute13,
2199          p_ecr_set(elenum).ecr_attribute14,
2200          p_ecr_set(elenum).ecr_attribute15,
2201          p_ecr_set(elenum).ecr_attribute16,
2202          p_ecr_set(elenum).ecr_attribute17,
2203          p_ecr_set(elenum).ecr_attribute18,
2204          p_ecr_set(elenum).ecr_attribute19,
2205          p_ecr_set(elenum).ecr_attribute20,
2206          p_ecr_set(elenum).ecr_attribute21,
2207          p_ecr_set(elenum).ecr_attribute22,
2208          p_ecr_set(elenum).ecr_attribute23,
2209          p_ecr_set(elenum).ecr_attribute24,
2210          p_ecr_set(elenum).ecr_attribute25,
2211          p_ecr_set(elenum).ecr_attribute26,
2212          p_ecr_set(elenum).ecr_attribute27,
2213          p_ecr_set(elenum).ecr_attribute28,
2214          p_ecr_set(elenum).ecr_attribute29,
2215          p_ecr_set(elenum).ecr_attribute30,
2216          p_ecr_set(elenum).last_update_login,
2217          p_ecr_set(elenum).created_by,
2218          p_ecr_set(elenum).creation_date,
2219          p_ecr_set(elenum).last_updated_by,
2220          p_ecr_set(elenum).last_update_date,
2221          p_ecr_set(elenum).request_id,
2222          p_ecr_set(elenum).program_application_id,
2223          p_ecr_set(elenum).program_id,
2224          p_ecr_set(elenum).program_update_date,
2225          p_ecr_set(elenum).object_version_number,
2226          p_benefit_action_id,
2227          p_person_action_id
2228         );
2229       --
2230     end loop;
2231     --
2232   end if;
2233   --
2234   commit;
2235   --
2236 end write_ecr_rbvs;
2237 --
2238 PROCEDURE write_prv_rbvs
2239   (p_benefit_action_id in     number
2240   ,p_person_action_id  in     number
2241   ,p_prv_set           in     t_prv_tab
2242   )
2243 is
2244   --
2245   PRAGMA AUTONOMOUS_TRANSACTION;
2246   --
2247 begin
2248   --
2249   if p_prv_set.count > 0 then
2250     --
2251     for elenum in p_prv_set.first ..p_prv_set.last
2252     loop
2253       --
2254       insert into ben_prtt_rt_val_rbv
2255       (	prtt_rt_val_id,
2256     	rt_strt_dt,
2257     	rt_end_dt,
2258     	rt_typ_cd,
2259     	tx_typ_cd,
2260     	acty_typ_cd,
2261     	mlt_cd,
2262     	acty_ref_perd_cd,
2263     	rt_val,
2264     	ann_rt_val,
2265     	cmcd_rt_val,
2266     	cmcd_ref_perd_cd,
2267     	bnft_rt_typ_cd,
2268     	dsply_on_enrt_flag,
2269     	rt_ovridn_flag,
2270     	rt_ovridn_thru_dt,
2271     	elctns_made_dt,
2272     	prtt_rt_val_stat_cd,
2273     	prtt_enrt_rslt_id,
2274     	cvg_amt_calc_mthd_id,
2275     	actl_prem_id,
2276     	comp_lvl_fctr_id,
2277     	element_entry_value_id,
2278     	per_in_ler_id,
2279     	ended_per_in_ler_id,
2280     	acty_base_rt_id,
2281     	prtt_reimbmt_rqst_id,
2282         prtt_rmt_aprvd_fr_pymt_id,
2283     	business_group_id,
2284     	prv_attribute_category,
2285     	prv_attribute1,
2286     	prv_attribute2,
2287     	prv_attribute3,
2288     	prv_attribute4,
2289     	prv_attribute5,
2290     	prv_attribute6,
2291     	prv_attribute7,
2292     	prv_attribute8,
2293     	prv_attribute9,
2294     	prv_attribute10,
2295     	prv_attribute11,
2296     	prv_attribute12,
2297     	prv_attribute13,
2298     	prv_attribute14,
2299     	prv_attribute15,
2300     	prv_attribute16,
2301     	prv_attribute17,
2302     	prv_attribute18,
2303     	prv_attribute19,
2304     	prv_attribute20,
2305     	prv_attribute21,
2306     	prv_attribute22,
2307     	prv_attribute23,
2308     	prv_attribute24,
2309     	prv_attribute25,
2310     	prv_attribute26,
2311     	prv_attribute27,
2312     	prv_attribute28,
2313     	prv_attribute29,
2314     	prv_attribute30,
2315     	object_version_number,
2316         benefit_action_id,
2317         person_action_id
2318       )
2319       Values
2320       (	p_prv_set(elenum).prtt_rt_val_id,
2321         p_prv_set(elenum).rt_strt_dt,
2322         p_prv_set(elenum).rt_end_dt,
2323         p_prv_set(elenum).rt_typ_cd,
2324         p_prv_set(elenum).tx_typ_cd,
2325         p_prv_set(elenum).acty_typ_cd,
2326         p_prv_set(elenum).mlt_cd,
2327         p_prv_set(elenum).acty_ref_perd_cd,
2328         p_prv_set(elenum).rt_val,
2329         p_prv_set(elenum).ann_rt_val,
2330         p_prv_set(elenum).cmcd_rt_val,
2331         p_prv_set(elenum).cmcd_ref_perd_cd,
2332         p_prv_set(elenum).bnft_rt_typ_cd,
2333         p_prv_set(elenum).dsply_on_enrt_flag,
2334         p_prv_set(elenum).rt_ovridn_flag,
2335         p_prv_set(elenum).rt_ovridn_thru_dt,
2336         p_prv_set(elenum).elctns_made_dt,
2337         p_prv_set(elenum).prtt_rt_val_stat_cd,
2338         p_prv_set(elenum).prtt_enrt_rslt_id,
2342         p_prv_set(elenum).element_entry_value_id,
2339         p_prv_set(elenum).cvg_amt_calc_mthd_id,
2340         p_prv_set(elenum).actl_prem_id,
2341         p_prv_set(elenum).comp_lvl_fctr_id,
2343         p_prv_set(elenum).per_in_ler_id,
2344         p_prv_set(elenum).ended_per_in_ler_id,
2345         p_prv_set(elenum).acty_base_rt_id,
2346         p_prv_set(elenum).prtt_reimbmt_rqst_id,
2347         p_prv_set(elenum).prtt_rmt_aprvd_fr_pymt_id,
2348         p_prv_set(elenum).business_group_id,
2349         p_prv_set(elenum).prv_attribute_category,
2350         p_prv_set(elenum).prv_attribute1,
2351         p_prv_set(elenum).prv_attribute2,
2352         p_prv_set(elenum).prv_attribute3,
2353         p_prv_set(elenum).prv_attribute4,
2354         p_prv_set(elenum).prv_attribute5,
2355         p_prv_set(elenum).prv_attribute6,
2356         p_prv_set(elenum).prv_attribute7,
2357         p_prv_set(elenum).prv_attribute8,
2358         p_prv_set(elenum).prv_attribute9,
2359         p_prv_set(elenum).prv_attribute10,
2360         p_prv_set(elenum).prv_attribute11,
2361         p_prv_set(elenum).prv_attribute12,
2362         p_prv_set(elenum).prv_attribute13,
2363         p_prv_set(elenum).prv_attribute14,
2364         p_prv_set(elenum).prv_attribute15,
2365         p_prv_set(elenum).prv_attribute16,
2366         p_prv_set(elenum).prv_attribute17,
2367         p_prv_set(elenum).prv_attribute18,
2368         p_prv_set(elenum).prv_attribute19,
2369         p_prv_set(elenum).prv_attribute20,
2370         p_prv_set(elenum).prv_attribute21,
2371         p_prv_set(elenum).prv_attribute22,
2372         p_prv_set(elenum).prv_attribute23,
2373         p_prv_set(elenum).prv_attribute24,
2374         p_prv_set(elenum).prv_attribute25,
2375         p_prv_set(elenum).prv_attribute26,
2376         p_prv_set(elenum).prv_attribute27,
2377         p_prv_set(elenum).prv_attribute28,
2378         p_prv_set(elenum).prv_attribute29,
2379         p_prv_set(elenum).prv_attribute30,
2380         p_prv_set(elenum).object_version_number,
2381         p_benefit_action_id,
2382         p_person_action_id
2383       );
2384       --
2385     end loop;
2386     --
2387   end if;
2388   --
2389   commit;
2390   --
2391 end write_prv_rbvs;
2392 --
2393 PROCEDURE write_pen_rbvs
2394   (p_benefit_action_id in     number
2395   ,p_person_action_id  in     number
2396   ,p_pen_set           in     t_pen_tab
2397   )
2398 is
2399   --
2400   PRAGMA AUTONOMOUS_TRANSACTION;
2401   --
2402 begin
2403   --
2404   if p_pen_set.count > 0 then
2405     --
2406     for elenum in p_pen_set.first ..p_pen_set.last
2407     loop
2408       --
2409       insert into ben_prtt_enrt_rslt_f_rbv
2410         ( prtt_enrt_rslt_id,
2411           effective_start_date,
2412           effective_end_date,
2413           business_group_id,
2414           oipl_id,
2415           person_id,
2416           assignment_id,
2417           pgm_id,
2418           pl_id,
2419           rplcs_sspndd_rslt_id,
2420           ptip_id,
2421           pl_typ_id,
2422           ler_id,
2423           sspndd_flag,
2424           prtt_is_cvrd_flag,
2425           bnft_amt,
2426           uom     ,
2427           orgnl_enrt_dt,
2428           enrt_mthd_cd,
2429           no_lngr_elig_flag,
2430           enrt_ovridn_flag,
2431           enrt_ovrid_rsn_cd,
2432           erlst_deenrt_dt,
2433           enrt_cvg_strt_dt,
2434           enrt_cvg_thru_dt,
2435           enrt_ovrid_thru_dt,
2436           pl_ordr_num,
2437           plip_ordr_num,
2438           ptip_ordr_num,
2439           oipl_ordr_num,
2440           pen_attribute_category,
2441           pen_attribute1,
2442           pen_attribute2,
2443           pen_attribute3,
2444           pen_attribute4,
2445           pen_attribute5,
2446           pen_attribute6,
2447           pen_attribute7,
2448           pen_attribute8,
2449           pen_attribute9,
2450           pen_attribute10,
2451           pen_attribute11,
2452           pen_attribute12,
2453           pen_attribute13,
2454           pen_attribute14,
2455           pen_attribute15,
2456           pen_attribute16,
2457           pen_attribute17,
2458           pen_attribute18,
2459           pen_attribute19,
2460           pen_attribute20,
2461           pen_attribute21,
2462           pen_attribute22,
2463           pen_attribute23,
2464           pen_attribute24,
2465           pen_attribute25,
2466           pen_attribute26,
2467           pen_attribute27,
2468           pen_attribute28,
2469           pen_attribute29,
2470           pen_attribute30,
2471           request_id,
2472           program_application_id,
2473           program_id,
2474           program_update_date,
2475           object_version_number,
2476           per_in_ler_id,
2477           bnft_typ_cd,
2478           bnft_ordr_num,
2479           prtt_enrt_rslt_stat_cd,
2480           bnft_nnmntry_uom,
2481           comp_lvl_cd,
2482           created_by,
2483           creation_date,
2484           last_update_date,
2485           last_updated_by,
2486           last_update_login,
2487           benefit_action_id,
2488           person_action_id
2489           )
2490         Values
2491           (p_pen_set(elenum).prtt_enrt_rslt_id,
2492           p_pen_set(elenum).effective_start_date,
2493           p_pen_set(elenum).effective_end_date,
2494           p_pen_set(elenum).business_group_id,
2495           p_pen_set(elenum).oipl_id,
2499           p_pen_set(elenum).pl_id,
2496           p_pen_set(elenum).person_id,
2497           p_pen_set(elenum).assignment_id,
2498           p_pen_set(elenum).pgm_id,
2500           p_pen_set(elenum).rplcs_sspndd_rslt_id,
2501           p_pen_set(elenum).ptip_id,
2502           p_pen_set(elenum).pl_typ_id,
2503           p_pen_set(elenum).ler_id,
2504           p_pen_set(elenum).sspndd_flag,
2505           p_pen_set(elenum).prtt_is_cvrd_flag,
2506           p_pen_set(elenum).bnft_amt,
2507           p_pen_set(elenum).uom     ,
2508           p_pen_set(elenum).orgnl_enrt_dt,
2509           p_pen_set(elenum).enrt_mthd_cd,
2510           p_pen_set(elenum).no_lngr_elig_flag,
2511           p_pen_set(elenum).enrt_ovridn_flag,
2512           p_pen_set(elenum).enrt_ovrid_rsn_cd,
2513           p_pen_set(elenum).erlst_deenrt_dt,
2514           p_pen_set(elenum).enrt_cvg_strt_dt,
2515           p_pen_set(elenum).enrt_cvg_thru_dt,
2516           p_pen_set(elenum).enrt_ovrid_thru_dt,
2517           p_pen_set(elenum).pl_ordr_num,
2518           p_pen_set(elenum).plip_ordr_num,
2519           p_pen_set(elenum).ptip_ordr_num,
2520           p_pen_set(elenum).oipl_ordr_num,
2521           p_pen_set(elenum).pen_attribute_category,
2522           p_pen_set(elenum).pen_attribute1,
2523           p_pen_set(elenum).pen_attribute2,
2524           p_pen_set(elenum).pen_attribute3,
2525           p_pen_set(elenum).pen_attribute4,
2526           p_pen_set(elenum).pen_attribute5,
2527           p_pen_set(elenum).pen_attribute6,
2528           p_pen_set(elenum).pen_attribute7,
2529           p_pen_set(elenum).pen_attribute8,
2530           p_pen_set(elenum).pen_attribute9,
2531           p_pen_set(elenum).pen_attribute10,
2532           p_pen_set(elenum).pen_attribute11,
2533           p_pen_set(elenum).pen_attribute12,
2534           p_pen_set(elenum).pen_attribute13,
2535           p_pen_set(elenum).pen_attribute14,
2536           p_pen_set(elenum).pen_attribute15,
2537           p_pen_set(elenum).pen_attribute16,
2538           p_pen_set(elenum).pen_attribute17,
2539           p_pen_set(elenum).pen_attribute18,
2540           p_pen_set(elenum).pen_attribute19,
2541           p_pen_set(elenum).pen_attribute20,
2542           p_pen_set(elenum).pen_attribute21,
2543           p_pen_set(elenum).pen_attribute22,
2544           p_pen_set(elenum).pen_attribute23,
2545           p_pen_set(elenum).pen_attribute24,
2546           p_pen_set(elenum).pen_attribute25,
2547           p_pen_set(elenum).pen_attribute26,
2548           p_pen_set(elenum).pen_attribute27,
2549           p_pen_set(elenum).pen_attribute28,
2550           p_pen_set(elenum).pen_attribute29,
2551           p_pen_set(elenum).pen_attribute30,
2552           p_pen_set(elenum).request_id,
2553           p_pen_set(elenum).program_application_id,
2554           p_pen_set(elenum).program_id,
2555           p_pen_set(elenum).program_update_date,
2556           p_pen_set(elenum).object_version_number,
2557           p_pen_set(elenum).per_in_ler_id,
2558           p_pen_set(elenum).bnft_typ_cd,
2559           p_pen_set(elenum).bnft_ordr_num,
2560           p_pen_set(elenum).prtt_enrt_rslt_stat_cd,
2561           p_pen_set(elenum).bnft_nnmntry_uom,
2562           p_pen_set(elenum).comp_lvl_cd,
2563           p_pen_set(elenum).created_by,
2564           p_pen_set(elenum).creation_date,
2565           p_pen_set(elenum).last_update_date,
2566           p_pen_set(elenum).last_updated_by,
2567           p_pen_set(elenum).last_update_login,
2568           p_benefit_action_id,
2569           p_person_action_id
2570         );
2571       --
2572     end loop;
2573     --
2574   end if;
2575   --
2576   commit;
2577   --
2578 end write_pen_rbvs;
2579 --
2580 PROCEDURE write_pcm_rbvs
2581   (p_benefit_action_id in     number
2582   ,p_person_action_id  in     number
2583   ,p_pcm_set           in     t_pcm_tab
2584   )
2585 is
2586   --
2587   PRAGMA AUTONOMOUS_TRANSACTION;
2588   --
2589 begin
2590   --
2591   if p_pcm_set.count > 0 then
2592     --
2593     for elenum in p_pcm_set.first ..p_pcm_set.last
2594     loop
2595       --
2596       insert into ben_per_cm_f_rbv
2597       (	per_cm_id,
2598     	effective_start_date,
2599     	effective_end_date,
2600     	lf_evt_ocrd_dt,
2601         rqstbl_untl_dt,
2602     	ler_id,
2603     	per_in_ler_id,
2604     	prtt_enrt_actn_id,
2605     	person_id,
2606     	bnf_person_id,
2607     	dpnt_person_id,
2608     	cm_typ_id,
2609     	business_group_id,
2610     	pcm_attribute_category,
2611     	pcm_attribute1,
2612     	pcm_attribute2,
2613     	pcm_attribute3,
2614     	pcm_attribute4,
2615     	pcm_attribute5,
2616     	pcm_attribute6,
2617     	pcm_attribute7,
2618     	pcm_attribute8,
2619     	pcm_attribute9,
2620     	pcm_attribute10,
2621     	pcm_attribute11,
2622     	pcm_attribute12,
2623     	pcm_attribute13,
2624     	pcm_attribute14,
2625     	pcm_attribute15,
2626     	pcm_attribute16,
2627     	pcm_attribute17,
2628     	pcm_attribute18,
2629     	pcm_attribute19,
2630     	pcm_attribute20,
2631     	pcm_attribute21,
2632     	pcm_attribute22,
2633     	pcm_attribute23,
2634     	pcm_attribute24,
2635     	pcm_attribute25,
2636     	pcm_attribute26,
2637     	pcm_attribute27,
2638     	pcm_attribute28,
2639     	pcm_attribute29,
2640     	pcm_attribute30,
2641     	request_id,
2642     	program_application_id,
2643     	program_id,
2644     	program_update_date,
2645     	object_version_number
2646        	, created_by,
2647        	creation_date,
2648        	last_update_date,
2649        	last_updated_by,
2650        	last_update_login,
2651         benefit_action_id,
2652         person_action_id
2653       )
2654       Values
2655       (	p_pcm_set(elenum).per_cm_id,
2656     	p_pcm_set(elenum).effective_start_date,
2657     	p_pcm_set(elenum).effective_end_date,
2658     	p_pcm_set(elenum).lf_evt_ocrd_dt,
2659     	p_pcm_set(elenum).rqstbl_untl_dt,
2660     	p_pcm_set(elenum).ler_id,
2661     	p_pcm_set(elenum).per_in_ler_id,
2662     	p_pcm_set(elenum).prtt_enrt_actn_id,
2663     	p_pcm_set(elenum).person_id,
2664     	p_pcm_set(elenum).bnf_person_id,
2665     	p_pcm_set(elenum).dpnt_person_id,
2666     	p_pcm_set(elenum).cm_typ_id,
2667     	p_pcm_set(elenum).business_group_id,
2668     	p_pcm_set(elenum).pcm_attribute_category,
2669     	p_pcm_set(elenum).pcm_attribute1,
2670     	p_pcm_set(elenum).pcm_attribute2,
2671     	p_pcm_set(elenum).pcm_attribute3,
2672     	p_pcm_set(elenum).pcm_attribute4,
2673     	p_pcm_set(elenum).pcm_attribute5,
2674     	p_pcm_set(elenum).pcm_attribute6,
2675     	p_pcm_set(elenum).pcm_attribute7,
2676     	p_pcm_set(elenum).pcm_attribute8,
2677     	p_pcm_set(elenum).pcm_attribute9,
2678     	p_pcm_set(elenum).pcm_attribute10,
2679     	p_pcm_set(elenum).pcm_attribute11,
2680     	p_pcm_set(elenum).pcm_attribute12,
2681     	p_pcm_set(elenum).pcm_attribute13,
2682     	p_pcm_set(elenum).pcm_attribute14,
2683     	p_pcm_set(elenum).pcm_attribute15,
2684     	p_pcm_set(elenum).pcm_attribute16,
2685     	p_pcm_set(elenum).pcm_attribute17,
2686     	p_pcm_set(elenum).pcm_attribute18,
2687     	p_pcm_set(elenum).pcm_attribute19,
2688     	p_pcm_set(elenum).pcm_attribute20,
2689     	p_pcm_set(elenum).pcm_attribute21,
2690     	p_pcm_set(elenum).pcm_attribute22,
2691     	p_pcm_set(elenum).pcm_attribute23,
2692     	p_pcm_set(elenum).pcm_attribute24,
2693     	p_pcm_set(elenum).pcm_attribute25,
2694     	p_pcm_set(elenum).pcm_attribute26,
2695     	p_pcm_set(elenum).pcm_attribute27,
2696     	p_pcm_set(elenum).pcm_attribute28,
2697     	p_pcm_set(elenum).pcm_attribute29,
2698     	p_pcm_set(elenum).pcm_attribute30,
2699     	p_pcm_set(elenum).request_id,
2700     	p_pcm_set(elenum).program_application_id,
2701     	p_pcm_set(elenum).program_id,
2702     	p_pcm_set(elenum).program_update_date,
2703     	p_pcm_set(elenum).object_version_number,
2704     	p_pcm_set(elenum).created_by,
2705     	p_pcm_set(elenum).creation_date,
2706     	p_pcm_set(elenum).last_update_date,
2707     	p_pcm_set(elenum).last_updated_by,
2708     	p_pcm_set(elenum).last_update_login,
2709         p_benefit_action_id,
2710         p_person_action_id
2711       );
2712       --
2713     end loop;
2714     --
2715   end if;
2716   --
2717   commit;
2718   --
2719 end write_pcm_rbvs;
2720 --
2721 PROCEDURE write_bpl_rbvs
2722   (p_benefit_action_id in     number
2723   ,p_person_action_id  in     number
2724   ,p_bpl_set           in     t_bpl_tab
2725   )
2726 is
2727   --
2728   PRAGMA AUTONOMOUS_TRANSACTION;
2729   --
2730 begin
2731   --
2732   if p_bpl_set.count > 0 then
2733     --
2734     for elenum in p_bpl_set.first ..p_bpl_set.last
2735     loop
2736       --
2737       insert into ben_bnft_prvdd_ldgr_f_rbv
2738       (	bnft_prvdd_ldgr_id,
2739     	effective_start_date,
2740     	effective_end_date,
2741     	prtt_ro_of_unusd_amt_flag,
2742     	frftd_val,
2743     	prvdd_val,
2744     	used_val,
2745     	bnft_prvdr_pool_id,
2746     	acty_base_rt_id,
2747     	per_in_ler_id,
2748     	prtt_enrt_rslt_id,
2749     	business_group_id,
2750     	bpl_attribute_category,
2751     	bpl_attribute1,
2752     	bpl_attribute2,
2753     	bpl_attribute3,
2754     	bpl_attribute4,
2755     	bpl_attribute5,
2756     	bpl_attribute6,
2757     	bpl_attribute7,
2758     	bpl_attribute8,
2759     	bpl_attribute9,
2760     	bpl_attribute10,
2761     	bpl_attribute11,
2762     	bpl_attribute12,
2763     	bpl_attribute13,
2764     	bpl_attribute14,
2765     	bpl_attribute15,
2766     	bpl_attribute16,
2767     	bpl_attribute17,
2768     	bpl_attribute18,
2769     	bpl_attribute19,
2770     	bpl_attribute20,
2771     	bpl_attribute21,
2772     	bpl_attribute22,
2773     	bpl_attribute23,
2774     	bpl_attribute24,
2775     	bpl_attribute25,
2776     	bpl_attribute26,
2777     	bpl_attribute27,
2778     	bpl_attribute28,
2779     	bpl_attribute29,
2780     	bpl_attribute30,
2781     	object_version_number,
2782     	cash_recd_val
2783        	, created_by,
2784        	creation_date,
2785        	last_update_date,
2786        	last_updated_by,
2787        	last_update_login,
2788         benefit_action_id,
2789         person_action_id
2790       )
2791       Values
2792       (	p_bpl_set(elenum).bnft_prvdd_ldgr_id,
2793     	p_bpl_set(elenum).effective_start_date,
2794     	p_bpl_set(elenum).effective_end_date,
2795     	p_bpl_set(elenum).prtt_ro_of_unusd_amt_flag,
2796     	p_bpl_set(elenum).frftd_val,
2797     	p_bpl_set(elenum).prvdd_val,
2798     	p_bpl_set(elenum).used_val,
2799     	p_bpl_set(elenum).bnft_prvdr_pool_id,
2800     	p_bpl_set(elenum).acty_base_rt_id,
2801     	p_bpl_set(elenum).per_in_ler_id,
2802     	p_bpl_set(elenum).prtt_enrt_rslt_id,
2803     	p_bpl_set(elenum).business_group_id,
2804     	p_bpl_set(elenum).bpl_attribute_category,
2805     	p_bpl_set(elenum).bpl_attribute1,
2806     	p_bpl_set(elenum).bpl_attribute2,
2807     	p_bpl_set(elenum).bpl_attribute3,
2808     	p_bpl_set(elenum).bpl_attribute4,
2809     	p_bpl_set(elenum).bpl_attribute5,
2810     	p_bpl_set(elenum).bpl_attribute6,
2811     	p_bpl_set(elenum).bpl_attribute7,
2812     	p_bpl_set(elenum).bpl_attribute8,
2813     	p_bpl_set(elenum).bpl_attribute9,
2814     	p_bpl_set(elenum).bpl_attribute10,
2815     	p_bpl_set(elenum).bpl_attribute11,
2816     	p_bpl_set(elenum).bpl_attribute12,
2817     	p_bpl_set(elenum).bpl_attribute13,
2818     	p_bpl_set(elenum).bpl_attribute14,
2819     	p_bpl_set(elenum).bpl_attribute15,
2820     	p_bpl_set(elenum).bpl_attribute16,
2821     	p_bpl_set(elenum).bpl_attribute17,
2822     	p_bpl_set(elenum).bpl_attribute18,
2823     	p_bpl_set(elenum).bpl_attribute19,
2824     	p_bpl_set(elenum).bpl_attribute20,
2825     	p_bpl_set(elenum).bpl_attribute21,
2826     	p_bpl_set(elenum).bpl_attribute22,
2827     	p_bpl_set(elenum).bpl_attribute23,
2828     	p_bpl_set(elenum).bpl_attribute24,
2829     	p_bpl_set(elenum).bpl_attribute25,
2830     	p_bpl_set(elenum).bpl_attribute26,
2831     	p_bpl_set(elenum).bpl_attribute27,
2832     	p_bpl_set(elenum).bpl_attribute28,
2833     	p_bpl_set(elenum).bpl_attribute29,
2834     	p_bpl_set(elenum).bpl_attribute30,
2835     	p_bpl_set(elenum).object_version_number,
2836     	p_bpl_set(elenum).cash_recd_val,
2837     	p_bpl_set(elenum).created_by,
2838         p_bpl_set(elenum).creation_date,
2839         p_bpl_set(elenum).last_update_date,
2840         p_bpl_set(elenum).last_updated_by,
2841         p_bpl_set(elenum).last_update_login,
2842         p_benefit_action_id,
2843         p_person_action_id
2844       );
2845       --
2846     end loop;
2847     --
2848   end if;
2849   --
2850   commit;
2851   --
2852 end write_bpl_rbvs;
2853 --
2854 PROCEDURE write_cwbmh_rbvs
2855   (p_benefit_action_id in     number
2856   ,p_person_action_id  in     number
2857   ,p_cwbmh_set         in     t_cwbmh_tab
2858   )
2859 is
2860   --
2861   PRAGMA AUTONOMOUS_TRANSACTION;
2862   --
2863 begin
2864   --
2865   if p_cwbmh_set.count > 0 then
2866     --
2867     for elenum in p_cwbmh_set.first ..p_cwbmh_set.last
2868     loop
2869       --
2870       insert into ben_cwb_mgr_hrchy_rbv
2871         (mgr_elig_per_elctbl_chc_id
2872         ,emp_elig_per_elctbl_chc_id
2873         ,lvl_num
2874         ,last_update_date
2875         ,last_updated_by
2876         ,last_update_login
2877         ,created_by
2878         ,creation_date
2879         ,object_version_number
2880         ,benefit_action_id
2881         ,person_action_id
2882         )
2883       Values
2884         (p_cwbmh_set(elenum).mgr_elig_per_elctbl_chc_id
2885         ,p_cwbmh_set(elenum).emp_elig_per_elctbl_chc_id
2886         ,p_cwbmh_set(elenum).lvl_num
2887         ,p_cwbmh_set(elenum).last_update_date
2888         ,p_cwbmh_set(elenum).last_updated_by
2889         ,p_cwbmh_set(elenum).last_update_login
2890         ,p_cwbmh_set(elenum).created_by
2891         ,p_cwbmh_set(elenum).creation_date
2892         ,p_cwbmh_set(elenum).object_version_number
2893         ,p_benefit_action_id
2894         ,p_person_action_id
2895         );
2896       --
2897     end loop;
2898     --
2899   end if;
2900   --
2901   commit;
2902   --
2903 end write_cwbmh_rbvs;
2904 --
2905 PROCEDURE populate_benmngle_rbvs
2906   (p_benefit_action_id in     number
2907   ,p_person_action_id  in     number
2908   ,p_validate_flag     in     varchar2
2909   )
2910 IS
2911   --
2912   l_ppl_set    t_ppl_tab;
2913   l_pil_set    t_pil_tab;
2914   l_crp_set    t_crp_tab;
2915   l_pep_set    t_pep_tab;
2916   l_epo_set    t_epo_tab;
2917   l_epe_set    t_epe_tab;
2918   l_pel_set    t_pel_tab;
2919   l_ecc_set    t_ecc_tab;
2920   l_egd_set    t_egd_tab;
2921   l_pdp_set    t_pdp_tab;
2922   l_cqb_set    t_cqb_tab;
2923   l_enb_set    t_enb_tab;
2924   l_epr_set    t_epr_tab;
2925   l_ecr_set    t_ecr_tab;
2926   l_prv_set    t_prv_tab;
2927   l_pen_set    t_pen_tab;
2928   l_pcm_set    t_pcm_tab;
2929   l_bpl_set    t_bpl_tab;
2930   l_cwbmh_set  t_cwbmh_tab;
2931   --
2932   l_elenum     pls_integer;
2933   --
2934   l_bft_lud    date;
2935   l_bft_ludtm  date;
2936   l_person_id  number;
2937   --
2938   l_table_name varchar2(100);
2939   --
2940   cursor c_bftdets
2941     (c_bft_id number
2942     )
2943   is
2944     select bft.person_id,
2945            bft.created_by,
2946            bft.creation_date,
2947            bft.last_update_date,
2948            bft.last_updated_by,
2949            bft.last_update_login,
2950            bft.mode_cd
2951     from ben_benefit_actions bft
2952     where bft.benefit_action_id = c_bft_id;
2953   --
2954   l_bftdets c_bftdets%rowtype;
2955   --
2956   cursor c_pactdets
2957     (c_pact_id number
2958     )
2959   is
2960     select pact.person_id
2961     from ben_person_actions pact
2962     where pact.person_action_id = c_pact_id;
2963   --
2964   cursor c_pplrbv
2965     (c_per_id number
2966     ,c_lu_dt  date
2967     )
2968   is
2969     select ppl.*
2970     from ben_ptnl_ler_for_per ppl
2971     where ppl.person_id = c_per_id
2972     and   ppl.last_update_date
2973       between c_lu_dt and sysdate
2974     order by ppl.ptnl_ler_for_per_id;
2975   --
2976   cursor c_pilrbv
2977     (c_per_id number
2978     ,c_lu_dt  date
2979     )
2980   is
2981     select pil.*
2982     from ben_per_in_ler pil
2983     where pil.person_id = c_per_id
2984     and   pil.last_update_date
2985       between c_lu_dt and sysdate
2986     order by pil.per_in_ler_id;
2987   --
2988   cursor c_crprbv
2989     (c_per_id number
2990     ,c_lu_dt  date
2991     )
2992   is
2993     select crp.*
2994     from ben_cbr_per_in_ler crp,
2995          ben_per_in_ler pil
2996     where pil.person_id     = c_per_id
2997     and   crp.per_in_ler_id = pil.per_in_ler_id
2998     and   crp.last_update_date
2999       between c_lu_dt and sysdate
3000     order by crp.cbr_per_in_ler_id;
3001   --
3002   cursor c_peprbv
3003     (c_per_id number
3004     ,c_lu_dt  date
3005     )
3006   is
3007     select pep.*
3008     from ben_elig_per_f pep
3009     where pep.person_id = c_per_id
3010     and   pep.last_update_date
3011       between c_lu_dt and sysdate
3012     order by pep.elig_per_id;
3013   --
3014   cursor c_eporbv
3015     (c_per_id number
3016     ,c_lu_dt  date
3017     )
3018   is
3019     select epo.*
3020     from ben_elig_per_opt_f epo,
3021          ben_elig_per_f pep
3022     where pep.person_id   = c_per_id
3023     and   pep.elig_per_id = epo.elig_per_id
3024     and   epo.effective_start_date
3025       between pep.effective_start_date and pep.effective_end_date
3026 /*
3027     and   pep.per_in_ler_id = epo.per_in_ler_id
3028 */
3029     and   epo.last_update_date
3030       between c_lu_dt and sysdate
3031     order by epo.elig_per_opt_id,
3032              epo.effective_start_date;
3033   --
3034   cursor c_epopilrbv
3035     (c_per_id number
3036     ,c_lu_dt  date
3037     )
3038   is
3039     select epo.*
3040     from ben_elig_per_opt_f epo,
3041          ben_per_in_ler pil
3042     where pil.person_id   = c_per_id
3043     and   pil.per_in_ler_id = epo.per_in_ler_id
3044     and   epo.last_update_date
3045       between c_lu_dt and sysdate
3046     order by epo.elig_per_opt_id,
3047              epo.effective_start_date;
3048   --
3049   cursor c_eperbv
3050     (c_per_id number
3051     ,c_lu_dt  date
3052     )
3053   is
3054     select epe.*
3055     from ben_elig_per_elctbl_chc epe,
3056          ben_per_in_ler pil
3057     where pil.person_id     = c_per_id
3058     and   epe.per_in_ler_id = pil.per_in_ler_id
3059     and   epe.last_update_date
3060       between c_lu_dt and sysdate
3061     order by epe.elig_per_elctbl_chc_id;
3062   --
3063   cursor c_pelrbv
3064     (c_per_id number
3065     ,c_lu_dt  date
3066     )
3067   is
3068     select pel.*
3069     from ben_pil_elctbl_chc_popl pel,
3070          ben_per_in_ler pil
3071     where pil.person_id     = c_per_id
3072     and   pel.per_in_ler_id = pil.per_in_ler_id
3073     and   pel.last_update_date
3074       between c_lu_dt and sysdate
3075     order by pel.pil_elctbl_chc_popl_id;
3076   --
3077 /*
3078   cursor c_eccrbv
3079     (c_per_id number
3080     ,c_lu_dt  date
3081     )
3082   is
3083     select ecc.*
3084     from ben_elctbl_chc_ctfn ecc,
3085          ben_elig_per_elctbl_chc epe,
3086          ben_per_in_ler pil
3087     where pil.person_id     = c_per_id
3088     and   epe.per_in_ler_id = pil.per_in_ler_id
3089     and   epe.ELIG_PER_ELCTBL_CHC_ID = ecc.ELIG_PER_ELCTBL_CHC_ID
3090     and   ecc.last_update_date > c_lu_dt
3091   union
3092     select ecc.*
3093     from ben_elctbl_chc_ctfn ecc,
3094          ben_enrt_bnft enb,
3095          ben_elig_per_elctbl_chc epe,
3096          ben_per_in_ler pil
3097     where pil.person_id     = c_per_id
3098     and   epe.per_in_ler_id = pil.per_in_ler_id
3099     and   epe.ELIG_PER_ELCTBL_CHC_ID = enb.ELIG_PER_ELCTBL_CHC_ID
3100     and   ecc.enrt_bnft_id  = enb.enrt_bnft_id
3101     and   ecc.last_update_date > c_lu_dt
3102   order by 1;
3103   --
3104 */
3105   cursor c_eccrbv
3106     (c_per_id number
3107     ,c_lu_dt  date
3108     )
3109   is
3110     select ecc.*
3111     from ben_elctbl_chc_ctfn ecc,
3112          ben_elig_per_elctbl_chc epe,
3113          ben_per_in_ler pil
3114     where pil.person_id     = c_per_id
3115     and   epe.per_in_ler_id = pil.per_in_ler_id
3116     and   epe.ELIG_PER_ELCTBL_CHC_ID = ecc.ELIG_PER_ELCTBL_CHC_ID
3117     and   ecc.last_update_date
3118       between c_lu_dt and sysdate
3119     and   pil.last_update_date
3120       between c_lu_dt and sysdate
3121   order by 1;
3122   --
3123   cursor c_eccenbrbv
3124     (c_per_id number
3125     ,c_lu_dt  date
3126     )
3127   is
3128     select ecc.*
3129     from ben_elctbl_chc_ctfn ecc,
3130          ben_enrt_bnft enb,
3131          ben_elig_per_elctbl_chc epe,
3132          ben_per_in_ler pil
3133     where pil.person_id     = c_per_id
3134     and   epe.per_in_ler_id = pil.per_in_ler_id
3135     and   epe.ELIG_PER_ELCTBL_CHC_ID = enb.ELIG_PER_ELCTBL_CHC_ID
3136     and   ecc.enrt_bnft_id  = enb.enrt_bnft_id
3137     and   ecc.ELIG_PER_ELCTBL_CHC_ID is null
3138     and   ecc.last_update_date
3139       between c_lu_dt and sysdate
3140     and   pil.last_update_date
3141       between c_lu_dt and sysdate
3142   order by 1;
3143   --
3144   cursor c_egdrbv
3145     (c_per_id number
3146     ,c_lu_dt  date
3147     )
3148   is
3149     select egd.*
3150     from ben_elig_dpnt egd,
3151          ben_per_in_ler pil
3152     where pil.person_id     = c_per_id
3153     and   egd.per_in_ler_id = pil.per_in_ler_id
3154     and   egd.last_update_date
3155       between c_lu_dt and sysdate
3156     order by egd.elig_dpnt_id;
3157   --
3158   cursor c_pdprbv
3159     (c_per_id number
3160     ,c_lu_dt  date
3161     )
3162   is
3163     select pdp.*
3164     from ben_elig_cvrd_dpnt_f pdp,
3165          ben_per_in_ler pil
3166     where pil.person_id     = c_per_id
3167     and   pdp.per_in_ler_id = pil.per_in_ler_id
3168     and   pdp.last_update_date
3169       between c_lu_dt and sysdate
3170     order by pdp.elig_cvrd_dpnt_id;
3171   --
3172   cursor c_cqbrbv
3173     (c_per_id number
3174     ,c_lu_dt  date
3175     )
3176   is
3177     select cqb.*
3178     from ben_cbr_quald_bnf cqb
3179     where cqb.cvrd_emp_person_id = c_per_id
3180     and   cqb.last_update_date
3181       between c_lu_dt and sysdate
3182     order by cqb.cbr_quald_bnf_id;
3183   --
3184   cursor c_enbrbv
3185     (c_per_id number
3186     ,c_lu_dt  date
3187     )
3188   is
3189     select enb.*
3190     from ben_enrt_bnft enb,
3191          ben_elig_per_elctbl_chc epe,
3192          ben_per_in_ler pil
3193     where pil.person_id     = c_per_id
3194     and   epe.per_in_ler_id = pil.per_in_ler_id
3195     and   epe.ELIG_PER_ELCTBL_CHC_ID = enb.ELIG_PER_ELCTBL_CHC_ID
3196     and   enb.last_update_date
3197       between c_lu_dt and sysdate
3198     order by enb.enrt_bnft_id;
3199   --
3200 /*
3201   cursor c_eprrbv
3202     (c_per_id number
3203     ,c_lu_dt  date
3204     )
3205   is
3206     select epr.*
3207     from ben_enrt_prem epr,
3208          ben_elig_per_elctbl_chc epe,
3209          ben_per_in_ler pil
3210     where pil.person_id     = c_per_id
3211     and   epe.per_in_ler_id = pil.per_in_ler_id
3212     and   epe.ELIG_PER_ELCTBL_CHC_ID = epr.ELIG_PER_ELCTBL_CHC_ID
3213     and   epr.last_update_date
3214       between c_lu_dt and sysdate
3215   union
3216     select epr.*
3217     from ben_enrt_prem epr,
3218          ben_enrt_bnft enb,
3219          ben_elig_per_elctbl_chc epe,
3220          ben_per_in_ler pil
3221     where pil.person_id     = c_per_id
3222     and   epe.per_in_ler_id = pil.per_in_ler_id
3223     and   epe.ELIG_PER_ELCTBL_CHC_ID = enb.ELIG_PER_ELCTBL_CHC_ID
3224     and   epr.enrt_bnft_id  = enb.enrt_bnft_id
3225     and   epr.last_update_date
3226       between c_lu_dt and sysdate
3227   order by 1;
3228   --
3229 */
3230   cursor c_epreperbv
3231     (c_per_id number
3232     ,c_lu_dt  date
3233     )
3234   is
3235     select epr.*
3236     from ben_enrt_prem epr,
3237          ben_elig_per_elctbl_chc epe,
3238          ben_per_in_ler pil
3239     where pil.person_id     = c_per_id
3240     and   epe.per_in_ler_id = pil.per_in_ler_id
3241     and   epe.ELIG_PER_ELCTBL_CHC_ID = epr.ELIG_PER_ELCTBL_CHC_ID
3242     and   epr.last_update_date
3243       between c_lu_dt and sysdate
3244     order by 1;
3245   --
3246   cursor c_eprenbrbv
3247     (c_per_id number
3248     ,c_lu_dt  date
3249     )
3250   is
3251     select epr.*
3252     from ben_enrt_prem epr,
3253          ben_enrt_bnft enb,
3254          ben_elig_per_elctbl_chc epe,
3255          ben_per_in_ler pil
3256     where pil.person_id     = c_per_id
3257     and   epe.per_in_ler_id = pil.per_in_ler_id
3258     and   epe.ELIG_PER_ELCTBL_CHC_ID = enb.ELIG_PER_ELCTBL_CHC_ID
3259     and   epr.enrt_bnft_id  = enb.enrt_bnft_id
3260     and   epr.last_update_date
3261       between c_lu_dt and sysdate
3262   order by 1;
3263   --
3264 /*
3265   cursor c_ecrrbv
3266     (c_per_id number
3267     ,c_lu_dt  date
3268     )
3269   is
3270     select ecr.*
3271     from ben_enrt_rt ecr,
3272          ben_elig_per_elctbl_chc epe,
3273          ben_per_in_ler pil
3274     where pil.person_id     = c_per_id
3275     and   epe.per_in_ler_id = pil.per_in_ler_id
3276     and   epe.ELIG_PER_ELCTBL_CHC_ID = ecr.ELIG_PER_ELCTBL_CHC_ID
3277     and   ecr.last_update_date
3278       between c_lu_dt and sysdate
3279   union
3280     select ecr.*
3281     from ben_enrt_rt ecr,
3282          ben_enrt_bnft enb,
3283          ben_elig_per_elctbl_chc epe,
3284          ben_per_in_ler pil
3285     where pil.person_id     = c_per_id
3286     and   epe.per_in_ler_id = pil.per_in_ler_id
3287     and   epe.ELIG_PER_ELCTBL_CHC_ID = enb.ELIG_PER_ELCTBL_CHC_ID
3288     and   ecr.enrt_bnft_id  = enb.enrt_bnft_id
3289     and   ecr.last_update_date
3290       between c_lu_dt and sysdate
3291   order by 1;
3292   --
3293 */
3294   cursor c_ecreperbv
3295     (c_per_id number
3296     ,c_lu_dt  date
3297     )
3298   is
3299     select ecr.*
3300     from ben_enrt_rt ecr,
3301          ben_elig_per_elctbl_chc epe,
3302          ben_per_in_ler pil
3303     where pil.person_id     = c_per_id
3304     and   epe.per_in_ler_id = pil.per_in_ler_id
3305     and   ecr.enrt_bnft_id is null
3306     and   epe.ELIG_PER_ELCTBL_CHC_ID = ecr.ELIG_PER_ELCTBL_CHC_ID
3307     and   ecr.last_update_date
3308       between c_lu_dt and sysdate
3309   order by 1;
3310   --
3311   cursor c_ecrenbrbv
3312     (c_per_id number
3313     ,c_lu_dt  date
3314     )
3315   is
3316     select ecr.*
3317     from ben_enrt_rt ecr,
3318          ben_enrt_bnft enb,
3319          ben_elig_per_elctbl_chc epe,
3320          ben_per_in_ler pil
3321     where pil.person_id     = c_per_id
3322     and   epe.per_in_ler_id = pil.per_in_ler_id
3323     and   epe.ELIG_PER_ELCTBL_CHC_ID = enb.ELIG_PER_ELCTBL_CHC_ID
3324     and   ecr.ELIG_PER_ELCTBL_CHC_ID is null
3325     and   ecr.enrt_bnft_id  = enb.enrt_bnft_id
3326     and   ecr.last_update_date
3327       between c_lu_dt and sysdate
3328   order by 1;
3329   --
3330   cursor c_prvrbv
3331     (c_per_id number
3332     ,c_lu_dt  date
3333     )
3334   is
3335     select prv.*
3336     from ben_prtt_rt_val prv,
3337          ben_per_in_ler pil
3338     where pil.person_id     = c_per_id
3339     and   prv.per_in_ler_id = pil.per_in_ler_id
3340     and   prv.last_update_date
3341       between c_lu_dt and sysdate
3342     order by prv.prtt_rt_val_id;
3343   --
3344   cursor c_penrbv
3345     (c_per_id number
3346     ,c_lu_dt  date
3347     )
3348   is
3349     select pen.*
3350     from ben_prtt_enrt_rslt_f pen
3351     where pen.person_id = c_per_id
3352     and   pen.last_update_date
3353       between c_lu_dt and sysdate
3354     order by pen.prtt_enrt_rslt_id;
3355   --
3356   cursor c_pcmrbv
3357     (c_per_id number
3358     ,c_lu_dt  date
3359     )
3360   is
3361     select pcm.*
3362     from ben_per_cm_f pcm
3363     where pcm.person_id = c_per_id
3364     and   pcm.last_update_date
3365       between c_lu_dt and sysdate
3366     order by pcm.per_cm_id;
3367   --
3368   cursor c_bplrbv
3369     (c_per_id number
3370     ,c_lu_dt  date
3371     )
3372   is
3373     select bpl.*
3374     from ben_bnft_prvdd_ldgr_f bpl,
3375          ben_per_in_ler pil
3376     where pil.person_id     = c_per_id
3377     and   bpl.per_in_ler_id = pil.per_in_ler_id
3378     and   bpl.last_update_date
3379       between c_lu_dt and sysdate
3380     order by bpl.bnft_prvdd_ldgr_id;
3381   --
3382   cursor c_cwbmhrbv
3383     (c_per_id number
3384     ,c_lu_dt  date
3385     )
3386   is
3387     select cwbmh.*
3388     from ben_elig_per_elctbl_chc epe,
3389          ben_per_in_ler pil,
3390          ben_cwb_mgr_hrchy cwbmh
3391     where pil.person_id     = c_per_id
3392     and   epe.per_in_ler_id = pil.per_in_ler_id
3393     and   epe.elig_per_elctbl_chc_id = cwbmh.emp_elig_per_elctbl_chc_id
3394     and   cwbmh.last_update_date
3395       between c_lu_dt and sysdate
3396     order by cwbmh.mgr_elig_per_elctbl_chc_id,
3397              emp_elig_per_elctbl_chc_id;
3398   --
3399   l_epo_cnt number;
3400   --
3401 BEGIN
3402   --
3403   l_table_name := null;
3404   --
3405   if p_validate_flag in ('C','B')
3406   then
3407     --
3408     -- Get the benefit action details
3409     --
3410     open c_bftdets
3411       (c_bft_id => p_benefit_action_id
3412       );
3413     fetch c_bftdets into l_bftdets;
3414     close c_bftdets;
3415     --
3416     l_bft_lud   := trunc(l_bftdets.last_update_date);
3417     l_bft_ludtm := l_bftdets.last_update_date;
3418     l_person_id := l_bftdets.person_id;
3419     --
3420     -- When person id is null then running batch benmngle
3421     --
3422     if l_person_id is null
3423     then
3424       --
3425       -- Get the person id from the person action
3426       --
3427       open c_pactdets
3428         (c_pact_id => p_person_action_id
3429         );
3430       fetch c_pactdets into l_person_id;
3431       close c_pactdets;
3432       --
3433     end if;
3434     --
3435     if l_person_id is not null
3436     then
3437       --
3438         --
3439         -- Temporary
3440         --
3441         benutils.write(p_text => ' l_person_id: '||l_person_id);
3442 /*
3443         dbms_output.put_line(' BENRBVPO: l_person_id: '||l_person_id
3444                             ||' l_bft_ludtm: '||to_char(l_bft_ludtm,'DD-MON-YYYY-HH24-MI-SS')
3445                             );
3446         --
3447 */
3448       l_table_name := 'BEN_PTNL_LER_FOR_PER_RBV';
3449       l_elenum := 0;
3450       --
3451       for row in c_pplrbv
3452         (c_per_id => l_person_id
3453         ,c_lu_dt  => l_bft_lud
3454         )
3455       loop
3456         --
3457         if row.last_update_date >= l_bft_ludtm
3458         then
3459           --
3460           l_ppl_set(l_elenum) := row;
3461           --
3465         --
3462           l_elenum := l_elenum+1;
3463           --
3464         end if;
3466       end loop;
3467       --
3468       write_ppl_rbvs
3469         (p_benefit_action_id => p_benefit_action_id
3470         ,p_person_action_id  => p_person_action_id
3471         ,p_ppl_set           => l_ppl_set
3472         );
3473       --
3474       l_table_name := 'BEN_PER_IN_LER_RBV';
3475       l_elenum := 0;
3476       --
3477       for row in c_pilrbv
3478         (c_per_id => l_person_id
3479         ,c_lu_dt  => l_bft_lud
3480         )
3481       loop
3482         --
3483         if row.last_update_date >= l_bft_ludtm
3484         then
3485           --
3486           l_pil_set(l_elenum) := row;
3487           --
3488           l_elenum := l_elenum+1;
3489           --
3490         end if;
3491         --
3492       end loop;
3493       --
3494       write_pil_rbvs
3495         (p_benefit_action_id => p_benefit_action_id
3496         ,p_person_action_id  => p_person_action_id
3497         ,p_pil_set           => l_pil_set
3498         );
3499       --
3500       l_table_name := 'BEN_CBR_PER_IN_LER_RBV';
3501       l_elenum := 0;
3502       --
3503       for row in c_crprbv
3504         (c_per_id => l_person_id
3505         ,c_lu_dt  => l_bft_lud
3506         )
3507       loop
3508         --
3509         if row.last_update_date >= l_bft_ludtm
3510         then
3511           --
3512           l_crp_set(l_elenum) := row;
3513           --
3514           l_elenum := l_elenum+1;
3515           --
3516         end if;
3517         --
3518       end loop;
3519       --
3520       write_crp_rbvs
3521         (p_benefit_action_id => p_benefit_action_id
3522         ,p_person_action_id  => p_person_action_id
3523         ,p_crp_set           => l_crp_set
3524         );
3525       --
3526       l_table_name := 'BEN_ELIG_PER_F_RBV';
3527       l_elenum := 0;
3528       --
3529       for row in c_peprbv
3530         (c_per_id => l_person_id
3531         ,c_lu_dt  => l_bft_lud
3532         )
3533       loop
3534         --
3535         if row.last_update_date >= l_bft_ludtm
3536         then
3537           --
3538           l_pep_set(l_elenum) := row;
3539           --
3540           l_elenum := l_elenum+1;
3541           --
3542         end if;
3543         --
3544       end loop;
3545       --
3546 /*
3547         --
3548         -- Temporary
3549         --
3550         benutils.write(p_text => ' l_pep_set.count: '||l_pep_set.count);
3551         --
3552 */
3553       write_pep_rbvs
3554         (p_benefit_action_id => p_benefit_action_id
3555         ,p_person_action_id  => p_person_action_id
3556         ,p_pep_set           => l_pep_set
3557         );
3558       --
3559       l_table_name := 'BEN_ELIG_PER_OPT_F_RBV';
3560       l_elenum := 0;
3561       --
3562       if l_bftdets.mode_cd = 'S'
3563       then
3564         --
3565         for row in c_eporbv
3566           (c_per_id => l_person_id
3567           ,c_lu_dt  => l_bft_lud
3568           )
3569         loop
3570           --
3571           if row.last_update_date >= l_bft_ludtm
3572           then
3573             --
3574             l_epo_set(l_elenum) := row;
3575             --
3576             l_elenum := l_elenum+1;
3577             --
3578           end if;
3579           --
3580         end loop;
3581         --
3582       else
3583         --
3584         for row in c_epopilrbv
3585           (c_per_id => l_person_id
3586           ,c_lu_dt  => l_bft_lud
3587           )
3588         loop
3589           --
3590           if row.last_update_date >= l_bft_ludtm
3591           then
3592             --
3593             l_epo_set(l_elenum) := row;
3594             --
3595             l_elenum := l_elenum+1;
3596             --
3597           end if;
3598           --
3599         end loop;
3600         --
3601       end if;
3602 /*
3603         --
3604         -- Temporary
3605         --
3606         benutils.write(p_text => ' l_epo_set.count: '||l_epo_set.count);
3607         --
3608 */
3609       write_epo_rbvs
3610         (p_benefit_action_id => p_benefit_action_id
3611         ,p_person_action_id  => p_person_action_id
3612         ,p_epo_set           => l_epo_set
3613         );
3614       --
3615       -- Electability
3616       --
3617       l_table_name := 'BEN_ELIG_PER_ELCTBL_CHC_RBV';
3618       l_elenum := 0;
3619       --
3620       for row in c_eperbv
3621         (c_per_id => l_person_id
3622         ,c_lu_dt  => l_bft_lud
3623         )
3624       loop
3625         --
3626         if row.last_update_date >= l_bft_ludtm
3627         then
3628           --
3629           l_epe_set(l_elenum) := row;
3630           --
3631           l_elenum := l_elenum+1;
3632           --
3633         end if;
3634         --
3635       end loop;
3636 /*
3637         --
3638         -- Temporary
3639         --
3640         benutils.write(p_text => ' l_epe_set.count: '||l_epe_set.count);
3641         --
3642 */
3643       write_epe_rbvs
3644         (p_benefit_action_id => p_benefit_action_id
3645         ,p_person_action_id  => p_person_action_id
3646         ,p_epe_set           => l_epe_set
3647         );
3648       --
3649       l_table_name := 'BEN_PIL_EPE_POPL_RBV';
3650       l_elenum := 0;
3651       --
3652       for row in c_pelrbv
3653         (c_per_id => l_person_id
3657         --
3654         ,c_lu_dt  => l_bft_lud
3655         )
3656       loop
3658         if row.last_update_date >= l_bft_ludtm
3659         then
3660           --
3661           l_pel_set(l_elenum) := row;
3662           --
3663           l_elenum := l_elenum+1;
3664           --
3665         end if;
3666         --
3667       end loop;
3668       --
3669       write_pel_rbvs
3670         (p_benefit_action_id => p_benefit_action_id
3671         ,p_person_action_id  => p_person_action_id
3672         ,p_pel_set           => l_pel_set
3673         );
3674       --
3675       l_table_name := 'BEN_ELCTBL_CHC_CTFN_RBV';
3676       l_elenum := 0;
3677       --
3678       for row in c_eccrbv
3679         (c_per_id => l_person_id
3680         ,c_lu_dt  => l_bft_lud
3681         )
3682       loop
3683         --
3684         if row.last_update_date >= l_bft_ludtm
3685         then
3686           --
3687           l_ecc_set(l_elenum) := row;
3688           --
3689           l_elenum := l_elenum+1;
3690           --
3691         end if;
3692         --
3693       end loop;
3694 /*
3695         --
3696         -- Temporary
3697         --
3698         benutils.write(p_text => ' l_ecc_set.count 1: '||l_ecc_set.count);
3699         --
3700 */
3701       --
3702       for row in c_eccenbrbv
3703         (c_per_id => l_person_id
3704         ,c_lu_dt  => l_bft_lud
3705         )
3706       loop
3707         --
3708         if row.last_update_date >= l_bft_ludtm
3709         then
3710           --
3711           l_ecc_set(l_elenum) := row;
3712           --
3713           l_elenum := l_elenum+1;
3714           --
3715         end if;
3716         --
3717       end loop;
3718 /*
3719         --
3720         -- Temporary
3721         --
3722         benutils.write(p_text => ' l_ecc_set.count 2: '||l_ecc_set.count);
3723         --
3724 */
3725       --
3726       write_ecc_rbvs
3727         (p_benefit_action_id => p_benefit_action_id
3728         ,p_person_action_id  => p_person_action_id
3729         ,p_ecc_set           => l_ecc_set
3730         );
3731       --
3732       -- Dependent eligibility
3733       --
3734       l_table_name := 'BEN_ELIG_DPNT_RBV';
3735       l_elenum := 0;
3736       --
3737       for row in c_egdrbv
3738         (c_per_id => l_person_id
3739         ,c_lu_dt  => l_bft_lud
3740         )
3741       loop
3742         --
3743         if row.last_update_date >= l_bft_ludtm
3744         then
3745           --
3746           l_egd_set(l_elenum) := row;
3747           --
3748           l_elenum := l_elenum+1;
3749           --
3750         end if;
3751         --
3752       end loop;
3753       --
3754       write_egd_rbvs
3755         (p_benefit_action_id => p_benefit_action_id
3756         ,p_person_action_id  => p_person_action_id
3757         ,p_egd_set           => l_egd_set
3758         );
3759       --
3760       l_table_name := 'BEN_ELIG_CVRD_DPNT_RBV';
3761       l_elenum := 0;
3762       --
3763       for row in c_pdprbv
3764         (c_per_id => l_person_id
3765         ,c_lu_dt  => l_bft_lud
3766         )
3767       loop
3768         --
3769         if row.last_update_date >= l_bft_ludtm
3770         then
3771           --
3772           l_pdp_set(l_elenum) := row;
3773           --
3774           l_elenum := l_elenum+1;
3775           --
3776         end if;
3777           --
3778       end loop;
3779       --
3780       write_pdp_rbvs
3781         (p_benefit_action_id => p_benefit_action_id
3782         ,p_person_action_id  => p_person_action_id
3783         ,p_pdp_set           => l_pdp_set
3784         );
3785       --
3786       l_table_name := 'BEN_CBR_QUALD_BNF_RBV';
3787       l_elenum := 0;
3788       --
3789       for row in c_cqbrbv
3790         (c_per_id => l_person_id
3791         ,c_lu_dt  => l_bft_lud
3792         )
3793       loop
3794         --
3795         if row.last_update_date >= l_bft_ludtm
3796         then
3797           --
3798           l_cqb_set(l_elenum) := row;
3799           --
3800           l_elenum := l_elenum+1;
3801           --
3802         end if;
3803           --
3804       end loop;
3805       --
3806       write_cqb_rbvs
3807         (p_benefit_action_id => p_benefit_action_id
3808         ,p_person_action_id  => p_person_action_id
3809         ,p_cqb_set           => l_cqb_set
3810         );
3811       --
3812       -- Coverage
3813       --
3814       l_table_name := 'BEN_ENRT_BNFT_RBV';
3815       l_elenum := 0;
3816       --
3817       for row in c_enbrbv
3818         (c_per_id => l_person_id
3819         ,c_lu_dt  => l_bft_lud
3820         )
3821       loop
3822         --
3823         if row.last_update_date >= l_bft_ludtm
3824         then
3825           --
3826           l_enb_set(l_elenum) := row;
3827           --
3828           l_elenum := l_elenum+1;
3829           --
3830         end if;
3831         --
3832       end loop;
3833       --
3834       write_enb_rbvs
3835         (p_benefit_action_id => p_benefit_action_id
3836         ,p_person_action_id  => p_person_action_id
3837         ,p_enb_set           => l_enb_set
3838         );
3839       --
3840       -- Premiums
3841       --
3842       l_table_name := 'BEN_ENRT_PREM_RBV';
3843       l_elenum := 0;
3844       --
3845       for row in c_epreperbv
3846         (c_per_id => l_person_id
3850         --
3847         ,c_lu_dt  => l_bft_lud
3848         )
3849       loop
3851         if row.last_update_date >= l_bft_ludtm
3852         then
3853           --
3854           l_epr_set(l_elenum) := row;
3855           --
3856           l_elenum := l_elenum+1;
3857           --
3858         end if;
3859         --
3860       end loop;
3861       --
3862       for row in c_eprenbrbv
3863         (c_per_id => l_person_id
3864         ,c_lu_dt  => l_bft_lud
3865         )
3866       loop
3867         --
3868         if row.last_update_date >= l_bft_ludtm
3869         then
3870           --
3871           l_epr_set(l_elenum) := row;
3872           --
3873           l_elenum := l_elenum+1;
3874           --
3875         end if;
3876         --
3877       end loop;
3878       --
3879 /*
3880       for row in c_eprrbv
3881         (c_per_id => l_person_id
3882         ,c_lu_dt  => l_bft_lud
3883         )
3884       loop
3885         --
3886         if row.last_update_date >= l_bft_ludtm
3887         then
3888           --
3889           l_epr_set(l_elenum) := row;
3890           --
3891           l_elenum := l_elenum+1;
3892           --
3893         end if;
3894         --
3895       end loop;
3896       --
3897 */
3898       write_epr_rbvs
3899         (p_benefit_action_id => p_benefit_action_id
3900         ,p_person_action_id  => p_person_action_id
3901         ,p_epr_set           => l_epr_set
3902         );
3903       --
3904       -- Rates
3905       --
3906       l_table_name := 'BEN_ENRT_RT_RBV';
3907       l_elenum := 0;
3908       --
3909       for row in c_ecreperbv
3910         (c_per_id => l_person_id
3911         ,c_lu_dt  => l_bft_lud
3912         )
3913       loop
3914         --
3915         if row.last_update_date >= l_bft_ludtm
3916         then
3917           --
3918           l_ecr_set(l_elenum) := row;
3919           --
3920           l_elenum := l_elenum+1;
3921           --
3922         end if;
3923         --
3924       end loop;
3925       --
3926       for row in c_ecrenbrbv
3927         (c_per_id => l_person_id
3928         ,c_lu_dt  => l_bft_lud
3929         )
3930       loop
3931         --
3932         if row.last_update_date >= l_bft_ludtm
3933         then
3934           --
3935           l_ecr_set(l_elenum) := row;
3936           --
3937           l_elenum := l_elenum+1;
3938           --
3939         end if;
3940         --
3941       end loop;
3942       --
3943 /*
3944       for row in c_ecrrbv
3945         (c_per_id => l_person_id
3946         ,c_lu_dt  => l_bft_lud
3947         )
3948       loop
3949         --
3950         if row.last_update_date >= l_bft_ludtm
3951         then
3952           --
3953           l_ecr_set(l_elenum) := row;
3954           --
3955           l_elenum := l_elenum+1;
3956           --
3957         end if;
3958         --
3959       end loop;
3960       --
3961 */
3962       write_ecr_rbvs
3963         (p_benefit_action_id => p_benefit_action_id
3964         ,p_person_action_id  => p_person_action_id
3965         ,p_ecr_set           => l_ecr_set
3966         );
3967       --
3968       -- Participant rate values
3969       --
3970       l_table_name := 'BEN_PRTT_RT_VAL_RBV';
3971       l_elenum := 0;
3972       --
3973       for row in c_prvrbv
3974         (c_per_id => l_person_id
3975         ,c_lu_dt  => l_bft_lud
3976         )
3977       loop
3978         --
3979         if row.last_update_date >= l_bft_ludtm
3980         then
3981           --
3982           l_prv_set(l_elenum) := row;
3983           --
3984           l_elenum := l_elenum+1;
3985           --
3986         end if;
3987         --
3988       end loop;
3989       --
3990 /*
3991         --
3992         -- Temporary
3993         --
3994         benutils.write(p_text => ' l_prv_set.count: '||l_prv_set.count);
3995         --
3996 */
3997       write_prv_rbvs
3998         (p_benefit_action_id => p_benefit_action_id
3999         ,p_person_action_id  => p_person_action_id
4000         ,p_prv_set           => l_prv_set
4001         );
4002       --
4003       -- Enrolment results
4004       --
4005       l_table_name := 'BEN_PRTT_ENRT_RSLT_F_RBV';
4006       l_elenum := 0;
4007       --
4008       for row in c_penrbv
4009         (c_per_id => l_person_id
4010         ,c_lu_dt  => l_bft_lud
4011         )
4012       loop
4013         --
4014         if row.last_update_date >= l_bft_ludtm
4015         then
4016           --
4017           l_pen_set(l_elenum) := row;
4018           --
4019           l_elenum := l_elenum+1;
4020           --
4021         end if;
4022         --
4023       end loop;
4024       --
4025       write_pen_rbvs
4026         (p_benefit_action_id => p_benefit_action_id
4027         ,p_person_action_id  => p_person_action_id
4028         ,p_pen_set           => l_pen_set
4029         );
4030       --
4031       -- Communications
4032       --
4033       l_table_name := 'BEN_PER_CM_F_RBV';
4034       l_elenum := 0;
4035       --
4036       for row in c_pcmrbv
4037         (c_per_id => l_person_id
4038         ,c_lu_dt  => l_bft_lud
4039         )
4040       loop
4041         --
4042         if row.last_update_date >= l_bft_ludtm
4043         then
4044           --
4045           l_pcm_set(l_elenum) := row;
4046           --
4047           l_elenum := l_elenum+1;
4048           --
4049         end if;
4050         --
4051       end loop;
4052       --
4053       write_pcm_rbvs
4054         (p_benefit_action_id => p_benefit_action_id
4055         ,p_person_action_id  => p_person_action_id
4056         ,p_pcm_set           => l_pcm_set
4057         );
4058       --
4059       -- Benefit provider ledgers
4060       --
4061       l_table_name := 'BEN_BNFT_PRVDD_LDGR_RBV';
4062       l_elenum := 0;
4063       --
4064       for row in c_bplrbv
4065         (c_per_id => l_person_id
4066         ,c_lu_dt  => l_bft_lud
4067         )
4068       loop
4069         --
4070         if row.last_update_date >= l_bft_ludtm
4071         then
4072           --
4073           l_bpl_set(l_elenum) := row;
4074           --
4075           l_elenum := l_elenum+1;
4076           --
4077         end if;
4078         --
4079       end loop;
4080       --
4081       write_bpl_rbvs
4082         (p_benefit_action_id => p_benefit_action_id
4083         ,p_person_action_id  => p_person_action_id
4084         ,p_bpl_set           => l_bpl_set
4085         );
4086       --
4087       l_table_name := 'BEN_CWB_MGR_HRCHY_RBV';
4088       l_elenum := 0;
4089       --
4090       for row in c_cwbmhrbv
4091         (c_per_id => l_person_id
4092         ,c_lu_dt  => l_bft_lud
4093         )
4094       loop
4095         --
4096         if row.last_update_date >= l_bft_ludtm
4097         then
4098           --
4099           l_cwbmh_set(l_elenum) := row;
4100           --
4101           l_elenum := l_elenum+1;
4102           --
4103         end if;
4104         --
4105       end loop;
4106       --
4107       write_cwbmh_rbvs
4108         (p_benefit_action_id => p_benefit_action_id
4109         ,p_person_action_id  => p_person_action_id
4110         ,p_cwbmh_set         => l_cwbmh_set
4111         );
4112       --
4113     end if;
4114     --
4115   end if;
4116   --
4117 exception
4118   when others then
4119     --
4120     raise;
4121     --
4122 /*
4123     fnd_message.set_name('BEN','BEN_?????_POPRBV');
4124     benutils.write(fnd_message.get);
4125     fnd_message.raise_error;
4126 */
4127     --
4128 END populate_benmngle_rbvs;
4129 --
4130 function validate_mode
4131   (p_validate in varchar2
4132   ) return boolean
4133 Is
4134 
4135 begin
4136   --
4137   if p_validate in ('Y','C','B')
4138   then
4139     --
4140     return TRUE;
4141     --
4142   end if;
4143   --
4144   return false;
4145   --
4146 End validate_mode;
4147 --
4148 end ben_populate_rbv;