[Home] [Help]
PACKAGE: APPS.BEN_ENROLMENT_REQUIREMENTS
Source
1 package ben_enrolment_requirements AUTHID CURRENT_USER as
2 /* $Header: bendenrr.pkh 120.3.12020000.2 2012/10/18 04:52:49 pvelvano ship $ */
3 --------------------------------------------------------------------------------
4 /*
5 +==============================================================================+
6 | Copyright (c) 1998 Oracle Corporation |
7 | Redwood Shores, California, USA |
8 | All rights reserved. |
9 +==============================================================================+
10 --
11 Name
12 Determine Enrolment Requirements
13 Purpose
14 This package is used to create enrolment choice entries for all choices
15 which a person may elect.
16 History
17 Date Who Version What?
18 ---- --- ------- -----
19 18 Mar 98 jcarpent 110.0 Created
20 28 Aug 98 gperry 115.3 Added global to test if
21 an electable choice has
22 been created. Bug 1047.
23 19 Nov 98 jcarpent 115.5 Removed two date fns
24 24 Dec 98 jcarpent 115.6 Changed det_dflt_dt
25 18 Jan 99 G Perry 115.7 LED V ED
26 08 Feb 99 jcarpent 115.8 Changed determine_erlst_deent
27 25 Mar 99 jcarpent 115.9 added assignment_id
28 to arg lists
29 28 Apr 99 shdas 115.10 Changed parameter list of
30 determine_erlst_deenrt,
31 execute_enrt_rule,
32 should_create_dpnt_dummy.
33 04 May 99 shdas 115.11 added jurisdiction code.
34 05 JUL 99 stee 115.12 added dpnt_cvrd_flag
35 to determine_enrolment.
36 22 Sep 99 jcarpent 115.13 Changed rule args for
37 determine_enrolment
38 16-Nov-1999 jcarpent 115.14 Added det_dflt_enrt_cd
39 05-Jan-2000 jcarpent 115.15 added find_rqd_perd_enrt and
40 find_enrt_at_same_level
41 21-Jan-2000 pbodla 115.16 - p_elig-per_id is added to
42 execute_enrt_rule, determine_enrolment
43 23-May-2000 mhoyes 115.17 - Added p_comp_obj_tree_row to
44 enrolment_requirements.
45 31-May-2000 mhoyes 115.18 - Added current comp object row
46 parameters to interfaces.
47 28-Jun-2000 shdas 115.19 Added proc execute_auto_dflt_enrt_rule.
48 29-Jun-2000 mhoyes 115.20 - Added parent comp object context
49 parameters.
50 05-Jul-2000 mhoyes 115.21 - Added context parameters.
51 13-Jul-2000 mhoyes 115.22 - Removed context parameters.
52 19-Jul-2000 jcarpent 115.23 - 5241,1343362. Added update_defaults
53 05-Sep-2000 pbodla 115.24 - Bug 5422 : Allow different enrollment periods
54 for programs for a scheduled enrollment.
55 p_popl_enrt_typ_cycl_id is removed.
56 07-Dec-2001 mhoyes - Added p_per_in_ler_id to enrolment_requirements.
57 11-Dec-2001 mhoyes - Added p_per_in_ler_id to update_defaults.
58 29-Dec-2001 pbodla - Added function get_manager_id
59 02-Jan-2002 pbodla - CWB Changes - Added proc get_manager_id
60 03-Jan-2002 rpillay 115.28 - added Set Verify Off to avoid GSCC warning
61 11-Jan-2002 ikasire CWB Changes - Bug 2172036
62 13-Sep-2003 tjesumic - # 2534744 New Varaible added to get default amount
63 from formula for default enrollemnt used in
64 bendenrr and bencvrge
65 16 Dec 2002 hnarayan 115.31 Added NOCOPY hint
66 30 Sep 2004 abparekh 115.32 Added p_run_mode parameter to
67 determine_dflt_flag and determine_enrolment
68 29 Apr 2005 kmahendr 115.33 Added a parameter - update_def_elct_flag to
69 determine_enrolment - bug#4338685
70 19 Jan 2006 mhoyes 115.34 bug4960381 - hr_utility tuning.
71 26 Jun 2006 swjain 115.35 Bug 5331889 - Added person_id param to execute_auto_dflt_enrt_rule
72 and execute_enrt_rule
73 09-Nov-06 gsehgal 115.36 Bug 5644451 - Added parameter p_default level
74 in proc determine_dflt_flag
75 18-oct-12 velvanop 115.37 Bug 14768372: Added parameter p_elig_per_id
76 in proc determine_dflt_flag
77 */
78 ------------------------------------------------------------------------------------------------------------------
79 g_electable_choice_created boolean := false;
80 g_any_choice_created boolean := false;
81 g_auto_choice_created boolean := false;
82 --
83 g_def_curr_pgm_rec ben_pgm_f%rowtype;
84 g_def_curr_ptip_rec ben_ptip_f%rowtype;
85 g_def_curr_plip_rec ben_plip_f%rowtype;
86 g_def_curr_pl_rec ben_pl_f%rowtype;
87 g_def_curr_oipl_rec ben_cobj_cache.g_oipl_inst_row;
88 g_def_curr_opt_rec ben_cobj_cache.g_opt_inst_row;
89 --
90 -- CWB Changes :
91 --
92 g_ple_hrchy_to_use_cd varchar2(30);
93 g_ple_pos_structure_version_id number;
94 --
95 -- This variable store the default benefit amount which is retunr by formual
96 -- and used by BEN_DETERMINE_COVERAGE
97 --
98 g_dflt_elcn_val ben_enrt_bnft.DFLT_VAL%type ;
99 --
100 g_debug boolean := hr_utility.debug_enabled;
101 --
102 /*
103 g_cwb_pl_id number;
104 g_cwb_pgm_id number;
105 */
106 --
107 procedure enrolment_requirements
108 (p_comp_obj_tree_row in ben_manage_life_events.g_cache_proc_objects_rec
109 ,p_run_mode in varchar2
110 ,p_business_group_id in number
111 ,p_effective_date in date
112 ,p_lf_evt_ocrd_dt in date default null
113 ,p_ler_id in number
114 ,p_per_in_ler_id in number
115 ,p_person_id in number
116 ,p_pl_id in number
117 ,p_pgm_id in number default null
118 ,p_oipl_id in number default null
119 ,p_create_anyhow_flag in varchar2 default 'N'
120 -- 5422 : PB ,p_popl_enrt_typ_cycl_id in number default null
121 --
122 ,p_asnd_lf_evt_dt in date default null
123 ,p_electable_flag out nocopy varchar2
124 ,p_elig_per_elctbl_chc_id out nocopy number
125 );
126 -----------------------------------------------------------------------------
127 function execute_enrt_rule
128 (p_opt_id number,
129 p_pl_id number,
130 p_pgm_id number,
131 p_rule_id number,
132 p_ler_id number,
133 p_pl_typ_id number,
134 p_business_group_id number,
135 p_effective_date date,
136 p_lf_evt_ocrd_dt date default null,
137 p_elig_per_id number default null,
138 p_assignment_id number,
139 p_organization_id number,
140 p_jurisdiction_code varchar2,
141 p_person_id number
142 ) return varchar2;
143 -----------------------------------------------------------------------------
144 -- CWB Changes.
145 /**
146 function get_manager_id
147 (p_person_id in number,
148 p_hrchy_to_use_cd in varchar2,
149 p_pos_structure_version_id in number,
150 p_effective_date in date) return number;
151 */
152 procedure get_cwb_manager_and_assignment
153 (p_person_id in number,
154 p_hrchy_to_use_cd in varchar2,
155 p_pos_structure_version_id in number,
156 p_effective_date in date,
157 p_manager_id out nocopy number,
158 p_assignment_id out nocopy number);
159
160 -----------------------------------------------------------------------------
161 procedure execute_auto_dflt_enrt_rule
162 (p_opt_id number,
163 p_pl_id number,
164 p_pgm_id number,
165 p_rule_id number,
166 p_ler_id number,
167 p_pl_typ_id number,
168 p_business_group_id number,
169 p_effective_date date,
170 p_lf_evt_ocrd_dt date default null,
171 p_elig_per_id number default null,
172 p_assignment_id number,
173 p_organization_id number,
174 p_jurisdiction_code varchar2,
175 p_person_id number,
176 p_enrt_mthd out nocopy varchar2,
177 p_reinstt_dpnt out nocopy varchar2
178 );
179 -----------------------------------------------------------------------------
180 procedure determine_enrolment
181 (p_previous_eligibility varchar2,
182 p_crnt_enrt_cvg_strt_dt date,
183 p_dpnt_cvrd_flag varchar2,
184 p_enrt_cd varchar2,
185 p_enrt_rl number,
186 p_enrt_mthd_cd varchar2,
187 p_auto_enrt_mthd_rl number,
188 p_effective_date date,
189 p_lf_evt_ocrd_dt date default null,
190 p_elig_per_id number default null,
191 p_enrt_prclds_chg_flag varchar2 default 'N',
192 p_stl_elig_cant_chg_flag varchar2 default 'N',
193 p_tco_chg_enrt_cd varchar2 default 'CPOO',
194 p_pl_id number,
195 p_pgm_id number,
196 p_oipl_id number,
197 p_opt_id number,
198 p_pl_typ_id number,
199 p_person_id number,
200 p_ler_id number,
201 p_business_group_id number,
202 p_electable_flag out nocopy varchar2,
203 p_assignment_id number,
204 p_run_mode varchar2 default null,
205 p_update_def_elct_flag varchar2 default null);
206 -----------------------------------------------------------------------------
207 procedure determine_dflt_flag
208 (p_dflt_flag varchar2,
209 p_dflt_enrt_cd varchar2,
210 p_crnt_enrt_cvg_strt_dt date,
211 p_previous_eligibility varchar2,
212 p_dflt_enrt_rl number,
213 p_oipl_id number,
214 p_pl_id number,
215 p_pgm_id number,
216 p_effective_date date,
217 p_lf_evt_ocrd_dt date default null,
218 p_ler_id number,
219 p_opt_id number,
220 p_pl_typ_id number,
221 p_ptip_id number,
222 p_person_id number,
223 p_business_group_id number,
224 p_assignment_id number,
225 p_deflt_flag out nocopy varchar2,
226 p_reinstt_flag out nocopy varchar2,
227 -- bug 5644451
228 p_default_level varchar2 default null,
229 p_run_mode varchar2 default null,
230 p_elig_per_id number default null);
231 -----------------------------------------------------------------------------
232 function determine_erlst_deenrt_dt
233 (p_enrt_cvg_strt_dt date,
234 p_rqd_perd_enrt_nenrt_val number,
235 p_rqd_perd_enrt_nenrt_tm_uom varchar2,
236 p_rqd_perd_enrt_nenrt_rl number,
237 p_oipl_id number,
238 p_pl_id number,
239 p_pl_typ_id number,
240 p_opt_id number,
241 p_pgm_id number,
242 p_ler_id number,
243 p_popl_yr_perd_ordr_num number,
244 p_yr_end_dt date,
245 p_effective_date date,
246 p_lf_evt_ocrd_dt date default null,
247 p_person_id number,
248 p_business_group_id number,
249 p_assignment_id number,
250 p_organization_id number,
251 p_jurisdiction_code varchar2
252 ) return date;
253 -----------------------------------------------------------------------------
254 function should_create_dpnt_dummy(
255 p_pl_id number,
256 p_pl_typ_id number,
257 p_opt_id number,
258 p_ler_id number,
259 p_ptip_id number,
260 p_effective_date date,
261 p_lf_evt_ocrd_dt date default null,
262 p_pgm_id number,
263 p_person_id number,
264 p_business_group_id number,
265 p_assignment_id number,
266 p_organization_id number,
267 p_jurisdiction_code varchar2
268 ) return boolean;
269 -----------------------------------------------------------------------------
270 procedure determine_dflt_enrt_cd
271 (p_oipl_id in number
272 ,p_plip_id in number
273 ,p_pl_id in number
274 ,p_ptip_id in number
275 ,p_pgm_id in number
276 ,p_ler_id in number
277 ,p_business_group_id in number
278 ,p_effective_date in date
279 ,p_dflt_enrt_cd out nocopy varchar2
280 ,p_dflt_enrt_rl out nocopy number
281 );
282 -----------------------------------------------------------------------------
283 --
284 -- Find the required period of enrollment. Code/rule/value and level.
285 --
286 procedure find_rqd_perd_enrt
287 (p_oipl_id in number
288 ,p_opt_id in number
289 ,p_pl_id in number
290 ,p_ptip_id in number
291 ,p_effective_date in date
292 ,p_business_group_id in number
293 ,p_rqd_perd_enrt_nenrt_uom out nocopy varchar2
294 ,p_rqd_perd_enrt_nenrt_val out nocopy number
295 ,p_rqd_perd_enrt_nenrt_rl out nocopy number
296 ,p_level out nocopy varchar2
297 );
298 -----------------------------------------------------------------------------
299 --
300 -- find an enrollment at the give level.
301 --
302 procedure find_enrt_at_same_level(
303 p_person_id in number
304 ,p_opt_id in number
305 ,p_oipl_id in number
306 ,p_pl_id in number
307 ,p_ptip_id in number
308 ,p_pl_typ_id in number
309 ,p_pgm_id in number
310 ,p_effective_date in date
311 ,p_business_group_id in number
312 ,p_prtt_enrt_rslt_id in number
313 ,p_level in varchar2
314 ,p_pen_rec out nocopy ben_prtt_enrt_rslt_f%rowtype
315 );
316 -----------------------------------------------------------------------------
317 procedure update_defaults
318 (p_run_mode in varchar2
319 ,p_business_group_id in number
320 ,p_effective_date in date
321 ,p_lf_evt_ocrd_dt in date default null
322 ,p_ler_id in number
323 ,p_person_id in number
324 ,p_per_in_ler_id in number
325 );
326 end ben_enrolment_requirements;