1 PACKAGE BODY PA_PAXPCIFS_XMLP_PKG AS
2 /* $Header: PAXPCIFSB.pls 120.0 2008/01/02 11:42:17 krreddy noship $ */
3
4 FUNCTION get_cover_page_values RETURN BOOLEAN IS
5
6 BEGIN
7
8 RETURN(TRUE);
9
10 EXCEPTION
11 WHEN OTHERS THEN
12 RETURN(FALSE);
13
14 END;
15
16 function BeforeReport return boolean is
17 begin
18
19 Declare
20 init_failure exception;
21 ndf VARCHAR2(80);
22 org_name hr_organization_units.name%TYPE;
23 member_name VARCHAR2(240);
24 role_type VARCHAR2(80);
25 enter_param VARCHAR2(80);
26 BEGIN
27
28 /*srw.user_exit('FND SRWINIT');*/null;
29
30 /*srw.user_exit('FND GETPROFILE
31 NAME="PA_RULE_BASED_OPTIMIZER"
32 FIELD=":p_rule_optimizer"
33 PRINT_ERROR="N"');*/null;
34
35
36
37
38
39
40 /*srw.user_exit('FND GETPROFILE
41 NAME="PA_DEBUG_MODE"
42 FIELD=":p_debug_mode"
43 PRINT_ERROR="N"');*/null;
44
45
46
47
48
49
50 if (p_start_organization_id is null and
51 project_member is null) then
52 select meaning into enter_param from pa_lookups where
53 lookup_type = 'ENTER VALUE' and
54 lookup_code = 'ENTER_ORG_MGR';
55 end if;
56 c_enter := enter_param;
57 If p_start_organization_id is not null then
58 select Substr(name, 1, 60) into org_name from hr_organization_units where organization_id = p_start_organization_id;
59 end if;
60 c_start_org := org_name;
61
62 IF project_member is not null then
63 select full_name into member_name from per_people_f where
64 person_id = project_member
65 and sysdate between effective_start_date
66 and nvl(effective_end_date,sysdate + 1)
67 and (Current_NPW_Flag='Y' OR Current_Employee_Flag='Y')
68 and Decode(Current_NPW_Flag,'Y',NPW_Number,employee_number) IS NOT NULL ;
69 end if;
70 c_project_member := member_name;
71
72 if project_role_type is not null then
73 select meaning into role_type
74 from pa_project_role_types where
75 project_role_type = PA_PAXPCIFS_XMLP_PKG.project_role_type;
76 end if;
77
78 c_role_type := role_type;
79 bucket1_low := -999999999.99;
80 bucket1_high := 24999.99;
81 bucket2_low := 25000.00;
82 bucket2_high := 100000.00;
83 bucket3_low := 100000.01;
84 bucket3_high := 9999999999.99;
85
86
87 IF (get_company_name <> TRUE) THEN RAISE init_failure;
88 END IF;
89 IF (get_start_org <> TRUE) THEN
90 RAISE init_failure;
91
92 END IF;
93 select meaning into ndf from pa_lookups where
94 lookup_code= 'NO_DATA_FOUND'
95 and lookup_type = 'MESSAGE';
96 C_no_data_found := ndf;
97
98 EXCEPTION
99 WHEN NO_DATA_FOUND THEN
100 select meaning into ndf from pa_lookups where
101 lookup_code= 'NO_DATA_FOUND'
102 and lookup_type = 'MESSAGE';
103 C_no_data_found := ndf;
104 c_dummy_data := 1;
105 WHEN OTHERS THEN
106 RAISE_application_error(-20101,null);/*SRW.PROGRAM_ABORT;*/null;
107
108 END; return (TRUE);
109 end;
110
111 FUNCTION get_company_name RETURN BOOLEAN IS
112 l_name gl_sets_of_books.name%TYPE;
113 l_currency gl_sets_of_books.currency_code%TYPE;
114
115 BEGIN
116 SELECT gl.name, gl.currency_code
117 INTO l_name, l_currency
118 FROM gl_sets_of_books gl,pa_implementations pi
119 WHERE gl.set_of_books_id = pi.set_of_books_id;
120
121 c_company_name_header := l_name;
122 c_currency := l_currency;
123
124 RETURN (TRUE);
125
126 EXCEPTION
127
128 WHEN OTHERS THEN
129 RETURN (FALSE);
130
131 END;
132
133 FUNCTION get_start_org RETURN BOOLEAN IS
134 c_start_organization_id number(15);
135 BEGIN
136 select
137 decode(p_start_organization_id,null, start_organization_id,p_start_organization_id)
138 into
139 c_start_organization_id
140 from
141 pa_implementations;
142 insert
143 into
144 pa_org_reporting_sessions
145 (start_organization_id,session_id)
146 values
147 (c_start_organization_id,userenv('SESSIONID'));
148 RETURN (TRUE);
149 EXCEPTION WHEN OTHERS THEN
150 RETURN (FALSE);
151 END;
152
153 function c_amountformula(C_amount1 in number, C_amount2 in number, C_amount3 in number) return number is
154 begin
155
156 return ((nvl(C_amount1,0)+nvl(C_amount2,0)+nvl(C_amount3,0)));
157 end;
158
159 function c_countformula(c_count1 in number, c_count2 in number, c_count3 in number) return number is
160 begin
161
162 return ((c_count1+c_count2+c_count3));
163 end;
164
165 function G_project_orgGroupFilter return boolean is
166 begin
167
168 BEGIN
169 If p_start_organization_id is null then
170 if project_member is null then
171 return(FALSE);
172 else
173 return(TRUE);
174 end if;
175 else
176 RETURN(TRUE);
177 end if;
178 END; return (TRUE);
179 end;
180
181 function AfterReport return boolean is
182 begin
183
184 BEGIN
185 /*srw.user_exit('FND SRWEXIT');*/null;
186
187 ROLLBACK;
188 END; return (TRUE);
189 end;
190
191 function c_inv_amountformula(C_inv_amount1 in number, C_inv_amount2 in number, C_inv_amount3 in number) return number is
192 begin
193
194 return ((nvl(C_inv_amount1,0)+nvl(C_inv_amount2,0)+nvl(C_inv_amount3,0)));
195 end;
196
197 function c_inv_countformula(c_inv_count1 in number, c_inv_count2 in number, c_inv_count3 in number) return number is
198 begin
199
200 return ((c_inv_count1+c_inv_count2+c_inv_count3));
201 end;
202
203 function CF_CURRENCY_CODEFormula return VARCHAR2 is
204 begin
205 return(pa_multi_currency.get_acct_currency_code);
206 end;
207
208 --Functions to refer Oracle report placeholders--
209
210 Function C_COMPANY_NAME_HEADER_p return varchar2 is
211 Begin
212 return C_COMPANY_NAME_HEADER;
213 END;
214 Function C_start_org_p return varchar2 is
215 Begin
216 return C_start_org;
217 END;
218 Function C_project_member_p return varchar2 is
219 Begin
220 return C_project_member;
221 END;
222 Function C_role_type_p return varchar2 is
223 Begin
224 return C_role_type;
225 END;
226 Function C_enter_p return varchar2 is
227 Begin
228 return C_enter;
229 END;
230 Function bucket1_low_p return number is
231 Begin
232 return bucket1_low;
233 END;
234 Function bucket1_high_p return number is
235 Begin
236 return bucket1_high;
237 END;
238 Function bucket2_low_p return number is
239 Begin
240 return bucket2_low;
241 END;
242 Function bucket2_high_p return number is
243 Begin
244 return bucket2_high;
245 END;
246 Function bucket3_low_p return number is
247 Begin
248 return bucket3_low;
249 END;
250 Function bucket3_high_p return number is
251 Begin
252 return bucket3_high;
253 END;
254 Function C_no_data_found_p return varchar2 is
255 Begin
256 return C_no_data_found;
257 END;
258 Function C_dummy_data_p return number is
259 Begin
260 return C_dummy_data;
261 END;
262 Function C_currency_p return varchar2 is
263 Begin
264 return C_currency;
265 END;
266 END PA_PAXPCIFS_XMLP_PKG ;
267