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;