[Home] [Help]
PACKAGE BODY: APPS.BEN_BENPRSUM_XMLP_PKG
Source
1 PACKAGE BODY BEN_BENPRSUM_XMLP_PKG AS
2 /* $Header: BENPRSUMB.pls 120.2 2007/12/10 08:37:35 vjaganat noship $ */
3
4 function CF_STANDARD_HEADERFormula return Number is
5
6 l_concurrent_program_name fnd_concurrent_programs_tl.user_concurrent_program_name%type ; l_process_date varchar2(30);
7 l_mode hr_lookups.meaning%type ;
8 l_derivable_factors hr_lookups.meaning%type ;
9 l_validate hr_lookups.meaning%type ;
10 l_person per_people_f.full_name%type ;
11 l_person_type per_person_types.user_person_type%type ;
12 l_program ben_pgm_f.name%type ;
13 l_business_group per_business_groups.name%type ;
14 l_plan ben_pl_f.name%type ;
15 l_enrollment_type_cycle varchar2(800);
16 l_plans_not_in_programs hr_lookups.meaning%type ;
17 l_just_programs hr_lookups.meaning%type ;
18 l_comp_object_selection_rule ff_formulas_f.formula_name%type ;
19 l_person_selection_rule ff_formulas_f.formula_name%type ;
20 l_life_event_reason ben_ler_f.name%type ;
21 l_organization hr_all_organization_units.name%type ;
22 l_postal_zip_range varchar2(80);
23 l_reporting_group ben_rptg_grp.name%type ;
24 l_plan_type ben_pl_typ_f.name%type ;
25 l_option ben_opt_f.name%type ;
26 l_eligibility_profile ben_eligy_prfl_f.name%type ;
27 l_variable_rate_profile ben_vrbl_rt_prfl_f.name%type ;
28 l_legal_entity hr_all_organization_units.name%type ;
29 l_payroll pay_payrolls_f.payroll_name%type ;
30 l_status fnd_lookups.meaning%type ;
31 begin
32
33 ben_batch_reporting.standard_header
34 (p_concurrent_request_id => P_CONCURRENT_REQUEST_ID,
35 p_concurrent_program_name => L_CONCURRENT_PROGRAM_NAME,
36 p_process_date => L_PROCESS_DATE,
37 p_mode => L_MODE,
38 p_derivable_factors => L_DERIVABLE_FACTORS,
39 p_validate => L_VALIDATE,
40 p_person => L_PERSON,
41 p_person_type => L_PERSON_TYPE,
42 p_program => L_PROGRAM,
43 p_business_group => L_BUSINESS_GROUP,
44 p_plan => L_PLAN,
45 p_popl_enrt_typ_cycl => L_ENROLLMENT_TYPE_CYCLE,
46 p_plans_not_in_programs => L_PLANS_NOT_IN_PROGRAMS,
47 p_just_programs => L_JUST_PROGRAMS,
48 p_comp_object_selection_rule => L_COMP_OBJECT_SELECTION_RULE,
49 p_person_selection_rule => L_PERSON_SELECTION_RULE,
50 p_life_event_reason => L_LIFE_EVENT_REASON,
51 p_organization => L_ORGANIZATION,
52 p_postal_zip_range => L_POSTAL_ZIP_RANGE,
53 p_reporting_group => L_REPORTING_GROUP,
54 p_plan_type => L_PLAN_TYPE,
55 p_option => L_OPTION,
56 p_eligibility_profile => L_ELIGIBILITY_PROFILE,
57 p_variable_rate_profile => L_VARIABLE_RATE_PROFILE,
58 p_legal_entity => L_LEGAL_ENTITY,
59 p_payroll => L_PAYROLL,
60 p_status => L_STATUS);
61 CP_CONCURRENT_PROGRAM_NAME := l_concurrent_program_name;
62 CP_PROCESS_DATE := l_process_date;
63 CP_MODE := l_mode;
64 CP_DERIVABLE_FACTORS := l_derivable_factors;
65 CP_VALIDATE := l_validate;
66 CP_PERSON := l_person;
67 CP_PERSON_TYPE := l_person_type;
68 CP_PROGRAM := l_program;
69 CP_BUSINESS_GROUP := l_business_group;
70 CP_PLAN := l_plan;
71 CP_ENROLLMENT_TYPE_CYCLE := l_enrollment_type_cycle;
72 CP_PLANS_NOT_IN_PROGRAMS := l_plans_not_in_programs;
73 CP_JUST_PROGRAMS := l_just_programs;
74 CP_COMP_OBJECT_SELECTION_RULE := l_comp_object_selection_rule;
75 CP_PERSON_SELECTION_RULE := l_person_selection_rule;
76 CP_LIFE_EVENT_REASON := l_life_event_reason;
77 CP_ORGANIZATION := l_organization;
78 CP_POSTAL_ZIP_RANGE := l_postal_zip_range;
79 CP_REPORTING_GROUP := l_reporting_group;
80 CP_PLAN_TYPE := l_plan_type;
81 CP_OPTION := l_option;
82 CP_ELIGIBILITY_PROFILE := l_eligibility_profile;
83 CP_VARIABLE_RATE_PROFILE := l_variable_rate_profile;
84 CP_LEGAL_ENTITY := l_legal_entity;
85 CP_PAYROLL := l_payroll;
86 CP_STATUS := l_status;
87 return 1;
88 end;
89
90 function CF_SUMMARY_EVENTFormula return Number is
91
92 begin
93 Select count(distinct rep.person_id) prcurmop
94 into CP_PRCURMOP
95 from ben_reporting rep
96 ,ben_benefit_actions bft
97 where bft.benefit_action_id = rep.benefit_action_id
98 and bft.request_id = P_CONCURRENT_REQUEST_ID
99 and rep.rep_typ_cd in ('PRCURMOP', 'PRPPOIPL')
100 and not exists (select distinct rep.person_id
101 from ben_reporting rep
102 ,ben_benefit_actions bft
103 where bft.benefit_action_id = rep.benefit_action_id
104 and bft.request_id = P_CONCURRENT_REQUEST_ID
105 and rep.rep_typ_cd in ('PRRETROP', 'PRCREDIT')) ;
106
107 Select count(distinct rep.person_id) prcredit
108 into CP_PRCREDIT
109 from ben_reporting rep
110 ,ben_benefit_actions bft
111 where bft.benefit_action_id = rep.benefit_action_id
112 and bft.request_id = P_CONCURRENT_REQUEST_ID
113 and rep.rep_typ_cd = ('PRCREDIT')
114 and not exists (select distinct rep.person_id
115 from ben_reporting rep
116 ,ben_benefit_actions bft
117 where bft.benefit_action_id = rep.benefit_action_id
118 and bft.request_id = P_CONCURRENT_REQUEST_ID
119 and rep.rep_typ_cd in ('PRCURMOP', 'PRRETROP', 'PRPPOIPL')) ;
120
121 Select count(distinct rep.person_id) prretrop
122 into CP_PRRETROP
123 from ben_reporting rep
124 ,ben_benefit_actions bft
125 where bft.benefit_action_id = rep.benefit_action_id
126 and bft.request_id = P_CONCURRENT_REQUEST_ID
127 and rep.rep_typ_cd = ('PRRETROP')
128 and not exists (select distinct rep.person_id
129 from ben_reporting rep
130 ,ben_benefit_actions bft
131 where bft.benefit_action_id = rep.benefit_action_id
132 and bft.request_id = P_CONCURRENT_REQUEST_ID
133 and rep.rep_typ_cd in ('PRCURMOP', 'PRCREDIT', 'PRPPOIPL')) ;
134
135
136 Select count(distinct rep.person_id) prtotal
137 into CP_PRTOTAL
138 from ben_reporting rep
139 ,ben_benefit_actions bft
140 where bft.benefit_action_id = rep.benefit_action_id
141 and bft.request_id = P_CONCURRENT_REQUEST_ID
142 and rep.rep_typ_cd IN ('PRCREDIT', 'PRCURMOP', 'PRRETROP', 'PRPPOIPL') ;
143
144 CP_PROTHER := CP_PRTOTAL - CP_PRCURMOP - CP_PRRETROP - CP_PRCREDIT;
145
146
147 return 1;
148 end;
149
150 function CF_1Formula return Number is
151 l_start_date varchar2(30);
152 l_end_date varchar2(30);
153 l_start_time varchar2(30);
154 l_end_time varchar2(30);
155 l_elapsed_time varchar2(30);
156 l_persons_selected varchar2(30);
157 l_persons_processed varchar2(30);
158 l_persons_errored varchar2(30);
159 l_persons_processed_succ varchar2(30);
160 l_persons_unprocessed varchar2(30);
161 begin
162 ben_batch_reporting.process_information
163 (p_concurrent_request_id => P_CONCURRENT_REQUEST_ID,
164 p_start_date => L_START_DATE,
165 p_end_date => L_END_DATE,
166 p_start_time => L_START_TIME,
167 p_end_time => L_END_TIME,
168 p_elapsed_time => L_ELAPSED_TIME,
169 p_persons_selected => L_PERSONS_SELECTED,
170 p_persons_processed => L_PERSONS_PROCESSED,
171 p_persons_unprocessed => L_PERSONS_UNPROCESSED,
172 p_persons_processed_succ => L_PERSONS_PROCESSED_SUCC,
173 p_persons_errored => L_PERSONS_ERRORED);
174 CP_START_DATE := l_start_date;
175 CP_END_DATE := l_end_date;
176 CP_START_TIME := l_start_time;
177 CP_END_TIME := l_end_time;
178 CP_ELAPSED_TIME := l_elapsed_time;
179 CP_PERSONS_SELECTED := l_persons_selected;
180 CP_PERSONS_PROCESSED := l_persons_processed;
181 CP_PERSONS_ERRORED := l_persons_errored;
182 CP_PERSONS_UNPROCESSED := l_persons_unprocessed;
183 CP_PERSONS_PROCESSED_SUCC := l_persons_processed_succ;
184 return 1;
185 end;
186
187 function CP_DEFTOTALFormula return Number is
188 begin
189 return 1;
190 end;
191
192 function AfterReport return boolean is
193 begin
194 --hr_standard.event('AFTER REPORT');
195 return (TRUE);
196 end;
197
198 function BeforeReport return boolean is
199 begin
200 --hr_standard.event('BEFORE REPORT');
201 return (TRUE);
202 end;
203
204 function AfterPForm return boolean is
205 begin
206 P_CONC_REQUEST_ID := P_CONCURRENT_REQUEST_ID;
207 return (TRUE);
208 end;
209
210 function BeforePForm return boolean is
211 begin
212
213 return (TRUE);
214 end;
215
216 --Functions to refer Oracle report placeholders--
217
218 Function CP_PROCESS_DATE_p return varchar2 is
219 Begin
220 return CP_PROCESS_DATE;
221 END;
222 Function CP_DERIVABLE_FACTORS_p return varchar2 is
223 Begin
224 return CP_DERIVABLE_FACTORS;
225 END;
226 Function CP_VALIDATE_p return varchar2 is
227 Begin
228 return CP_VALIDATE;
229 END;
230 Function CP_PERSON_p return varchar2 is
231 Begin
232 return CP_PERSON;
233 END;
234 Function CP_PERSON_TYPE_p return varchar2 is
235 Begin
236 return CP_PERSON_TYPE;
237 END;
238 Function CP_PROGRAM_p return varchar2 is
239 Begin
240 return CP_PROGRAM;
241 END;
242 Function CP_BUSINESS_GROUP_p return varchar2 is
243 Begin
244 return CP_BUSINESS_GROUP;
245 END;
246 Function CP_PLAN_p return varchar2 is
247 Begin
248 return CP_PLAN;
249 END;
250 Function CP_ENROLLMENT_TYPE_CYCLE_p return varchar2 is
251 Begin
252 return CP_ENROLLMENT_TYPE_CYCLE;
253 END;
254 Function CP_PLANS_NOT_IN_PROGRAMS_p return varchar2 is
255 Begin
256 return CP_PLANS_NOT_IN_PROGRAMS;
257 END;
258 Function CP_JUST_PROGRAMS_p return varchar2 is
259 Begin
260 return CP_JUST_PROGRAMS;
261 END;
262 Function CP_COMP_OBJECT_SELE_RULE_FUN return varchar2 is
263 Begin
264 return CP_COMP_OBJECT_SELECTION_RULE;
265 END;
266 Function CP_PERSON_SELECTION_RULE_p return varchar2 is
267 Begin
268 return CP_PERSON_SELECTION_RULE;
269 END;
270 Function CP_LIFE_EVENT_REASON_p return varchar2 is
271 Begin
272 return CP_LIFE_EVENT_REASON;
273 END;
274 Function CP_ORGANIZATION_p return varchar2 is
275 Begin
276 return CP_ORGANIZATION;
277 END;
278 Function CP_POSTAL_ZIP_RANGE_p return varchar2 is
279 Begin
280 return CP_POSTAL_ZIP_RANGE;
281 END;
282 Function CP_REPORTING_GROUP_p return varchar2 is
283 Begin
284 return CP_REPORTING_GROUP;
285 END;
286 Function CP_PLAN_TYPE_p return varchar2 is
287 Begin
288 return CP_PLAN_TYPE;
289 END;
290 Function CP_OPTION_p return varchar2 is
291 Begin
292 return CP_OPTION;
293 END;
294 Function CP_ELIGIBILITY_PROFILE_p return varchar2 is
295 Begin
296 return CP_ELIGIBILITY_PROFILE;
297 END;
298 Function CP_VARIABLE_RATE_PROFILE_p return varchar2 is
299 Begin
300 return CP_VARIABLE_RATE_PROFILE;
301 END;
302 Function CP_LEGAL_ENTITY_p return varchar2 is
303 Begin
304 return CP_LEGAL_ENTITY;
305 END;
306 Function CP_PAYROLL_p return varchar2 is
307 Begin
308 return CP_PAYROLL;
309 END;
310 Function CP_CONCURRENT_PROGRAM_NAME_p return varchar2 is
311 Begin
312 return CP_CONCURRENT_PROGRAM_NAME;
313 END;
314 Function CP_START_DATE_p return varchar2 is
315 Begin
316 return CP_START_DATE;
317 END;
318 Function CP_END_DATE_p return varchar2 is
319 Begin
320 return CP_END_DATE;
321 END;
322 Function CP_ELAPSED_TIME_p return varchar2 is
323 Begin
324 return CP_ELAPSED_TIME;
325 END;
326 Function CP_PERSONS_SELECTED_p return number is
327 Begin
328 return CP_PERSONS_SELECTED;
329 END;
330 Function CP_PERSONS_PROCESSED_p return number is
331 Begin
332 return CP_PERSONS_PROCESSED;
333 END;
334 Function CP_MODE_p return varchar2 is
335 Begin
336 return CP_MODE;
337 END;
338 Function CP_PRCURMOP_p return number is
339 Begin
340 return CP_PRCURMOP;
341 END;
342 Function CP_PRRETROP_p return number is
343 Begin
344 return CP_PRRETROP;
345 END;
346 Function CP_END_TIME_p return varchar2 is
347 Begin
348 return CP_END_TIME;
349 END;
350 Function CP_START_TIME_p return varchar2 is
351 Begin
352 return CP_START_TIME;
353 END;
354 Function CP_STATUS_p return varchar2 is
355 Begin
356 return CP_STATUS;
357 END;
358 Function CP_PERSONS_ERRORED_p return number is
359 Begin
360 return CP_PERSONS_ERRORED;
361 END;
362 Function CP_PERSONS_PROCESSED_SUCC_p return number is
363 Begin
364 return CP_PERSONS_PROCESSED_SUCC;
365 END;
366 Function CP_PERSONS_UNPROCESSED_p return number is
367 Begin
368 return CP_PERSONS_UNPROCESSED;
369 END;
370 Function CP_PRTOTAL_p return number is
371 Begin
372 return CP_PRTOTAL;
373 END;
374 Function cp_PRCREDIT_p return number is
375 Begin
376 return cp_PRCREDIT;
377 END;
378 Function CP_PROTHER_p return number is
379 Begin
380 return CP_PROTHER;
381 END;
382 END BEN_BENPRSUM_XMLP_PKG ;