[Home] [Help]
PACKAGE BODY: APPS.PER_GB_P11D_REPORTS
Source
1 PACKAGE BODY PER_GB_P11D_REPORTS AS
2 /* $Header: pegbp11d.pkb 120.0 2005/05/31 09:12:53 appldev noship $ */
3 /*
4 Change List
5 -----------
6 Date Name Vers Bug No Description
7 +-----------+-------------+--------+-------+-----------------------+
8 03-Jan-2003 Bhaskar 115.0 (Initial)
9 20-FEB-2003 Bhaskar 115.1 2765216 Added parameter
10 P_PRINT_ADDRESS_PAGE
11 09-FEB-2004 Abeesh 115.3 3201848 Modified function
12 submit_gaps_report to print
13 gap and overlap report for 2004
14 06-DEC-2004 Kthampan 115.6 Modified function
15 submit_gaps_report to call
16 report for 2005
17 06-DEC-2004 Kthampan 115.7 Revert the change made in version 6
18 because there should be no
19 new 6i based reports.
20 */
21 -- For Year 2002
22 p_p11d_main_report_2002 varchar2(100) := 'PER_GB_P11D_REPORT_2002';
23 p_p11d_gaps_report_2002 varchar2(100) := 'PERGBGAP_REPORT_2002';
24 -- For Year 2003
25 p_p11d_main_report_2003 varchar2(100) := 'PER_GB_P11D_REPORT_2003';
26 p_p11d_gaps_report_2003 varchar2(100) := 'PERGBGAP_REPORT_2003';
27 --
28 --For Year 2004
29 /*Bug No. 3201848*/
30 p_p11d_gaps_report_2004 varchar2(100) := 'PERGBGAP_REPORT_2004';
31
32 --For Year 2005
33 /* no new 6i report
34 p_p11d_gaps_report_2005 varchar2(100) := 'PERGBGAP_REPORT_2005';
35 */
36
37 procedure submit_main_report(errbuf OUT NOCOPY varchar2
38 ,retcode OUT NOCOPY number
39 ,P_PRINT_ADDRESS_PAGE in varchar2
40 ,P_PRINT_P11D in varchar2
41 ,P_PRINT_P11D_SUMMARY in varchar2
42 ,P_PRINT_WS in varchar2
43 ,P_PAYROLL_ACTION_ID in varchar2
44 ,P_ORGANIZATION_ID in varchar2
45 ,P_ORG_HIERARCHY in varchar2
46 ,P_ASSIGNMENT_SET_ID in varchar2
47 ,P_LOCATION_CODE in varchar2
48 ,P_ASSIGNMENT_ACTION_ID in varchar2
49 ,P_BUSINESS_GROUP_ID in varchar2
50 ,P_SORT_ORDER1 in varchar2
51 ,P_SORT_ORDER2 in varchar2
52 ) is
53 l_p11d_main_request_id number;
54 --
55 cursor csr_ben_end_date is
56 select effective_date benefit_end_date
57 from pay_payroll_actions
58 where payroll_action_id = to_number(p_payroll_action_id);
59 --
60 l_ben_end_date date;
61 l_report_name varchar2(100);
62 begin
63 open csr_ben_end_date;
64 fetch csr_ben_end_date into l_ben_end_date;
65 close csr_ben_end_date;
66 --
67 if fnd_date.canonical_to_date(fnd_date.string_to_canonical(l_ben_end_date,'dd-mon-rrrr')) >= fnd_date.canonical_to_date('2002/04/06') then
68 l_report_name := p_p11d_main_report_2003;
69 else
70 l_report_name := p_p11d_main_report_2002;
71 end if;
72 --
73 l_p11d_main_request_id := fnd_request.submit_request
74 (application => 'PER'
75 ,program => l_report_name
76 ,argument1 => P_PRINT_ADDRESS_PAGE
77 ,argument2 => P_PRINT_P11D
78 ,argument3 => P_PRINT_P11D_SUMMARY
79 ,argument4 => P_PRINT_WS
80 ,argument5 => P_PAYROLL_ACTION_ID
81 ,argument6 => P_ORGANIZATION_ID
82 ,argument7 => P_ORG_HIERARCHY
83 ,argument8 => P_ASSIGNMENT_SET_ID
84 ,argument9 => P_LOCATION_CODE
85 ,argument10 => P_ASSIGNMENT_ACTION_ID
86 ,argument11 => P_BUSINESS_GROUP_ID
87 ,argument12 => P_SORT_ORDER1
88 ,argument13 => P_SORT_ORDER2);
89 --
90 retcode := 0;
91 exception
92 when others then
93 retcode := 1;
94 end submit_main_report;
95 --
96 procedure submit_gaps_report(ERRBUF OUT NOCOPY VARCHAR2
97 ,RETCODE OUT NOCOPY NUMBER
98 ,P_BENEFIT_START_DATE_CN IN VARCHAR2
99 ,P_BENEFIT_START_DATE IN VARCHAR2
100 ,P_BENEFIT_END_DATE_CN IN VARCHAR2
101 ,P_BENEFIT_END_DATE IN VARCHAR2
102 ,P_BENEFIT_TYPE_ID IN VARCHAR2
103 ,P_BENEFIT_TYPE IN VARCHAR2
104 ,P_OVERLAP IN VARCHAR2
105 ,P_GAP IN VARCHAR2
106 ,P_PAYROLL_ID IN VARCHAR2
107 ,P_PAYROLL IN VARCHAR2
108 ,P_PERSON_ID IN VARCHAR2
109 ,P_PERSON IN VARCHAR2
110 ,P_TAX_DISTRICT_REFERENCE_ID IN VARCHAR2
111 ,P_TAX_DISTRICT_REFERENCE IN VARCHAR2
112 ,P_CONSOLIDATION_SET_ID IN VARCHAR2
113 ,P_CONSOLIDATION_SET IN VARCHAR2
114 ,P_ASSIGNMENT_SET_ID IN VARCHAR2
115 ,P_ASSIGNMENT_SET IN VARCHAR2
116 ,P_BUSINESS_GROUP_ID IN VARCHAR2) is
117 l_p11d_gaps_request_id number;
118 l_report_name varchar2(100);
119 begin
120
121 /* print report for 2005
122 if fnd_date.canonical_to_date(fnd_date.string_to_canonical(p_benefit_end_date,'dd-mon-rrrr')) >= fnd_date.canonical_to_date('2004/04/06') then
123 l_report_name := p_p11d_gaps_report_2005;
124 */
125 /* To print Gap and Overlap report for 2004*/
126 /*Bug No. 3201848*/
127 if fnd_date.canonical_to_date(fnd_date.string_to_canonical(p_benefit_end_date,'dd-mon-rrrr')) >= fnd_date.canonical_to_date('2003/04/06') then
128 l_report_name := p_p11d_gaps_report_2004;
129 elsif fnd_date.canonical_to_date(fnd_date.string_to_canonical(p_benefit_end_date,'dd-mon-rrrr')) >= fnd_date.canonical_to_date('2002/04/06') and
130 fnd_date.canonical_to_date(fnd_date.string_to_canonical(p_benefit_end_date,'dd-mon-rrrr')) <= fnd_date.canonical_to_date('2003/04/05') then
131 l_report_name := p_p11d_gaps_report_2003;
132 else
133 l_report_name := p_p11d_gaps_report_2002;
134 end if;
135 --
136 l_p11d_gaps_request_id := fnd_request.submit_request
137 (application => 'PER'
138 ,program => l_report_name
139 ,argument1 => P_BENEFIT_START_DATE_CN
140 ,argument2 => P_BENEFIT_START_DATE
141 ,argument3 => P_BENEFIT_END_DATE_CN
142 ,argument4 => P_BENEFIT_END_DATE
143 ,argument5 => P_BENEFIT_TYPE_ID
144 ,argument6 => P_BENEFIT_TYPE
145 ,argument7 => P_OVERLAP
146 ,argument8 => P_GAP
147 ,argument9 => P_PAYROLL_ID
148 ,argument10 => P_PAYROLL
149 ,argument11 => P_PERSON_ID
150 ,argument12 => P_PERSON
151 ,argument13 => P_TAX_DISTRICT_REFERENCE_ID
152 ,argument14 => P_TAX_DISTRICT_REFERENCE
153 ,argument15 => P_CONSOLIDATION_SET_ID
154 ,argument16 => P_CONSOLIDATION_SET
155 ,argument17 => P_ASSIGNMENT_SET_ID
156 ,argument18 => P_ASSIGNMENT_SET
157 ,argument19 => P_BUSINESS_GROUP_ID );
158 --
159 retcode := 0;
160 exception
161 when others then
162 retcode := 1;
163 end submit_gaps_report;
164 --
165 end per_gb_p11d_reports;