DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_ELIG_OBJECT

Source


1 package body ben_elig_object as
2 /* $Header: beneligo.pkb 120.0 2005/05/28 08:56:06 appldev noship $ */
3 --------------------------------------------------------------------------------
4 /*
5 +==============================================================================+
6 |			Copyright (c) 1997 Oracle Corporation		       |
7 |			   Redwood Shores, California, USA		       |
8 |			        All rights reserved.			       |
9 +==============================================================================+
10 
11 Name
12 	Comp Elig Object Caching Routine
13 Purpose
14 	This package is used to return comp object elig information.
15 History
16         Date             Who        Version    What?
17         ----             ---        -------    -----
18         05 May 99        G Perry    115.0      Created
19         06 May 99        G Perry    115.1      Backport for Fidelity.
20         06 May 99        G Perry    115.2      Leapfrog of 115.0
21         07 May 99        G Perry    115.3      Added cache for ben_prtn_elig_f
22                                                for Bala.
23         07 May 99        G Perry    115.4      Fixed typos in PTIP call.
24         25 May 99        G Perry    115.5      Added context to messages.
25         11-Jul-99        mhoyes     115.6   - Removed + 0s from all cursors.
26                                             - Modified overloaded trace messages.
27         31 Aug 99        mhoyes     115.7   - Removed frequently executed trace
28                                               locations.
29         24 Mar 00        TMathers   115.8   - changed Tex Perry's captech
30                                               set_name to set_token.
31         15 May 00        RChase     115.9   - Performance modifications, Changes
32                                               to parameter passing using NOCOPY,
33                                               replace exists, remove extra assignment
34                                               statements.
35         22 May 00        mhoyes     115.10  - Modified set_object to pass out
36                                               record structure.
37                                             - Moved call to set object from
38                                               benmngle into get_objects.
39         29 May 00        mhoyes     115.11  - Fixed bug 5338.
40 */
41 --------------------------------------------------------------------------------
42 --
43 g_package varchar2(80) := 'ben_elig_object.';
44 g_hash_key number := ben_hash_utility.get_hash_key;
45 g_hash_jump number := ben_hash_utility.get_hash_jump;
46 --
47 procedure set_object(p_pgm_id  in number,
48                      p_rec     in out NOCOPY ben_elig_to_prte_rsn_f%rowtype) is
49   --
50   l_proc           varchar2(80) := g_package||'set_object pgmelpr';
51   l_index          pls_integer;
52   --l_not_hash_found boolean;
53   --
54 begin
55   --
56 --  hr_utility.set_location('Entering '||l_proc,10);
57   --
58   -- 1) Get hash index
59   -- 2) If index is empty use index
60   -- 3) If not check if index is correct in which case we have already
61   --    cached index
62   -- 4) If not correct index use alternate index
63   -- 5) Keep trying until find index or find empty index
64   --
65   -- Get hashed index value
66   --
67   l_index := mod(p_pgm_id,g_hash_key);
68   -- 115.9 replace previous code
69     if g_cache_pgm_rec(l_index).pgm_id = p_pgm_id then
70        -- do nothing, cache entry already exists
71        null;
72     else
73       --
74       -- Loop through the hash using the jump routine to check further
75       -- indexes
76       -- 115.9 if none exists at current index the NO_DATA_FOUND expection will fire
77       --
78       l_index := l_index+g_hash_jump;
79       while g_cache_pgm_rec(l_index).pgm_id <> p_pgm_id loop
80         --
81         l_index := l_index+g_hash_jump;
82 
83       end loop;
84       --
85     end if;
86   --
87   -- hr_utility.set_location('Leaving '||l_proc,10);
88   --
89 exception when NO_DATA_FOUND then
90   -- 115.9 set cache entry at current index location
91    g_cache_pgm_rec(l_index):=p_rec;
92 --
93 end set_object;
94 --
95 procedure set_object(p_pl_id   in number,
96                      p_rec     in out NOCOPY ben_elig_to_prte_rsn_f%rowtype) is
97   --
98   l_proc           varchar2(80) := g_package||'set_object plnelpr';
99   l_index          pls_integer;
100   --l_not_hash_found boolean;
101   --
102 begin
103   --
104   -- 1) Get hash index
105   -- 2) If index is empty use index
106   -- 3) If not check if index is correct in which case we have already
107   --    cached index
108   -- 4) If not correct index use alternate index
109   -- 5) Keep trying until find index or find empty index
110   --
111   -- Get hashed index value
112   --
113   l_index := mod(p_pl_id,g_hash_key);
114   --
115   -- 115.9 replace previous code
116     if g_cache_pl_rec(l_index).pl_id = p_pl_id then
117        -- do nothing, cache entry already exists
118        null;
119     else
120       --
121       -- Loop through the hash using the jump routine to check further
122       -- indexes
123       -- 115.9 if none exists at current index the NO_DATA_FOUND expection will fire
124       --
125       l_index := l_index+g_hash_jump;
126       while g_cache_pl_rec(l_index).pl_id <> p_pl_id loop
127         --
128         l_index := l_index+g_hash_jump;
129 
130       end loop;
131       --
132     end if;
133   --
134   -- hr_utility.set_location('Leaving '||l_proc,10);
135   --
136 exception when NO_DATA_FOUND then
137   -- 115.9 set cache entry at current index location
138    g_cache_pl_rec(l_index):=p_rec;
139 --
140 end set_object;
141 --
142 procedure set_object(p_oipl_id in number,
143                      p_rec     in out NOCOPY ben_elig_to_prte_rsn_f%rowtype) is
144   --
145   l_proc           varchar2(80) := g_package||'set_object oiplelpr';
146   l_index          pls_integer;
147   --l_not_hash_found boolean;
148   --
149 begin
150   --
151   -- 1) Get hash index
152   -- 2) If index is empty use index
153   -- 3) If not check if index is correct in which case we have already
154   --    cached index
155   -- 4) If not correct index use alternate index
156   -- 5) Keep trying until find index or find empty index
157   --
158   -- Get hashed index value
159   --
160   l_index := mod(p_oipl_id,g_hash_key);
161   -- 115.9 replace previous code
162     if g_cache_oipl_rec(l_index).oipl_id = p_oipl_id then
163        -- do nothing, cache entry already exists
164        null;
165     else
166       --
167       -- Loop through the hash using the jump routine to check further
168       -- indexes
169       -- 115.9 if none exists at current index the NO_DATA_FOUND expection will fire
170       --
171       l_index := l_index+g_hash_jump;
172       while g_cache_oipl_rec(l_index).oipl_id <> p_oipl_id loop
173         --
174         l_index := l_index+g_hash_jump;
175 
176       end loop;
177       --
178     end if;
179   --
180   -- hr_utility.set_location('Leaving '||l_proc,10);
181   --
182 exception when NO_DATA_FOUND then
183   -- 115.9 set cache entry at current index location
184    g_cache_oipl_rec(l_index):=p_rec;
185 --
186 end set_object;
187 --
188 procedure set_object(p_plip_id in number,
189                      p_rec     in out NOCOPY ben_elig_to_prte_rsn_f%rowtype) is
190   --
191   l_proc           varchar2(80) := g_package||'set_object plipelpr';
192   l_index          pls_integer;
193   --l_not_hash_found boolean;
194   --
195 begin
196   --
197   -- 1) Get hash index
198   -- 2) If index is empty use index
199   -- 3) If not check if index is correct in which case we have already
200   --    cached index
201   -- 4) If not correct index use alternate index
202   -- 5) Keep trying until find index or find empty index
203   --
204   -- Get hashed index value
205   --
206   l_index := mod(p_plip_id,g_hash_key);
207   --
208   -- 115.9 replace previous code
209     if g_cache_plip_rec(l_index).plip_id = p_plip_id then
210        -- do nothing, cache entry already exists
211        null;
212     else
213       --
214       -- Loop through the hash using the jump routine to check further
215       -- indexes
216       -- 115.9 if none exists at current index the NO_DATA_FOUND expection will fire
217       --
218       l_index := l_index+g_hash_jump;
219       while g_cache_plip_rec(l_index).plip_id <> p_plip_id loop
220         --
221         l_index := l_index+g_hash_jump;
222 
223       end loop;
224       --
225     end if;
226   --
227   -- hr_utility.set_location('Leaving '||l_proc,10);
228   --
229 exception when NO_DATA_FOUND then
230   -- 115.9 set cache entry at current index location
231    g_cache_plip_rec(l_index):=p_rec;
232 --
233 end set_object;
234 --
235 procedure set_object(p_ptip_id in number,
236                      p_rec     in out NOCOPY ben_elig_to_prte_rsn_f%rowtype) is
237   --
238   l_proc           varchar2(80) := g_package||'set_object ptipelpr';
239   l_index          pls_integer;
240   --l_not_hash_found boolean;
241   --
242 begin
243   --
244   -- 1) Get hash index
245   -- 2) If index is empty use index
246   -- 3) If not check if index is correct in which case we have already
247   --    cached index
248   -- 4) If not correct index use alternate index
249   -- 5) Keep trying until find index or find empty index
250   --
251   -- Get hashed index value
252   --
253   l_index := mod(p_ptip_id,g_hash_key);
254   -- 115.9 replace previous code
255     if g_cache_ptip_rec(l_index).ptip_id = p_ptip_id then
256        -- do nothing, cache entry already exists
257        null;
258     else
259       --
260       -- Loop through the hash using the jump routine to check further
261       -- indexes
262       -- 115.9 if none exists at current index the NO_DATA_FOUND expection will fire
263       --
264       l_index := l_index+g_hash_jump;
265       while g_cache_ptip_rec(l_index).ptip_id <> p_ptip_id loop
266         --
267         l_index := l_index+g_hash_jump;
268 
269       end loop;
270       --
271     end if;
272   --
273   -- hr_utility.set_location('Leaving '||l_proc,10);
274   --
275 exception when NO_DATA_FOUND then
276   -- 115.9 set cache entry at current index location
277    g_cache_ptip_rec(l_index):=p_rec;
278 --
279 end set_object;
280 --
281 procedure set_object(p_pgm_id  in number,
282                      p_rec     in out NOCOPY ben_prtn_elig_f%rowtype) is
283   --
284   l_proc           varchar2(80) := g_package||'set_object pgmpel';
285   l_index          pls_integer;
286   --l_not_hash_found boolean;
287   --
288 begin
289   --
290 --  hr_utility.set_location('Entering '||l_proc,10);
291   --
292   -- 1) Get hash index
293   -- 2) If index is empty use index
294   -- 3) If not check if index is correct in which case we have already
295   --    cached index
296   -- 4) If not correct index use alternate index
297   -- 5) Keep trying until find index or find empty index
298   --
299   -- Get hashed index value
300   --
301   l_index := mod(p_pgm_id,g_hash_key);
302   -- 115.9 replace previous code
303     if g_cache_pgm_elig_rec(l_index).pgm_id = p_pgm_id then
304        -- do nothing, cache entry already exists
305        null;
306     else
307       --
308       -- Loop through the hash using the jump routine to check further
309       -- indexes
310       -- 115.9 if none exists at current index the NO_DATA_FOUND expection will fire
311       --
312       l_index := l_index+g_hash_jump;
313       while g_cache_pgm_elig_rec(l_index).pgm_id <> p_pgm_id loop
314         --
315         l_index := l_index+g_hash_jump;
316 
317       end loop;
318       --
319     end if;
320   --
321   -- hr_utility.set_location('Leaving '||l_proc,10);
322   --
323 exception when NO_DATA_FOUND then
324   -- 115.9 set cache entry at current index location
325    g_cache_pgm_elig_rec(l_index):=p_rec;
326 --
327 end set_object;
328 --
329 procedure set_object(p_pl_id   in number,
330                      p_rec     in out NOCOPY ben_prtn_elig_f%rowtype) is
331   --
332   l_proc           varchar2(80) := g_package||'set_object plnpel';
333   l_index          pls_integer;
334   --l_not_hash_found boolean;
335   --
336 begin
337   --
338   -- 1) Get hash index
339   -- 2) If index is empty use index
340   -- 3) If not check if index is correct in which case we have already
341   --    cached index
342   -- 4) If not correct index use alternate index
343   -- 5) Keep trying until find index or find empty index
344   --
345   -- Get hashed index value
346   --
347   l_index := mod(p_pl_id,g_hash_key);
348   --
349   -- 115.9 replace previous code
350     if g_cache_pl_elig_rec(l_index).pl_id = p_pl_id then
351        -- do nothing, cache entry already exists
352        null;
353     else
354       --
355       -- Loop through the hash using the jump routine to check further
356       -- indexes
357       -- 115.9 if none exists at current index the NO_DATA_FOUND expection will fire
358       --
359       l_index := l_index+g_hash_jump;
360       while g_cache_pl_elig_rec(l_index).pl_id <> p_pl_id loop
361         --
362         l_index := l_index+g_hash_jump;
363 
364       end loop;
365       --
366     end if;
367   --
368   -- hr_utility.set_location('Leaving '||l_proc,10);
369   --
370 exception when NO_DATA_FOUND then
371   -- 115.9 set cache entry at current index location
372    g_cache_pl_elig_rec(l_index):=p_rec;
373 --
374 end set_object;
375 --
376 procedure set_object(p_oipl_id in number,
377                      p_rec     in out NOCOPY ben_prtn_elig_f%rowtype) is
378   --
379   l_proc           varchar2(80) := g_package||'set_object oiplpel';
380   l_index          pls_integer;
381   --l_not_hash_found boolean;
382   --
383 begin
384   --
385   -- 1) Get hash index
386   -- 2) If index is empty use index
387   -- 3) If not check if index is correct in which case we have already
388   --    cached index
389   -- 4) If not correct index use alternate index
390   -- 5) Keep trying until find index or find empty index
391   --
392   -- Get hashed index value
393   --
394   l_index := mod(p_oipl_id,g_hash_key);
395   --
396   -- 115.9 replace previous code
397     if g_cache_oipl_elig_rec(l_index).oipl_id = p_oipl_id then
398        -- do nothing, cache entry already exists
399        null;
400     else
401       --
402       -- Loop through the hash using the jump routine to check further
403       -- indexes
404       -- 115.9 if none exists at current index the NO_DATA_FOUND expection will fire
405       --
406       l_index := l_index+g_hash_jump;
407       while g_cache_oipl_elig_rec(l_index).oipl_id <> p_oipl_id loop
408         --
409         l_index := l_index+g_hash_jump;
410 
411       end loop;
412       --
413     end if;
414   --
415   -- hr_utility.set_location('Leaving '||l_proc,10);
416   --
417 exception when NO_DATA_FOUND then
418   -- 115.9 set cache entry at current index location
419    g_cache_oipl_elig_rec(l_index):=p_rec;
420 --
421 end set_object;
422 --
426   l_proc           varchar2(80) := g_package||'set_object plippel';
423 procedure set_object(p_plip_id in number,
424                      p_rec     in out NOCOPY ben_prtn_elig_f%rowtype) is
425   --
427   l_index          pls_integer;
428   --l_not_hash_found boolean;
429   --
430 begin
431   --
432   -- 1) Get hash index
433   -- 2) If index is empty use index
434   -- 3) If not check if index is correct in which case we have already
435   --    cached index
436   -- 4) If not correct index use alternate index
437   -- 5) Keep trying until find index or find empty index
438   --
439   -- Get hashed index value
440   --
441   l_index := mod(p_plip_id,g_hash_key);
442   -- 115.9 replace previous code
443     if g_cache_plip_elig_rec(l_index).plip_id = p_plip_id then
444        -- do nothing, cache entry already exists
445        null;
446     else
447       --
448       -- Loop through the hash using the jump routine to check further
449       -- indexes
450       -- 115.9 if none exists at current index the NO_DATA_FOUND expection will fire
451       --
452       l_index := l_index+g_hash_jump;
453       while g_cache_plip_elig_rec(l_index).plip_id <> p_plip_id loop
454         --
455         l_index := l_index+g_hash_jump;
456 
457       end loop;
458       --
459     end if;
460   --
461   -- hr_utility.set_location('Leaving '||l_proc,10);
462   --
463 exception when NO_DATA_FOUND then
464   -- 115.9 set cache entry at current index location
465    g_cache_plip_elig_rec(l_index):=p_rec;
466 --
467 end set_object;
468 --
469 procedure set_object(p_ptip_id in number,
470                      p_rec     in out NOCOPY ben_prtn_elig_f%rowtype) is
471   --
472   l_proc           varchar2(80) := g_package||'set_object ptippel';
473   l_index          pls_integer;
474   --l_not_hash_found boolean;
475   --
476 begin
477   --
478   -- 1) Get hash index
479   -- 2) If index is empty use index
480   -- 3) If not check if index is correct in which case we have already
481   --    cached index
482   -- 4) If not correct index use alternate index
483   -- 5) Keep trying until find index or find empty index
484   --
485   -- Get hashed index value
486   --
487   l_index := mod(p_ptip_id,g_hash_key);
488   -- 115.9 replace previous code
489     if g_cache_ptip_elig_rec(l_index).ptip_id = p_ptip_id then
490        -- do nothing, cache entry already exists
491        null;
492     else
493       --
494       -- Loop through the hash using the jump routine to check further
495       -- indexes
496       -- 115.9 if none exists at current index the NO_DATA_FOUND expection will fire
497       --
498       l_index := l_index+g_hash_jump;
499       while g_cache_ptip_elig_rec(l_index).ptip_id <> p_ptip_id loop
500         --
501         l_index := l_index+g_hash_jump;
502 
503       end loop;
504       --
505     end if;
506   --
507   -- hr_utility.set_location('Leaving '||l_proc,10);
508   --
509 exception when NO_DATA_FOUND then
510   -- 115.9 set cache entry at current index location
511    g_cache_ptip_elig_rec(l_index):=p_rec;
512 --
513 end set_object;
514 --
515 procedure set_object(p_pl_id             in number,
516                      p_ler_id            in number,
517                      p_business_group_id in number,
518                      p_effective_date    in date,
519                      p_rec               in out NOCOPY ben_elig_to_prte_rsn_f%rowtype
520                     ) is
521   --
522   l_proc varchar2(80) := g_package||'set_object plnler';
523   --
524   cursor c1 is
525     select peo.*
526     from   ben_elig_to_prte_rsn_f peo
527     where  peo.business_group_id  = p_business_group_id
528     and    peo.ler_id = p_ler_id
529     and    peo.pl_id = p_pl_id
530     and    p_effective_date
531            between peo.effective_start_date
532            and     peo.effective_end_date;
533   --
534   l_rec ben_elig_to_prte_rsn_f%rowtype;
535   --
536 begin
537   --
538   open c1;
539     --
540     fetch c1 into l_rec;
541     --
542   close c1;
543   --
544   l_rec.pl_id := p_pl_id;
545   --
546   set_object(p_pl_id => p_pl_id,
547              p_rec   => l_rec);
548   --
549   p_rec := l_rec;
550   --
551 end set_object;
552 --
553 procedure set_object(p_pgm_id            in number,
554                      p_ler_id            in number,
555                      p_business_group_id in number,
556                      p_effective_date    in date,
557                      p_rec               in out NOCOPY ben_elig_to_prte_rsn_f%rowtype
558                     )
559 is
560   --
561   l_proc varchar2(80) := g_package||'set_object pgmler';
562   --
563   cursor c1 is
564     select peo.*
565     from   ben_elig_to_prte_rsn_f peo
566     where  peo.business_group_id  = p_business_group_id
567     and    peo.ler_id = p_ler_id
568     and    peo.pgm_id = p_pgm_id
569     and    p_effective_date
570            between peo.effective_start_date
571            and     peo.effective_end_date;
572   --
576   --
573   l_rec ben_elig_to_prte_rsn_f%rowtype;
574   --
575 begin
577 --  hr_utility.set_location('Entering '||l_proc,10);
578   --
579   open c1;
580     --
581     fetch c1 into l_rec;
582     --
583   close c1;
584   --
585   l_rec.pgm_id := p_pgm_id;
586   --
587   set_object(p_pgm_id => p_pgm_id,
588              p_rec    => l_rec);
589   --
590   p_rec := l_rec;
591   --
592 --  hr_utility.set_location('Leaving '||l_proc,10);
593   --
594 end set_object;
595 --
596 procedure set_object(p_oipl_id           in number,
597                      p_ler_id            in number,
598                      p_business_group_id in number,
599                      p_effective_date    in date,
600                      p_rec               in out NOCOPY ben_elig_to_prte_rsn_f%rowtype
601                      ) is
602   --
603   l_proc varchar2(80) := g_package||'set_object oipller';
604   --
605   cursor c1 is
606     select peo.*
607     from   ben_elig_to_prte_rsn_f peo
608     where  peo.business_group_id  = p_business_group_id
609     and    peo.ler_id = p_ler_id
610     and    peo.oipl_id = p_oipl_id
611     and    p_effective_date
612            between peo.effective_start_date
613            and     peo.effective_end_date;
614   --
615   l_rec ben_elig_to_prte_rsn_f%rowtype;
616   --
617 begin
618   --
619   open c1;
620     --
621     fetch c1 into l_rec;
622     --
623   close c1;
624   --
625   l_rec.oipl_id := p_oipl_id;
626   --
627   set_object(p_oipl_id => p_oipl_id,
628              p_rec     => l_rec);
629   --
630   p_rec := l_rec;
631   --
632 end set_object;
633 --
634 procedure set_object(p_plip_id           in number,
635                      p_ler_id            in number,
636                      p_business_group_id in number,
637                      p_effective_date    in date,
638                      p_rec               in out NOCOPY ben_elig_to_prte_rsn_f%rowtype
639                      ) is
640   --
641   l_proc varchar2(80) := g_package||'set_object plipler';
642   --
643   cursor c1 is
644     select peo.*
645     from   ben_elig_to_prte_rsn_f peo
646     where  peo.business_group_id  = p_business_group_id
647     and    peo.ler_id = p_ler_id
648     and    peo.plip_id = p_plip_id
649     and    p_effective_date
650            between peo.effective_start_date
651            and     peo.effective_end_date;
652   --
653   l_rec ben_elig_to_prte_rsn_f%rowtype;
654   --
655 begin
656   --
657   open c1;
658     --
659     fetch c1 into l_rec;
660     --
661   close c1;
662   --
663   l_rec.plip_id := p_plip_id;
664   --
665   set_object(p_plip_id => p_plip_id,
666              p_rec     => l_rec);
667   --
668   p_rec := l_rec;
669   --
670 end set_object;
671 --
672 procedure set_object(p_ptip_id           in number,
673                      p_ler_id            in number,
674                      p_business_group_id in number,
675                      p_effective_date    in date,
676                      p_rec               in out NOCOPY ben_elig_to_prte_rsn_f%rowtype
677                      ) is
678   --
679   l_proc varchar2(80) := g_package||'set_object ptipler';
680   --
681   cursor c1 is
682     select peo.*
683     from   ben_elig_to_prte_rsn_f peo
684     where  peo.business_group_id  = p_business_group_id
685     and    peo.ler_id = p_ler_id
686     and    peo.ptip_id = p_ptip_id
687     and    p_effective_date
688            between peo.effective_start_date
689            and     peo.effective_end_date;
690   --
691   l_rec ben_elig_to_prte_rsn_f%rowtype;
692   --
693 begin
694   --
695   open c1;
696     --
697     fetch c1 into l_rec;
698     --
699   close c1;
700   --
701   l_rec.ptip_id := p_ptip_id;
702   --
703   set_object(p_ptip_id => p_ptip_id,
704              p_rec     => l_rec);
705   --
706   p_rec := l_rec;
707   --
708 end set_object;
709 --
710 procedure set_object(p_pl_id             in number,
711                      p_business_group_id in number,
712                      p_effective_date    in date) is
713   --
714   l_proc varchar2(80) := g_package||'set_object pln';
715   --
716   cursor c1 is
717     select epa.*
718     from   ben_prtn_elig_f epa
719     where  epa.business_group_id  = p_business_group_id
720     and    epa.pl_id = p_pl_id
721     and    p_effective_date
722            between epa.effective_start_date
723            and     epa.effective_end_date;
724   --
725   l_rec ben_prtn_elig_f%rowtype;
726   --
727 begin
728   --
729   open c1;
730     --
731     fetch c1 into l_rec;
732     --
733   close c1;
734   --
735   l_rec.pl_id := p_pl_id;
736   --
737   set_object(p_pl_id => p_pl_id,
738              p_rec   => l_rec);
739   --
740 end set_object;
741 --
745   --
742 procedure set_object(p_pgm_id            in number,
743                      p_business_group_id in number,
744                      p_effective_date    in date) is
746   l_proc varchar2(80) := g_package||'set_object pgm';
747   --
748   cursor c1 is
749     select epa.*
750     from   ben_prtn_elig_f epa
751     where  epa.business_group_id  = p_business_group_id
752     and    epa.pgm_id = p_pgm_id
753     and    p_effective_date
754            between epa.effective_start_date
755            and     epa.effective_end_date;
756   --
757   l_rec ben_prtn_elig_f%rowtype;
758   --
759 begin
760   --
761 --  hr_utility.set_location('Entering '||l_proc,10);
762   --
763   open c1;
764     --
765     fetch c1 into l_rec;
766     --
767   close c1;
768   --
769   l_rec.pgm_id := p_pgm_id;
770   --
771   set_object(p_pgm_id => p_pgm_id,
772              p_rec    => l_rec);
773   --
774 --  hr_utility.set_location('Leaving '||l_proc,10);
775   --
776 end set_object;
777 --
778 procedure set_object(p_oipl_id           in number,
779                      p_business_group_id in number,
780                      p_effective_date    in date) is
781   --
782   l_proc varchar2(80) := g_package||'set_object oipl';
783   --
784   cursor c1 is
785     select epa.*
786     from   ben_prtn_elig_f epa
787     where  epa.business_group_id  = p_business_group_id
788     and    epa.oipl_id = p_oipl_id
789     and    p_effective_date
790            between epa.effective_start_date
791            and     epa.effective_end_date;
792   --
793   l_rec ben_prtn_elig_f%rowtype;
794   --
795 begin
796   --
797   open c1;
798     --
799     fetch c1 into l_rec;
800     --
801   close c1;
802   --
803   l_rec.oipl_id := p_oipl_id;
804   --
805   set_object(p_oipl_id => p_oipl_id,
806              p_rec     => l_rec);
807   --
808 end set_object;
809 --
810 procedure set_object(p_plip_id           in number,
811                      p_business_group_id in number,
812                      p_effective_date    in date) is
813   --
814   l_proc varchar2(80) := g_package||'set_object plip';
815   --
816   cursor c1 is
817     select epa.*
818     from   ben_prtn_elig_f epa
819     where  epa.business_group_id  = p_business_group_id
820     and    epa.plip_id = p_plip_id
821     and    p_effective_date
822            between epa.effective_start_date
823            and     epa.effective_end_date;
824   --
825   l_rec ben_prtn_elig_f%rowtype;
826   --
827 begin
828   --
829   open c1;
830     --
831     fetch c1 into l_rec;
832     --
833   close c1;
834   --
835   l_rec.plip_id := p_plip_id;
836   --
837   set_object(p_plip_id => p_plip_id,
838              p_rec     => l_rec);
839   --
840 end set_object;
841 --
842 procedure set_object(p_ptip_id           in number,
843                      p_business_group_id in number,
844                      p_effective_date    in date) is
845   --
846   l_proc varchar2(80) := g_package||'set_object ptip';
847   --
848   cursor c1 is
849     select epa.*
850     from   ben_prtn_elig_f epa
851     where  epa.business_group_id  = p_business_group_id
852     and    epa.ptip_id = p_ptip_id
853     and    p_effective_date
854            between epa.effective_start_date
855            and     epa.effective_end_date;
856   --
857   l_rec ben_prtn_elig_f%rowtype;
858   --
859 begin
860   --
861   open c1;
862     --
863     fetch c1 into l_rec;
864     --
865   close c1;
866   --
867   l_rec.ptip_id := p_ptip_id;
868   --
869   set_object(p_ptip_id => p_ptip_id,
870              p_rec     => l_rec);
871   --
872 end set_object;
873 --
874 -- Get object routines
875 --
876 procedure get_object(p_pgm_id  in  number,
877                      p_ler_id  in  number default null,
878                      p_rec     in out NOCOPY ben_elig_to_prte_rsn_f%rowtype) is
879   --
880   l_proc           varchar2(80) := g_package||'get_object pgmelpr';
881   --
882   l_env            ben_env_object.g_global_env_rec_type;
883   l_index          pls_integer;
884   --l_not_hash_found boolean;
885   --
886 begin
887   --
888 --  hr_utility.set_location ('Entering '||l_proc,10);
889   --
890   -- Steps to do process
891   --
892   -- 1) Try and get value from cache
893   -- 2) If can get from cache then copy to output record
894   -- 3) If can't get from cache do db hit and then
895   --    copy to cache record and then copy to output record.
896   --
897   -- Get hashed index value
898   --115.9 replace code
899   l_index := mod(p_pgm_id,g_hash_key);
900   --
901     if g_cache_pgm_rec(l_index).pgm_id = p_pgm_id then
902       --
903       p_rec := g_cache_pgm_rec(l_index);
904       --
905     else
906       --
907       -- We need to loop through all the hashed indexes
911       while g_cache_pgm_rec(l_index).pgm_id <> p_pgm_id loop
908       -- if none exists at current index the NO_DATA_FOUND expection will fire
909       --
910       l_index := l_index+g_hash_jump;
912         --
913         l_index := l_index+g_hash_jump;
914         --
915       end loop;
916       --
917       p_rec := g_cache_pgm_rec(l_index);
918       --
919     end if;
920   --
921   -- hr_utility.set_location('Leaving '||l_proc,10);
922   --
923 exception
924   --
925   when no_data_found then
926     --
927     ben_env_object.get(p_rec => l_env);
928     --
929     set_object(p_pgm_id            => p_pgm_id
930               ,p_ler_id            => p_ler_id
931               ,p_business_group_id => l_env.business_group_id
932               ,p_effective_date    => nvl(l_env.lf_evt_ocrd_dt,l_env.effective_date)
933               ,p_rec               => p_rec
934               );
935     --
936 end get_object;
937 --
938 procedure get_object(p_pl_id   in  number,
939                      p_ler_id  in  number default null,
940                      p_rec     in out NOCOPY ben_elig_to_prte_rsn_f%rowtype) is
941   --
942   l_proc           varchar2(80) := g_package||'get_object plnelpr';
943   --
944   l_env            ben_env_object.g_global_env_rec_type;
945   --
946   l_index          pls_integer;
947   --l_not_hash_found boolean;
948   --
949 begin
950   --
951 --  hr_utility.set_location ('Entering '||l_proc,10);
952   --
953   -- Steps to do process
954   --
955   -- 1) Try and get value from cache
956   -- 2) If can get from cache then copy to output record
957   -- 3) If can't get from cache do db hit and then
958   --    copy to cache record and then copy to output record.
959   --
960   -- Get hashed index value
961   --
962   --115.9 replace code
963   l_index := mod(p_pl_id,g_hash_key);
964   --
965     if g_cache_pl_rec(l_index).pl_id = p_pl_id then
966       --
967       p_rec := g_cache_pl_rec(l_index);
968       --
969     else
970       --
971       -- We need to loop through all the hashed indexes
972       -- if none exists at current index the NO_DATA_FOUND expection will fire
973       --
974       l_index := l_index+g_hash_jump;
975       while g_cache_pl_rec(l_index).pl_id <> p_pl_id loop
976         --
977         l_index := l_index+g_hash_jump;
978         --
979       end loop;
980       --
981       p_rec := g_cache_pl_rec(l_index);
982       --
983     end if;
984   --
985   -- hr_utility.set_location('Leaving '||l_proc,10);
986   --
987 exception
988   --
989   when no_data_found then
990     --
991     ben_env_object.get(p_rec => l_env);
992     --
993     set_object(p_pl_id             => p_pl_id
994               ,p_ler_id            => p_ler_id
995               ,p_business_group_id => l_env.business_group_id
996               ,p_effective_date    => nvl(l_env.lf_evt_ocrd_dt,l_env.effective_date)
997               ,p_rec               => p_rec
998               );
999     --
1000 end get_object;
1001 --
1002 procedure get_object(p_oipl_id in  number,
1003                      p_ler_id  in  number default null,
1004                      p_rec     in out NOCOPY ben_elig_to_prte_rsn_f%rowtype) is
1005   --
1006   l_proc           varchar2(80) := g_package||'get_object oiplelpr';
1007   --
1008   l_env            ben_env_object.g_global_env_rec_type;
1009   --
1010   l_index          pls_integer;
1011   l_not_hash_found boolean;
1012   --
1013 begin
1014   --
1015 /*
1016 --  hr_utility.set_location ('Entering '||l_proc,10);
1017 */
1018   --
1019   -- Steps to do process
1020   --
1021   -- 1) Try and get value from cache
1022   -- 2) If can get from cache then copy to output record
1023   -- 3) If can't get from cache do db hit and then
1024   --    copy to cache record and then copy to output record.
1025   --
1026   -- Get hashed index value
1027   --
1028   --115.9 replace code
1029   l_index := mod(p_oipl_id,g_hash_key);
1030   --
1031     if g_cache_oipl_rec(l_index).oipl_id = p_oipl_id then
1032       --
1033       p_rec := g_cache_oipl_rec(l_index);
1034       --
1035     else
1036       --
1037       -- We need to loop through all the hashed indexes
1038       -- if none exists at current index the NO_DATA_FOUND expection will fire
1039       --
1040       l_index := l_index+g_hash_jump;
1041       while g_cache_oipl_rec(l_index).oipl_id <> p_oipl_id loop
1042         --
1043         l_index := l_index+g_hash_jump;
1044         --
1045       end loop;
1046       --
1047       p_rec := g_cache_oipl_rec(l_index);
1048       --
1049     end if;
1050   --
1051   -- hr_utility.set_location('Leaving '||l_proc,10);
1052   --
1053 exception
1054   --
1055   when no_data_found then
1056     --
1057     ben_env_object.get(p_rec => l_env);
1058     --
1059     set_object(p_oipl_id           => p_oipl_id
1060               ,p_ler_id            => p_ler_id
1061               ,p_business_group_id => l_env.business_group_id
1065     --
1062               ,p_effective_date    => nvl(l_env.lf_evt_ocrd_dt,l_env.effective_date)
1063               ,p_rec               => p_rec
1064               );
1066 end get_object;
1067 --
1068 procedure get_object(p_plip_id in  number,
1069                      p_ler_id  in  number default null,
1070                      p_rec     in out NOCOPY ben_elig_to_prte_rsn_f%rowtype) is
1071   --
1072   l_proc           varchar2(80) := g_package||'get_object plipelpr';
1073   --
1074   l_env            ben_env_object.g_global_env_rec_type;
1075   --
1076   l_index          pls_integer;
1077   --l_not_hash_found boolean;
1078   --
1079 begin
1080   --
1081 --  hr_utility.set_location ('Entering '||l_proc,10);
1082   --
1083   -- Steps to do process
1084   --
1085   -- 1) Try and get value from cache
1086   -- 2) If can get from cache then copy to output record
1087   -- 3) If can't get from cache do db hit and then
1088   --    copy to cache record and then copy to output record.
1089   --
1090   -- Get hashed index value
1091   --
1092   --115.9 replace code
1093   l_index := mod(p_plip_id,g_hash_key);
1094   --
1095     if g_cache_plip_rec(l_index).plip_id = p_plip_id then
1096       --
1097       p_rec := g_cache_plip_rec(l_index);
1098       --
1099     else
1100       --
1101       -- We need to loop through all the hashed indexes
1102       -- if none exists at current index the NO_DATA_FOUND expection will fire
1103       --
1104       l_index := l_index+g_hash_jump;
1105       while g_cache_plip_rec(l_index).plip_id <> p_plip_id loop
1106         --
1107         l_index := l_index+g_hash_jump;
1108         --
1109       end loop;
1110       --
1111       p_rec := g_cache_plip_rec(l_index);
1112       --
1113     end if;
1114   --
1115   -- hr_utility.set_location('Leaving '||l_proc,10);
1116   --
1117 exception
1118   --
1119   when no_data_found then
1120     --
1121     ben_env_object.get(p_rec => l_env);
1122     --
1123     set_object(p_plip_id           => p_plip_id
1124               ,p_ler_id            => p_ler_id
1125               ,p_business_group_id => l_env.business_group_id
1126               ,p_effective_date    => nvl(l_env.lf_evt_ocrd_dt,l_env.effective_date)
1127               ,p_rec               => p_rec
1128               );
1129     --
1130 end get_object;
1131 --
1132 procedure get_object(p_ptip_id in  number,
1133                      p_ler_id  in  number default null,
1134                      p_rec     in out NOCOPY ben_elig_to_prte_rsn_f%rowtype) is
1135   --
1136   l_proc           varchar2(80) := g_package||'get_object ptipelpr';
1137   --
1138   l_env            ben_env_object.g_global_env_rec_type;
1139   --
1140   l_index          pls_integer;
1141   --l_not_hash_found boolean;
1142   --
1143 begin
1144   --
1145 --  hr_utility.set_location ('Entering '||l_proc,10);
1146   --
1147   -- Steps to do process
1148   --
1149   -- 1) Try and get value from cache
1150   -- 2) If can get from cache then copy to output record
1151   -- 3) If can't get from cache do db hit and then
1152   --    copy to cache record and then copy to output record.
1153   --
1154   -- Get hashed index value
1155   --
1156   --115.9 replace code
1157   l_index := mod(p_ptip_id,g_hash_key);
1158   --
1159     if g_cache_ptip_rec(l_index).ptip_id = p_ptip_id then
1160       --
1161       p_rec := g_cache_ptip_rec(l_index);
1162       --
1163     else
1164       --
1165       -- We need to loop through all the hashed indexes
1166       -- if none exists at current index the NO_DATA_FOUND expection will fire
1167       --
1168       l_index := l_index+g_hash_jump;
1169       while g_cache_ptip_rec(l_index).ptip_id <> p_ptip_id loop
1170         --
1171         l_index := l_index+g_hash_jump;
1172         --
1173       end loop;
1174       --
1175       p_rec := g_cache_ptip_rec(l_index);
1176       --
1177     end if;
1178   --
1179   -- hr_utility.set_location('Leaving '||l_proc,10);
1180   --
1181 exception
1182   --
1183   when no_data_found then
1184     --
1185     ben_env_object.get(p_rec => l_env);
1186     --
1187     set_object(p_ptip_id           => p_ptip_id
1188               ,p_ler_id            => p_ler_id
1189               ,p_business_group_id => l_env.business_group_id
1190               ,p_effective_date    => nvl(l_env.lf_evt_ocrd_dt,l_env.effective_date)
1191               ,p_rec               => p_rec
1192               );
1193     --
1194 end get_object;
1195 --
1196 procedure get_object(p_pgm_id  in  number,
1197                      p_rec     in out NOCOPY ben_prtn_elig_f%rowtype) is
1198   --
1199   l_proc           varchar2(80) := g_package||'get_object pgmpel';
1200   --
1201   l_env            ben_env_object.g_global_env_rec_type;
1202   --
1203   l_index          pls_integer;
1204   l_not_hash_found boolean;
1205   --
1206 begin
1207   --
1208 --  hr_utility.set_location ('Entering '||l_proc,10);
1209   --
1210   -- Steps to do process
1211   --
1212   -- 1) Try and get value from cache
1213   -- 2) If can get from cache then copy to output record
1214   -- 3) If can't get from cache do db hit and then
1218   --
1215   --    copy to cache record and then copy to output record.
1216   --
1217   -- Get hashed index value
1219   --115.9 replace code
1220   l_index := mod(p_pgm_id,g_hash_key);
1221   --
1222     if g_cache_pgm_elig_rec(l_index).pgm_id = p_pgm_id then
1223       --
1224       p_rec := g_cache_pgm_elig_rec(l_index);
1225       --
1226     else
1227       --
1228       -- We need to loop through all the hashed indexes
1229       -- if none exists at current index the NO_DATA_FOUND expection will fire
1230       --
1231       l_index := l_index+g_hash_jump;
1232       while g_cache_pgm_elig_rec(l_index).pgm_id <> p_pgm_id loop
1233         --
1234         l_index := l_index+g_hash_jump;
1235         --
1236       end loop;
1237       --
1238       p_rec := g_cache_pgm_elig_rec(l_index);
1239       --
1240     end if;
1241   --
1242   -- hr_utility.set_location('Leaving '||l_proc,10);
1243   --
1244 exception
1245   --
1246   when no_data_found then
1247     --
1248     ben_env_object.get(p_rec => l_env);
1249     --
1250     ben_elig_object.set_object
1251       (p_pgm_id            => p_pgm_id
1252       ,p_business_group_id => l_env.business_group_id
1253       ,p_effective_date    => nvl(l_env.lf_evt_ocrd_dt,l_env.effective_date)
1254       );
1255     --
1256     p_rec := g_cache_pgm_elig_rec(l_index);
1257     --
1258 end get_object;
1259 --
1260 procedure get_object(p_pl_id   in  number,
1261                      p_rec     in out NOCOPY ben_prtn_elig_f%rowtype) is
1262   --
1263   l_proc           varchar2(80) := g_package||'get_object plnpel';
1264   --
1265   l_env            ben_env_object.g_global_env_rec_type;
1266   --
1267   l_index          pls_integer;
1268   --l_not_hash_found boolean;
1269   --
1270 begin
1271   --
1272 --  hr_utility.set_location ('Entering '||l_proc,10);
1273   --
1274   -- Steps to do process
1275   --
1276   -- 1) Try and get value from cache
1277   -- 2) If can get from cache then copy to output record
1278   -- 3) If can't get from cache do db hit and then
1279   --    copy to cache record and then copy to output record.
1280   --
1281   -- Get hashed index value
1282   --
1283   --115.9 replace code
1284   l_index := mod(p_pl_id,g_hash_key);
1285   --
1286     if g_cache_pl_elig_rec(l_index).pl_id = p_pl_id then
1287       --
1288       p_rec := g_cache_pl_elig_rec(l_index);
1289       --
1290     else
1291       --
1292       -- We need to loop through all the hashed indexes
1293       -- if none exists at current index the NO_DATA_FOUND expection will fire
1294       --
1295       l_index := l_index+g_hash_jump;
1296       while g_cache_pl_elig_rec(l_index).pl_id <> p_pl_id loop
1297         --
1298         l_index := l_index+g_hash_jump;
1299         --
1300       end loop;
1301       --
1302       p_rec := g_cache_pl_elig_rec(l_index);
1303       --
1304     end if;
1305   --
1306   -- hr_utility.set_location('Leaving '||l_proc,10);
1307   --
1308 exception
1309   --
1310   when no_data_found then
1311     --
1312     ben_env_object.get(p_rec => l_env);
1313     --
1314     ben_elig_object.set_object
1315       (p_pl_id             => p_pl_id
1316       ,p_business_group_id => l_env.business_group_id
1317       ,p_effective_date    => nvl(l_env.lf_evt_ocrd_dt,l_env.effective_date)
1318       );
1319     --
1320     p_rec := g_cache_pl_elig_rec(l_index);
1321     --
1322 end get_object;
1323 --
1324 procedure get_object(p_oipl_id in  number,
1325                      p_rec     in out NOCOPY ben_prtn_elig_f%rowtype) is
1326   --
1327   l_proc           varchar2(80) := g_package||'get_object oiplpel';
1328   --
1329   l_env            ben_env_object.g_global_env_rec_type;
1330   --
1331   l_index          pls_integer;
1332   --l_not_hash_found boolean;
1333   --
1334 begin
1335   --
1336 --  hr_utility.set_location ('Entering '||l_proc,10);
1337   --
1338   -- Steps to do process
1339   --
1340   -- 1) Try and get value from cache
1341   -- 2) If can get from cache then copy to output record
1342   -- 3) If can't get from cache do db hit and then
1343   --    copy to cache record and then copy to output record.
1344   --
1345   -- Get hashed index value
1346   --115.9 replace code
1347   l_index := mod(p_oipl_id,g_hash_key);
1348   --
1349     if g_cache_oipl_elig_rec(l_index).oipl_id = p_oipl_id then
1350       --
1351       p_rec := g_cache_oipl_elig_rec(l_index);
1352       --
1353     else
1354       --
1355       -- We need to loop through all the hashed indexes
1356       -- if none exists at current index the NO_DATA_FOUND expection will fire
1357       --
1358       l_index := l_index+g_hash_jump;
1359       while g_cache_oipl_elig_rec(l_index).oipl_id <> p_oipl_id loop
1360         --
1361         l_index := l_index+g_hash_jump;
1362         --
1363       end loop;
1364       --
1365       p_rec := g_cache_oipl_elig_rec(l_index);
1366       --
1367     end if;
1368   --
1369   -- hr_utility.set_location('Leaving '||l_proc,10);
1370   --
1371 exception
1372   --
1373   when no_data_found then
1374     --
1378       (p_oipl_id           => p_oipl_id
1375     ben_env_object.get(p_rec => l_env);
1376     --
1377     ben_elig_object.set_object
1379       ,p_business_group_id => l_env.business_group_id
1380       ,p_effective_date    => nvl(l_env.lf_evt_ocrd_dt,l_env.effective_date)
1381       );
1382     --
1383     p_rec := g_cache_oipl_elig_rec(l_index);
1384     --
1385 end get_object;
1386 --
1387 procedure get_object(p_plip_id in  number,
1388                      p_rec     in out NOCOPY ben_prtn_elig_f%rowtype) is
1389   --
1390   l_proc           varchar2(80) := g_package||'get_object plippel';
1391   --
1392   l_env            ben_env_object.g_global_env_rec_type;
1393   --
1394   l_index          pls_integer;
1395   --l_not_hash_found boolean;
1396   --
1397 begin
1398   --
1399 --  hr_utility.set_location ('Entering '||l_proc,10);
1400   --
1401   -- Steps to do process
1402   --
1403   -- 1) Try and get value from cache
1404   -- 2) If can get from cache then copy to output record
1405   -- 3) If can't get from cache do db hit and then
1406   --    copy to cache record and then copy to output record.
1407   --
1408   -- Get hashed index value
1409   --
1410   --115.9 replace code
1411   l_index := mod(p_plip_id,g_hash_key);
1412   --
1413     if g_cache_plip_elig_rec(l_index).plip_id = p_plip_id then
1414       --
1415       p_rec := g_cache_plip_elig_rec(l_index);
1416       --
1417     else
1418       --
1419       -- We need to loop through all the hashed indexes
1420       -- if none exists at current index the NO_DATA_FOUND expection will fire
1421       --
1422       l_index := l_index+g_hash_jump;
1423       while g_cache_plip_elig_rec(l_index).plip_id <> p_plip_id loop
1424         --
1425         l_index := l_index+g_hash_jump;
1426         --
1427       end loop;
1428       --
1429       p_rec := g_cache_plip_elig_rec(l_index);
1430       --
1431     end if;
1432   --
1433   -- hr_utility.set_location('Leaving '||l_proc,10);
1434   --
1435 exception
1436   --
1437   when no_data_found then
1438     --
1439     ben_env_object.get(p_rec => l_env);
1440     --
1441     ben_elig_object.set_object
1442       (p_plip_id           => p_plip_id
1443       ,p_business_group_id => l_env.business_group_id
1444       ,p_effective_date    => nvl(l_env.lf_evt_ocrd_dt,l_env.effective_date)
1445       );
1446     --
1447     p_rec := g_cache_plip_elig_rec(l_index);
1448     --
1449 end get_object;
1450 --
1451 procedure get_object(p_ptip_id in  number,
1452                      p_rec     in out NOCOPY ben_prtn_elig_f%rowtype) is
1453   --
1454   l_proc           varchar2(80) := g_package||'get_object ptippel';
1455   --
1456   l_env            ben_env_object.g_global_env_rec_type;
1457   --
1458   l_index          pls_integer;
1459   --l_not_hash_found boolean;
1460   --
1461 begin
1462   --
1463 --  hr_utility.set_location ('Entering '||l_proc,10);
1464   --
1465   -- Steps to do process
1466   --
1467   -- 1) Try and get value from cache
1468   -- 2) If can get from cache then copy to output record
1469   -- 3) If can't get from cache do db hit and then
1470   --    copy to cache record and then copy to output record.
1471   --
1472   -- Get hashed index value
1473   --
1474   --115.9 replace code
1475   l_index := mod(p_ptip_id,g_hash_key);
1476   --
1477     if g_cache_ptip_elig_rec(l_index).ptip_id = p_ptip_id then
1478       --
1479       p_rec := g_cache_ptip_elig_rec(l_index);
1480       --
1481     else
1482       --
1483       -- We need to loop through all the hashed indexes
1484       -- if none exists at current index the NO_DATA_FOUND expection will fire
1485       --
1486       l_index := l_index+g_hash_jump;
1487       while g_cache_ptip_elig_rec(l_index).ptip_id <> p_ptip_id loop
1488         --
1489         l_index := l_index+g_hash_jump;
1490         --
1491       end loop;
1492       --
1493       p_rec := g_cache_ptip_elig_rec(l_index);
1494       --
1495     end if;
1496   --
1497   -- hr_utility.set_location('Leaving '||l_proc,10);
1498   --
1499 exception
1500   --
1501   when no_data_found then
1502     --
1503     ben_env_object.get(p_rec => l_env);
1504     --
1505     ben_elig_object.set_object
1506       (p_ptip_id           => p_ptip_id
1507       ,p_business_group_id => l_env.business_group_id
1508       ,p_effective_date    => nvl(l_env.lf_evt_ocrd_dt,l_env.effective_date)
1509       );
1510     --
1511     p_rec := g_cache_ptip_elig_rec(l_index);
1512     --
1513 end get_object;
1514 --
1515 procedure clear_down_cache is
1516   --
1517   l_proc varchar2(80) := g_package||'clear_down_cache';
1518   --
1519 begin
1520   --
1521 --  hr_utility.set_location ('Entering '||l_proc,10);
1522   --
1523   g_cache_pgm_rec.delete;
1524   g_cache_pl_rec.delete;
1525   g_cache_oipl_rec.delete;
1526   g_cache_plip_rec.delete;
1527   g_cache_ptip_rec.delete;
1528   g_cache_pgm_elig_rec.delete;
1529   g_cache_pl_elig_rec.delete;
1530   g_cache_oipl_elig_rec.delete;
1531   g_cache_plip_elig_rec.delete;
1532   g_cache_ptip_elig_rec.delete;
1533   --
1534 --  hr_utility.set_location ('Leaving '||l_proc,10);
1535   --
1536 end clear_down_cache;
1537 --
1538 end ben_elig_object;