DBA Data[Home] [Help]

PACKAGE: APPS.BEN_PERSON_OBJECT

Source


1 package ben_person_object AUTHID CURRENT_USER as
2 /* $Header: benperde.pkh 120.0.12000000.1 2007/01/19 18:39:39 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 	Person Object Caching Routine
13 Purpose
14 	This package is used to return person object information.
15 History
16   Version    Date       Who        What?
17   ---------  ---------  ---------- --------------------------------------------
18   115.0      11-Jun-99  gperry     Created(arcsed in by bbulusu)
19   115.1      18-Jun-99  gperry     Added in person_date_info structure to store
20                                    the minimum effective date of the person
21                                    and the assignment.
22                                    Added in fte info structure to store
23                                    the total fte for a persons primary
24                                    assignment.
25                                    Added cache structure to store active
26                                    life event.
27                                    Added cache structure to store persons
28                                    benefits balance.
29   115.2      23-Jun-99  gperry     Added in assignment extra info cache.
30   115.3      24-Jun-99  gperry     Added in contacts cache.
31   115.4      24-Jun-99  gperry     Removed css cache.
32   115.5      05-Aug-99  gperry     Added last cached record logic.
33   115.6      09-Aug-99  gperry     Added new cache routines.
34                                    assignment_status_types
35                                    soft_coding_keyflex
36                                    person_type_info
37   115.7      16-Aug-99  gperry     Added nocopy compiler directive.
38   115.8      17-Aug-99  gperry     Removed business group id from
39                                    set_ast_object.
40   115.9      18-Aug-99  gperry     Added cache for ben_bnfts_bal_f
41   115.10     23-Aug-99  gperry     Cache full time info using assignment id.
42   115.11     26-Aug-99  gperry     Added cache for benefits assignment.
43                                    Added cache for applicants assignment.
44                                    Made assignment cache get employee
45                                    assignment.
46   115.12     26-Aug-99  gperry     Made applicants assignment cache multirow.
47   115.22     02 May 00  RChase     Performance NOCOPY changes
48   115.14     10 Jul 00  gperry     Added firstass cache for WWBUG 1350997.
49   115.15     20 Jul 00  gperry     Removed firstass cache and added allass
50                                    cache for WWBUG 1350997.
51   115.16     05 Oct 00  gperry     Added ord_id to person type cache.
52   115.17     05 Jan 01  kmahendr   Added parameter per_in_ler_id to get_object
53   115.18     20-Mar-02  vsethi     added dbdrv lines
54   115.19     29-Apr-02  pabodla    Bug 1631182 : Added person_type_id to
55                                    g_person_typ_info_rec
56   115.20     13 Feb 03  mhoyes   - Fixed PGA memory growth bug 2800680.
57   -----------------------------------------------------------------------------
58 */
59 --
60 type g_person_date_info_rec is record
61   (person_id                    number,
62    min_per_effective_start_date date,
63    min_ass_effective_start_date date);
64 --
65 type g_person_fte_info_rec is record
66   (assignment_id                number,
67    total_fte                    number,
68    fte                          number);
69 --
70 --Bug 1631182 - Added person_type_id
71 --
72 type g_person_typ_info_rec is record
73    (person_id                   number,
74     person_type_id              number,
75     user_person_type            varchar2(80),
76     system_person_type          varchar2(30),
77     ord_id                      number);
78 --
79 -- Global type declarations.
80 --
81 type g_cache_per_table is table of per_all_people_f%rowtype index
82   by binary_integer;
83 --
84 type g_cache_ass_table is table of per_all_assignments_f%rowtype index
85   by binary_integer;
86 --
87 type g_cache_ast_table is table of per_assignment_status_types%rowtype index
88   by binary_integer;
89 --
90 type g_cache_aei_table is table of per_assignment_extra_info%rowtype index
91   by binary_integer;
92 --
93 type g_cache_pps_table is table of per_periods_of_service%rowtype index
94   by binary_integer;
95 --
96 type g_cache_pad_table is table of per_addresses%rowtype index
97   by binary_integer;
98 --
99 type g_cache_pil_table is table of ben_per_in_ler%rowtype index
100   by binary_integer;
101 --
102 type g_cache_bal_table is table of ben_per_bnfts_bal_f%rowtype index
103   by binary_integer;
104 --
105 type g_cache_bnb_table is table of ben_bnfts_bal_f%rowtype index
106   by binary_integer;
107 --
108 type g_cache_hsc_table is table of hr_soft_coding_keyflex%rowtype index
109   by binary_integer;
110 --
111 type g_cache_bal_per_table is table of ben_cache.g_cache_lookup index
112   by binary_integer;
113 --
114 type g_cache_typ_per_table is table of ben_cache.g_cache_lookup index
115   by binary_integer;
116 --
117 type g_cache_con_table is table of per_contact_relationships%rowtype index
118   by binary_integer;
119 --
120 type g_cache_con_per_table is table of ben_cache.g_cache_lookup index
121   by binary_integer;
122 --
123 type g_cache_app_ass_table is table of ben_cache.g_cache_lookup index
124   by binary_integer;
125 --
126 type g_cache_all_ass_table is table of ben_cache.g_cache_lookup index
127   by binary_integer;
128 --
129 type g_cache_date_table is table of g_person_date_info_rec index
130   by binary_integer;
131 --
132 type g_cache_fte_table is table of g_person_fte_info_rec index
133   by binary_integer;
134 --
135 type g_cache_typ_table is table of g_person_typ_info_rec index
136   by binary_integer;
137 --
138 g_cache_per_rec         g_cache_per_table;
139 g_cache_ass_rec         g_cache_ass_table;
140 g_cache_benass_rec      g_cache_ass_table;
141 g_cache_ast_rec         g_cache_ast_table;
142 g_cache_aei_rec         g_cache_aei_table;
143 g_cache_pps_rec         g_cache_pps_table;
144 g_cache_pad_rec         g_cache_pad_table;
145 g_cache_hsc_rec         g_cache_hsc_table;
146 g_cache_pil_rec         g_cache_pil_table;
147 g_cache_bal_rec         g_cache_bal_table;
148 g_cache_bnb_rec         g_cache_bnb_table;
149 g_cache_bal_per_rec     g_cache_bal_per_table;
150 g_cache_typ_rec         g_cache_typ_table;
151 g_cache_typ_per_rec     g_cache_typ_per_table;
152 g_cache_con_rec         g_cache_con_table;
153 g_cache_con_per_rec     g_cache_con_per_table;
154 g_cache_appass_rec      g_cache_ass_table;
155 g_cache_app_ass_rec     g_cache_app_ass_table;
156 g_cache_allass_rec      g_cache_ass_table;
157 g_cache_all_ass_rec     g_cache_all_ass_table;
158 g_cache_date_rec        g_cache_date_table;
159 g_cache_fte_rec         g_cache_fte_table;
160 --
161 -- Latest record caches
162 --
163 g_cache_last_per_rec      per_all_people_f%rowtype;
164 g_cache_last_benass_rec   per_all_assignments_f%rowtype;
165 g_cache_last_ass_rec      per_all_assignments_f%rowtype;
166 g_cache_last_ast_rec      per_assignment_status_types%rowtype;
167 g_cache_last_aei_rec      per_assignment_extra_info%rowtype;
168 g_cache_last_pps_rec      per_periods_of_service%rowtype;
169 g_cache_last_pad_rec      per_addresses%rowtype;
170 g_cache_last_hsc_rec      hr_soft_coding_keyflex%rowtype;
171 g_cache_last_pil_rec      ben_per_in_ler%rowtype;
172 g_cache_last_date_rec     g_person_date_info_rec;
173 g_cache_last_fte_rec      g_person_fte_info_rec;
174 g_cache_last_con_rec      g_cache_con_table;
175 g_cache_last_appass_rec   g_cache_ass_table;
176 g_cache_last_allass_rec   g_cache_ass_table;
177 g_cache_last_typ_rec      g_cache_typ_table;
178 g_cache_last_bal_rec      ben_per_bnfts_bal_f%rowtype;
179 g_cache_last_bnb_rec      ben_bnfts_bal_f%rowtype;
180 --
181 -- Set object routines
182 --
183 procedure set_object
184   (p_rec in out nocopy per_all_assignments_f%rowtype);
185 procedure set_benass_object
186   (p_rec in out nocopy per_all_assignments_f%rowtype);
187 procedure set_appass_object
188   (p_rec in out nocopy per_all_assignments_f%rowtype);
189 procedure set_allass_object
190   (p_rec in out nocopy per_all_assignments_f%rowtype);
191 procedure set_object
192   (p_rec in out nocopy per_assignment_status_types%rowtype);
193 procedure set_object
194   (p_rec in out nocopy per_assignment_extra_info%rowtype);
195 procedure set_object
196   (p_rec in out nocopy per_all_people_f%rowtype);
197 procedure set_object
198   (p_rec in out nocopy per_periods_of_service%rowtype);
199 procedure set_object
200   (p_rec in out nocopy per_addresses%rowtype);
201 procedure set_object
202   (p_rec in out nocopy hr_soft_coding_keyflex%rowtype);
203 procedure set_object
204   (p_rec in out nocopy ben_per_in_ler%rowtype);
205 procedure set_object
206   (p_rec in out nocopy ben_bnfts_bal_f%rowtype);
207 procedure set_object
208   (p_rec in out nocopy ben_per_bnfts_bal_f%rowtype);
209 procedure set_object
210   (p_rec in out nocopy per_contact_relationships%rowtype);
211 procedure set_object
212   (p_rec in out nocopy g_person_date_info_rec);
213 procedure set_object
214   (p_rec in out nocopy g_person_fte_info_rec);
215 procedure set_object
216   (p_rec in out nocopy g_person_typ_info_rec);
217 procedure set_bal_per_object
218   (p_rec in out nocopy ben_cache.g_cache_lookup);
219 procedure set_con_per_object
220   (p_rec in out nocopy ben_cache.g_cache_lookup);
221 procedure set_app_ass_object
222   (p_rec in out nocopy ben_cache.g_cache_lookup);
223 procedure set_all_ass_object
224   (p_rec in out nocopy ben_cache.g_cache_lookup);
225 procedure set_typ_per_object
226   (p_rec in out nocopy ben_cache.g_cache_lookup);
227 --
228 procedure set_ass_object
229   (p_person_id         in number,
230    p_business_group_id in number,
231    p_effective_date    in date,
232    p_rec               in out nocopy per_all_assignments_f%rowtype);
233 procedure set_benass_object
234   (p_person_id         in number,
235    p_business_group_id in number,
236    p_effective_date    in date,
237    p_rec               in out nocopy per_all_assignments_f%rowtype);
238 procedure set_appass_object
239   (p_person_id         in number,
240    p_business_group_id in number,
241    p_effective_date    in date,
242    p_rec               in out nocopy g_cache_ass_table);
243 procedure set_allass_object
244   (p_person_id         in number,
245    p_business_group_id in number,
246    p_effective_date    in date,
247    p_rec               in out nocopy g_cache_ass_table);
248 procedure set_ast_object
249   (p_assignment_status_type_id in number,
250    p_rec                       in out nocopy per_assignment_status_types%rowtype);
251 procedure set_bnb_object
252   (p_bnfts_bal_id      in number,
253    p_business_group_id in number,
254    p_effective_date    in date,
255    p_rec               in out nocopy ben_bnfts_bal_f%rowtype);
256 procedure set_ass_object
257   (p_assignment_id     in number,
258    p_rec               in out nocopy per_assignment_extra_info%rowtype);
259 procedure set_hsc_object
260   (p_soft_coding_keyflex_id in number,
261    p_rec                    in out nocopy hr_soft_coding_keyflex%rowtype);
262 procedure set_per_object
263   (p_person_id         in  number,
264    p_business_group_id in  number,
265    p_effective_date    in  date,
266    p_rec               in out nocopy per_all_people_f%rowtype);
267 procedure set_pps_object
268   (p_person_id         in number,
269    p_business_group_id in number,
270    p_effective_date    in date,
271    p_rec               in out nocopy per_periods_of_service%rowtype);
272 procedure set_pad_object
273   (p_person_id         in number,
274    p_business_group_id in number,
275    p_effective_date    in date,
276    p_rec               in out nocopy per_addresses%rowtype);
277 procedure set_pil_object
278   (p_person_id         in number,
279    p_business_group_id in number,
280    p_effective_date    in date,
281    p_per_in_ler_id     in number default null,
282    p_rec               in out nocopy ben_per_in_ler%rowtype);
283 procedure set_bal_object
284   (p_person_id         in number,
285    p_business_group_id in number,
286    p_effective_date    in date);
287 procedure set_con_object
288   (p_person_id         in  number,
289    p_business_group_id in  number,
290    p_effective_date    in  date,
291    p_rec               in out nocopy g_cache_con_table);
292 procedure set_typ_object
293   (p_person_id         in  number,
294    p_business_group_id in  number,
295    p_effective_date    in  date,
296    p_rec               in out nocopy g_cache_typ_table);
297 procedure set_per_dates_object
298   (p_person_id         in number,
299    p_business_group_id in number,
300    p_effective_date    in date,
301    p_rec               in out nocopy g_person_date_info_rec);
302 procedure set_per_fte_object
303   (p_assignment_id     in number,
304    p_business_group_id in number,
305    p_effective_date    in date,
306    p_rec               in out nocopy g_person_fte_info_rec);
307 --
308 -- Get object routines
309 --
310 procedure get_object
311   (p_person_id in  number,
312    p_rec      in out nocopy per_all_people_f%rowtype);
313 procedure get_object
314   (p_person_id in  number,
315    p_rec       in out nocopy per_all_assignments_f%rowtype);
316 procedure get_benass_object
317   (p_person_id in  number,
318    p_rec       in out nocopy per_all_assignments_f%rowtype);
319 procedure get_object
320   (p_bnfts_bal_id in  number,
321    p_rec          in out nocopy ben_bnfts_bal_f%rowtype);
322 procedure get_object
323   (p_assignment_status_type_id in  number,
324    p_rec                       in out nocopy per_assignment_status_types%rowtype);
325 procedure get_object
326   (p_assignment_id in  number,
327    p_rec           in out nocopy per_assignment_extra_info%rowtype);
328 procedure get_object
329   (p_person_id in  number,
330    p_rec       in out nocopy per_periods_of_service%rowtype);
331 procedure get_object
332   (p_person_id in  number,
333    p_rec       in out nocopy per_addresses%rowtype);
334 procedure get_object
335   (p_person_id in  number,
336    p_rec       in out nocopy g_cache_con_table);
337 procedure get_object
338   (p_person_id in  number,
339    p_rec       in out nocopy g_cache_ass_table);
340 procedure get_allass_object
341   (p_person_id in  number,
342    p_rec       in out nocopy g_cache_ass_table);
343 procedure get_object
344   (p_person_id in  number,
345    p_rec       in out nocopy g_cache_typ_table);
346 procedure get_object
347   (p_person_id in  number,
348 -- added per_in_ler_id for unrestricted enhancement
349   p_per_in_ler_id in number default null,
350    p_rec       in out nocopy ben_per_in_ler%rowtype);
351 procedure get_object
352   (p_soft_coding_keyflex_id in  number,
353    p_rec                    in out nocopy hr_soft_coding_keyflex%rowtype);
354 procedure get_object
355   (p_person_id      in  number,
356    p_bnfts_bal_id   in number,
357    p_effective_date in date,
358    p_rec            in out nocopy ben_per_bnfts_bal_f%rowtype);
359 procedure get_object
360   (p_person_id in  number,
361    p_rec       in out nocopy g_person_date_info_rec);
362 procedure get_object
363   (p_assignment_id in  number,
364    p_rec           in out nocopy g_person_fte_info_rec);
365 procedure get_bal_per_object
366   (p_person_id      in  number,
367    p_bnfts_bal_id   in  number,
368    p_effective_date in  date,
369    p_rec            in out nocopy ben_per_bnfts_bal_f%rowtype);
370 --
371 procedure clear_down_cache;
372 --
373 procedure defrag_caches;
374 --
375 end ben_person_object;