DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_PAYSGI21_XMLP_PKG

Source


1 PACKAGE BODY PAY_PAYSGI21_XMLP_PKG AS
2 /* $Header: PAYSGI21B.pls 120.1 2008/04/02 10:04:30 vjaganat noship $ */
3 
4 function CF_business_group_nameFormula return Char is
5   v_business_group  hr_all_organization_units.name%type;
6 begin
7   v_business_group := hr_reports.get_business_group(lp_business_group_id);
8   return v_business_group;
9 end;
10 
11 function cf_ir21a_total_basisformula(CS_ir21a_furniture_basis in number, CS_ir21a_furniture_basis_sub in number, CS_ir21a_hotel_basis in number, CS_ir21a_others_basis in number) return number is
12 begin
13     return(CP_taxable_residence_basis +
14          CS_ir21a_furniture_basis +
15 	 CS_ir21a_furniture_basis_sub +
16          CS_ir21a_hotel_basis +
17          CS_ir21a_others_basis);
18 end;
19 
20 function cf_ir21a_total_basis_1formula(CS_ir21a_furniture_basis_1 in number, CS_ir21a_furniture_basis_sub1 in number, CS_ir21a_hotel_basis_1 in number, CS_ir21a_others_basis_1 in number) return number is
21 begin
22     return(CP_taxable_residence_basis_1 +
23          CS_ir21a_furniture_basis_1 +
24 	 CS_ir21a_furniture_basis_sub1 +
25          CS_ir21a_hotel_basis_1 +
26          CS_ir21a_others_basis_1);
27 
28 end;
29 
30 function cf_taxable_value_residenceform(CS_ir21_income_basis in number, CS_ir21_others_basis in number, CS_ir21a_furniture_basis in number, CS_ir21a_others_basis in number,
31 CS_a8a_moa_501_basis in number, CS_a8a_moa_502_basis in number, CS_ir21_income_basis_1 in number, CS_ir21_others_basis_1 in number, CS_ir21a_furniture_basis_1 in number,
32 CS_ir21a_others_basis_1 in number, CS_a8a_moa_501_basis_1 in number, CS_a8a_moa_502_basis_1 in number) return number is
33 begin
34 
35 
36   cp_taxable_residence_basis :=
37     greatest(least(0.1 * (CS_ir21_income_basis +
38                           CS_ir21_others_basis +                                 CS_ir21a_furniture_basis +                             CS_ir21a_others_basis),                         CS_a8a_moa_501_basis
39                    )
40              - CS_a8a_moa_502_basis
41              , 0);
42 
43   cp_taxable_residence_basis_1 :=
44     greatest(least(0.1 * (CS_ir21_income_basis_1 +
45                           CS_ir21_others_basis_1 +                                 CS_ir21a_furniture_basis_1 +                             CS_ir21a_others_basis_1),                         CS_a8a_moa_501_basis_1
46                    )
47              - CS_a8a_moa_502_basis_1
48              , 0);
49 
50 
51 
52   return(0);
53 end;
54 
55 function cf_ir21_subtotal_basisformula(CS_ir21_others_basis in number, CF_ir21a_total_basis in number) return number is
56 begin
57   return(CS_ir21_others_basis + CP_CR_YEAR_AMOUNT + CF_ir21a_total_basis);
58 end;
59 
60 function cf_ir21_subtotal_basis_1formul(CS_ir21_others_basis_1 in number, CF_ir21a_total_basis_1 in number) return number is
61 begin
62   return(CS_ir21_others_basis_1 + CP_PR_YEAR_AMOUNT + CF_ir21a_total_basis_1);
63 end;
64 
65 function cf_ir21_total_basisformula(CS_ir21_income_basis in number, CS_ir21_others_basis in number, CF_ir21a_total_basis in number) return number is
66 begin
67   return(CS_ir21_income_basis +
68          CS_ir21_others_basis +
69 	 CP_CR_YEAR_AMOUNT +
70          CF_ir21a_total_basis);
71 end;
72 
73 function cf_ir21_total_basis_1formula(CS_ir21_income_basis_1 in number, CS_ir21_others_basis_1 in number, CF_ir21a_total_basis_1 in number) return number is
74 begin
75   return(CS_ir21_income_basis_1 +
76          CS_ir21_others_basis_1 +
77 	 CP_PR_YEAR_AMOUNT +
78          CF_ir21a_total_basis_1);
79 end;
80 
81 function cf_ir21_cessation_datesformula(date_start in date, actual_termination_date in date) return number is
82 begin
83 
84   	cp_ir21_cessation_from := to_date('01-01-'||to_char(lp_basis_year),'dd-mm-yyyy');
85 	cp_ir21_cessation_from_1 := to_date('01-01-'||to_char(lp_basis_year-1),'dd-mm-yyyy');
86 	cp_ir21_cessation_from_2 := to_date('01-01-'||to_char(lp_basis_year-2),'dd-mm-yyyy');
87 
88 	cp_ir21_cessation_to := to_date('31-12-'||to_char(lp_basis_year),'dd-mm-yyyy');
89 	cp_ir21_cessation_to_1 := to_date('31-12-'||to_char(lp_basis_year-1),'dd-mm-yyyy');
90 	cp_ir21_cessation_to_2 := to_date('31-12-'||to_char(lp_basis_year-2),'dd-mm-yyyy');
91 
92 /*srw.message('1',1);*/null;
93 
94       if date_start >= to_date('01-01-'||to_char(lp_basis_year),'dd-mm-yyyy') AND
95      date_start <= to_date('31-12-'||to_char(lp_basis_year),'dd-mm-yyyy')
96   then
97   	cp_ir21a_employ_from := date_start;
98   else
99  	cp_ir21a_employ_from := to_date('01-01-'||to_char(lp_basis_year),'dd-mm-yyyy');
100   end if;
101 /*srw.message('2',2);*/null;
102 
103   if actual_termination_date >= to_date('01-01-'||to_char(lp_basis_year),'dd-mm-yyyy') AND
104      actual_termination_date <= to_date('31-12-'||to_char(lp_basis_year),'dd-mm-yyyy')
105   then
106   	cp_ir21a_employ_to := actual_termination_date;
107   else
108   	cp_ir21a_employ_to := to_date('31-12-'||to_char(lp_basis_year),'dd-mm-yyyy');
109   end if;
110 
111 /*srw.message('3',3);*/null;
112 
113         if date_start >= to_date('01-01-'||to_char(lp_basis_year-1),'dd-mm-yyyy') AND
114      date_start <= to_date('31-12-'||to_char(lp_basis_year-1),'dd-mm-yyyy')
115   then
116   	cp_ir21a_employ_from_1 := date_start;
117   else
118   	cp_ir21a_employ_from_1 := to_date('01-01-'||to_char(lp_basis_year-1),'dd-mm-yyyy');
119   end if;
120 
121 /*srw.message('4',4);*/null;
122 
123   if actual_termination_date >= to_date('01-01-'||to_char(lp_basis_year-1),'dd-mm-yyyy') AND
124      actual_termination_date <= to_date('31-12-'||to_char(lp_basis_year-1),'dd-mm-yyyy')
125   then
126   	cp_ir21a_employ_to_1 := actual_termination_date;
127   else
128   	cp_ir21a_employ_to_1 := to_date('31-12-'||to_char(lp_basis_year-1),'dd-mm-yyyy');
129   end if;
130 
131 /*srw.message('5',5);*/null;
132 
133   if date_start >= to_date('01-01-'||to_char(lp_basis_year-2),'dd-mm-yyyy') AND
134      date_start <= to_date('31-12-'||to_char(lp_basis_year-2),'dd-mm-yyyy')
135   then
136   	cp_ir21a_employ_from_2 := date_start;
137   else
138   	cp_ir21a_employ_from_2 := to_date('01-01-'||to_char(lp_basis_year-2),'dd-mm-yyyy');
139   end if;
140 
141 /*srw.message('6',6);*/null;
142 
143   if actual_termination_date >= to_date('01-01-'||to_char(lp_basis_year-2),'dd-mm-yyyy') AND
144      actual_termination_date <= to_date('31-12-'||to_char(lp_basis_year-2),'dd-mm-yyyy')
145   then
146   	cp_ir21a_employ_to_2 := actual_termination_date;
147   else
148   	cp_ir21a_employ_to_2 := to_date('31-12-'||to_char(lp_basis_year-2),'dd-mm-yyyy');
149   end if;
150 
151   return (0);
152 end;
153 
154 function CF_ir21_dateFormula return Date is
155   v_ir21_date        date;
156 begin
157 	  select max(to_date(pei_information1,'yyyy/mm/dd hh24:mi:ss'))
158   into v_ir21_date
159   from per_people_extra_info
160   --where person_id = p_person_id
161   where person_id = lp_person_id
162   and   information_type = 'HR_IR21_PROCESSING_DATES_SG';
163 
164   return(v_ir21_date);
165 end;
166 
167 function CF_child_seqFormula return Number is
168 begin
169 
170   if (CP_child_seq is null) then
171   	CP_child_seq := 0;
172   end if;
173 
174   CP_child_seq := CP_child_seq + 1;
175   return(0);
176 end;
177 
178 function BeforeReport return boolean is
179 begin
180   /*srw.user_exit('FND SRWINIT');*/null;
181 --raise_application_error(-20001,'lp_basis_year : '||lp_basis_year);
182 --insert into log_sam values ('sampath','paysgi21i','lp_basis_year',lp_basis_year);
183 select SUBSTR(argument1,INSTR(argument1,'=',1)+1,LENGTH(argument1)),
184 SUBSTR(argument2,INSTR(argument2,'=',1)+1,LENGTH(argument2)),
185 SUBSTR(argument3,INSTR(argument3,'=',1)+1,LENGTH(argument3)),
186 SUBSTR(argument4,INSTR(argument4,'=',1)+1,LENGTH(argument4)),
187 SUBSTR(argument5,INSTR(argument5,'=',1)+1,LENGTH(argument5)),
188 SUBSTR(argument6,INSTR(argument6,'=',1)+1,LENGTH(argument6)),
189 SUBSTR(argument7,INSTR(argument7,'=',1)+1,LENGTH(argument7)),
190 SUBSTR(argument8,INSTR(argument8,'=',1)+1,LENGTH(argument8))
191 into
192 LP_BUSINESS_GROUP_ID,
193 Lp_basis_year,
194 LP_PERSON_ID,
195 LP_IR21_MODE,
196 LP_CR_YEAR_AMOUNT,
197 LP_PR_YEAR_AMOUNT,
198 t_run,
199 DebugFlag
200 from FND_CONCURRENT_REQUESTS
201 where request_id = FND_GLOBAL.conc_request_id;
202 
203   return (TRUE);
204 end;
205 
206 function AfterReport return boolean IS
207  l number;
208 
209 begin
210 
211   /*srw.user_exit('FND SRWEXIT');*/null;
212 
213 
214 
215 
216 set_ir21_date;
217 
218 
219 
220   return (TRUE);
221 end;
222 
223 function cf_end_of_reportformula(cs_no_data_exists in number) return char is
224 begin
225   If cs_no_data_exists > 0 then
226   	--return '***** End Of Report *****';
227   	return ' End of Report ';
228   end if;
229 
230 	--return '***** No Data Found *****';
231 	return 'No Data Found';
232 end;
233 
234 function cf_ir21_totalformula(CF_ir21_total_basis in number, CF_ir21_total_basis_1 in number) return number is
235 begin
236   return(CF_ir21_total_basis +
237          CF_ir21_total_basis_1);
238 
239 end;
240 
241 --function cf_pay_basisformula(organization_id in varchar2, person_id in number, actual_termination_date in date) return char is
242 function cf_pay_basisformula(organization_id_v in varchar2, person_id in number, actual_termination_date in date) return char is
243   v_pay_basis   hr_lookups.meaning%TYPE;
244 
245     cursor c_pay_basis is
246   select hl.meaning pay_basis
247   from hr_organization_units hou,
248        hr_soft_coding_keyflex hsc,
249        per_assignments_f paaf,
250        per_pay_bases ppb,
251        hr_lookups hl
252   where to_char(hou.organization_id) = hsc.segment1
253   and   hsc.soft_coding_keyflex_id = paaf.soft_coding_keyflex_id
254   and   paaf.pay_basis_id = ppb.pay_basis_id
255   and   ppb.pay_basis = hl.lookup_code
256   and   hl.lookup_type = 'PAY_BASIS'
257   --and   hou.organization_id = organization_id
258   and   hou.organization_id = organization_id_V
259   and   paaf.person_id = person_id
260   and   actual_termination_date between paaf.effective_start_date and paaf.effective_end_date
261   and   paaf.primary_flag = 'Y';
262 begin
263   open c_pay_basis;
264   fetch c_pay_basis into v_pay_basis;
265 
266   if c_pay_basis%NOTFOUND then
267   	v_pay_basis := 'Monthly Salary';     end if;
268 
269   close c_pay_basis;
270 
271   return(v_pay_basis);
272 end;
273 
274 function cf_employer_premiseformula(person_id in number) return number is
275 
276   cursor c_employer_premise is
277   select decode(sign(fnd_date.canonical_to_date(ppeo.pei_information1) -
278                      to_date('1/1/'||to_char(yrtbl.yr),'dd/mm/yyyy')),
279                 -1, to_date('1/1/'||to_char(yrtbl.yr),'dd/mm/yyyy'),
280                 fnd_date.canonical_to_date(ppeo.pei_information1)) from_date,
281          decode(sign(fnd_date.canonical_to_date(ppeo.pei_information2) -
282                      to_date('31/12/'||to_char(yrtbl.yr),'dd/mm/yyyy')),
283                 -1, fnd_date.canonical_to_date(ppeo.pei_information2),
284                 to_date('31/12/'||to_char(yrtbl.yr),'dd/mm/yyyy')) to_date,
285          ppeo.pei_information3 no_days,
286          ppeo.pei_information4 no_employees,
287          yrtbl.yr yr
288   from per_people_extra_info ppeo,
289        (select (lp_basis_year) yr from dual union
290         select (lp_basis_year - 1) yr from dual union
291         select (lp_basis_year - 2) yr from dual) yrtbl
292   where ppeo.person_id = person_id
293   and   ppeo.information_type = 'HR_IR21A_CESSATION_INFO_SG'
294   and   fnd_date.canonical_to_date(ppeo.pei_information1) =
295           (select max(fnd_date.canonical_to_date(ppeo2.pei_information1))
296            from per_people_extra_info ppeo2
297            where ppeo.person_id = ppeo2.person_id
298            and   ppeo2.information_type = 'HR_IR21A_CESSATION_INFO_SG'
299            and   fnd_date.canonical_to_date(ppeo2.pei_information1) <=
300                  to_date('31-12-'||to_char(yrtbl.yr),'dd-mm-yyyy')
301            and   nvl(fnd_date.canonical_to_date(ppeo2.pei_information2),to_date('31/12/4712','dd/mm/yyyy')) >=
302                   to_date('1-01-'||to_char(yrtbl.yr),'dd-mm-yyyy')
303           );
304 begin
305 
306   for c_rec in c_employer_premise loop
307     if c_rec.yr = lp_basis_year then
308 
309       cp_date_premise_from := c_rec.from_date;
310       cp_date_premise_to := c_rec.to_date;
311       cp_days_occupying_premise := c_rec.no_days;
312       cp_emps_sharing_premise := c_rec.no_employees;
313 
314     elsif c_rec.yr = lp_basis_year - 1 then
315 
316       cp_date_premise_from_1 := c_rec.from_date;
317       cp_date_premise_to_1 := c_rec.to_date;
318       cp_days_occupying_premise_1 := c_rec.no_days;
319       cp_emps_sharing_premise_1 := c_rec.no_employees;
320 
321     elsif c_rec.yr = lp_basis_year - 2 then
322 
323       cp_date_premise_from_2 := c_rec.from_date;
324       cp_date_premise_to_2 := c_rec.to_date;
325       cp_days_occupying_premise_2 := c_rec.no_days;
326       cp_emps_sharing_premise_2 := c_rec.no_employees;
327 
328     end if;
329 
330   end loop;
331 
332   return(0);
333 end;
334 
335 PROCEDURE set_ir21_date IS
336 
337   v_ir21_date_exists    boolean := FALSE;
338 
339   cursor c_ir21_dates is
340   select fnd_date.canonical_to_date(pei_information1) ir21_date
341   from per_people_extra_info ppeo
342   --where ppeo.person_id = lp_person_id
343   where ppeo.person_id = lp_person_id
344   and   information_type = 'HR_IR21_PROCESSING_DATES_SG'
345   and   fnd_date.canonical_to_date(pei_information1) = trunc(sysdate);
346 
347 BEGIN
348 
349   for c_rec in c_ir21_dates loop
350     v_ir21_date_exists := TRUE;
351     exit;
352   end loop;
353 
354   if v_ir21_date_exists = FALSE then
355     insert into per_people_extra_info (
356       person_extra_info_id,
357       person_id,
358       information_type,
359       pei_information_category,
360       pei_information1,
361       object_version_number,
362       last_update_date,
363       creation_date
364     )
365     values (
366       per_people_extra_info_s.nextval,
367       --p_person_id,
368       lp_person_id,
369       'HR_IR21_PROCESSING_DATES_SG',
370       'HR_IR21_PROCESSING_DATES_SG',
371       fnd_date.date_to_canonical(trunc(sysdate)),
372       1,
373       sysdate,
374       sysdate
375     );
376 
377     commit;
378   end if;
379 
380 END set_ir21_date;
381 
382 function CF_stock_outstandingFormula (date_start in date,actual_termination_date in date,organization_id in varchar2)return Number is
383 
384 v_granted   per_people_extra_info.pei_information4%type;
385 v_exercised per_people_extra_info.pei_information6%type;
386 
387 cursor c_granted is
388 select
389 sum(pei2.pei_information4)
390 from  per_people_extra_info pei2
391 --where pei2.person_id = lp_person_id
392 where pei2.person_id = lp_person_id
393 and   pei2.information_type = 'HR_STOCK_GRANT_SG'
394 and   to_date(pei2.pei_information3,'YYYY/MM/DD HH24:MI:SS')< to_date('01/01/2003','DD/MM/YYYY')
395 group by pei2.person_id;
396 
397 cursor c_exercised is
398 select sum(pei.pei_information6)
399 from per_people_extra_info pei,
400      per_people_extra_info pei2
401 --where pei.person_id = p_person_id
402 where pei.person_id = lp_person_id
403 and   pei.person_id = pei2.person_id
404 and   pei.information_type = 'HR_STOCK_EXERCISE_SG'
405 and   pei2.information_type = 'HR_STOCK_GRANT_SG'
406 and   pei2.person_extra_info_id = pei.pei_information2
407 and   to_date(pei2.pei_information3,'YYYY/MM/DD HH24:MI:SS')< to_date('01/01/2003','DD/MM/YYYY')
408 group by pei.person_id;
409 
410 begin
411 
412   cp_outstanding_yes := ' ';
413   cp_outstanding_no  := 'X';
414   cp_cr_year_amount := 0;
415   cp_pr_year_amount := 0;
416 
417 --  if latest_le(organization_id,date_start,actual_termination_date) hen
418   if latest_le(organization_id,date_start,actual_termination_date) Then
419      open c_granted;
420      fetch c_granted into v_granted;
421 
422      if c_granted%FOUND then
423         open c_exercised;
424         fetch c_exercised into v_exercised;
425 
426         if c_exercised%FOUND then
427            if v_granted - v_exercised > 0 then
428    	      cp_outstanding_yes := 'X';
429 	      cp_outstanding_no  := ' ';
430            end if;
431         else
432            cp_outstanding_yes := 'X';
433            cp_outstanding_no  := ' ';
434         end if;
435 
436         close c_exercised;
437      end if;
438      close c_granted;
439 
440      cp_cr_year_amount := nvl(lp_cr_year_amount,0);
441      cp_pr_year_amount := nvl(lp_pr_year_amount,0);
442 
443   end if;
444 
445   return(0);
446 
447 end;
448 
449 
450 function latest_le(organization_id in varchar2, date_start in date, actual_termination_date in date) return boolean is
451 
452 v_dummy number(1);
453 --cursor latest_le(organization_id,date_start,actual_termination_date) s
454 cursor latest_le(organization_id  varchar2,date_start   date,actual_termination_date  date) is
455     select 1
456     from   per_assignments_f paf,
457            hr_soft_coding_keyflex hsc
458     --where  paf.person_id = p_person_id
459     where  paf.person_id = lp_person_id
460     and    paf.business_group_id = lp_business_group_id
461     and    paf.soft_coding_keyflex_id = hsc.soft_coding_keyflex_id
462     and    hsc.segment1 = organization_id
463     and    paf.primary_flag = 'Y'
464     and    paf.effective_start_date =
465          (select max(paf1.effective_start_date)
466           from   per_assignments_f paf1,
467                  per_assignment_status_types past
468           where  paf1.person_id = paf.person_id
469           and    paf1.assignment_status_type_id = past.assignment_status_type_id
470           and    past.per_system_status = 'ACTIVE_ASSIGN'
471           and    paf1.assignment_type = 'E'
472           and    paf1.effective_start_date <= to_date('31/12/'||lp_basis_year,'DD/MM/YYYY')
473           and    paf1.effective_end_date >= to_date('01/01/'||lp_basis_year,'DD/MM/YYYY')
474           and    paf1.primary_flag='Y')
475     and    paf.effective_start_date <= to_date('31/12/'||lp_basis_year,'DD/MM/YYYY')
476     and    paf.effective_end_date >= to_date('01/01/'||lp_basis_year,'DD/MM/YYYY')
477     and     paf.effective_start_date between date_start and actual_termination_date;
478 BEGIN
479 
480    --open latest_le(organization_id,date_start,actual_termination_date)
481    open latest_le(organization_id,date_start,actual_termination_date);
482    --fetch latest_le(organization_id,date_start,actual_termination_date) nto v_dummy;
483    fetch latest_le INTO v_dummy;
484 
485    if latest_LE%found then
486      --close latest_le(organization_id,date_start,actual_termination_date)
487      close latest_le;
488      return TRUE;
489    else
490      --close latest_le(organization_id,date_start,actual_termination_date)
491      close latest_le;
492      return FALSE;
493 
494    end if;
495 
496 END;
497 
498 function P_CR_YEAR_AMOUNTValidTrigger return boolean is
499 begin
500 
501   return (TRUE);
502 end;
503 
504 function P_PR_YEAR_AMOUNTValidTrigger return boolean is
505 begin
506 
507   return (TRUE);
508 end;
509 
510 --Functions to refer Oracle report placeholders--
511 
512  Function CP_outstanding_stocks_p return number is
513 	Begin
514 	 return CP_outstanding_stocks;
515 	 END;
516  Function CP_outstanding_no_p return varchar2 is
517 	Begin
518 	 return CP_outstanding_no;
519 	 END;
520  Function CP_outstanding_yes_p return varchar2 is
521 	Begin
522 	 return CP_outstanding_yes;
523 	 END;
524  Function CP_cr_year_amount_p return number is
525 	Begin
526 	 return CP_cr_year_amount;
527 	 END;
528  Function CP_pr_year_amount_p return number is
529 	Begin
530 	 return CP_pr_year_amount;
531 	 END;
532  Function CP_taxable_residence_basis_p return number is
533 	Begin
534 	 return CP_taxable_residence_basis;
535 	 END;
536  Function CP_taxable_residence_basis_1_p return number is
537 	Begin
538 	 return CP_taxable_residence_basis_1;
539 	 END;
540  Function CP_taxable_residence_basis_2_p return number is
541 	Begin
542 	 return CP_taxable_residence_basis_2;
543 	 END;
544  Function CP_ir21_cessation_from_p return date is
545 	Begin
546 	 return CP_ir21_cessation_from;
547 	 END;
548  Function CP_ir21_cessation_to_p return date is
549 	Begin
550 	 return CP_ir21_cessation_to;
551 	 END;
552  Function CP_ir21_cessation_from_1_p return date is
553 	Begin
554 	 return CP_ir21_cessation_from_1;
555 	 END;
556  Function CP_ir21_cessation_to_1_p return date is
557 	Begin
558 	 return CP_ir21_cessation_to_1;
559 	 END;
560  Function CP_ir21_cessation_from_2_p return date is
561 	Begin
562 	 return CP_ir21_cessation_from_2;
563 	 END;
564  Function CP_ir21_cessation_to_2_p return date is
565 	Begin
566 	 return CP_ir21_cessation_to_2;
567 	 END;
568  Function CP_ir21a_employ_from_p return date is
569 	Begin
570 	 return CP_ir21a_employ_from;
571 	 END;
572  Function CP_ir21a_employ_to_p return date is
573 	Begin
574 	 return CP_ir21a_employ_to;
575 	 END;
576  Function CP_ir21a_employ_from_1_p return date is
577 	Begin
578 	 return CP_ir21a_employ_from_1;
579 	 END;
580  Function CP_ir21a_employ_to_1_p return date is
581 	Begin
582 	 return CP_ir21a_employ_to_1;
583 	 END;
584  Function CP_ir21a_employ_from_2_p return date is
585 	Begin
586 	 return CP_ir21a_employ_from_2;
587 	 END;
588  Function CP_ir21a_employ_to_2_p return date is
589 	Begin
590 	 return CP_ir21a_employ_to_2;
591 	 END;
592  Function CP_date_premise_from_p return date is
593 	Begin
594 	 return CP_date_premise_from;
595 	 END;
596  Function CP_date_premise_from_1_p return date is
597 	Begin
598 	 return CP_date_premise_from_1;
599 	 END;
600  Function CP_date_premise_from_2_p return date is
601 	Begin
602 	 return CP_date_premise_from_2;
603 	 END;
604  Function CP_date_premise_to_p return date is
605 	Begin
606 	 return CP_date_premise_to;
607 	 END;
608  Function CP_date_premise_to_1_p return date is
609 	Begin
610 	 return CP_date_premise_to_1;
611 	 END;
612  Function CP_date_premise_to_2_p return date is
613 	Begin
614 	 return CP_date_premise_to_2;
615 	 END;
616  Function CP_days_occupying_premise_p return varchar2 is
617 	Begin
618 	 return CP_days_occupying_premise;
619 	 END;
620  Function CP_days_occupying_premise_1_p return varchar2 is
621 	Begin
622 	 return CP_days_occupying_premise_1;
623 	 END;
624  Function CP_days_occupying_premise_2_p return varchar2 is
625 	Begin
626 	 return CP_days_occupying_premise_2;
627 	 END;
628  Function CP_emps_sharing_premise_p return varchar2 is
629 	Begin
630 	 return CP_emps_sharing_premise;
631 	 END;
632  Function CP_emps_sharing_premise_1_p return varchar2 is
633 	Begin
634 	 return CP_emps_sharing_premise_1;
635 	 END;
636  Function CP_emps_sharing_premise_2_p return varchar2 is
637 	Begin
638 	 return CP_emps_sharing_premise_2;
639 	 END;
640  Function CP_child_seq_p return number is
641 	Begin
642 	 return CP_child_seq;
643 	 END;
644 END PAY_PAYSGI21_XMLP_PKG ;