[Home] [Help]
PACKAGE BODY: APPS.GL_GLXJETAX_XMLP_PKG
Source
1 PACKAGE BODY GL_GLXJETAX_XMLP_PKG AS
2 /* $Header: GLXJETAXB.pls 120.0 2007/12/27 14:58:58 vijranga noship $ */
3
4 UNKNOWN_USER_EXIT EXCEPTION;
5
6 USER_EXIT_FAILURE EXCEPTION;
7
8 function BeforeReport return boolean is
9 begin
10
11 begin
12 /*srw.user_exit('FND SRWINIT');*/null;
13 CP_START_DATE := to_char(P_START_DATE,'DD-MON-YYYY');
14 CP_END_DATE := to_char(P_END_DATE,'DD-MON-YYYY');
15
16 exception
17 when UNKNOWN_USER_EXIT /*srw.unknown_user_exit */then
18 /*srw.message(01,'FND SRWINIT user exit is unknown.');*/null;
19
20 raise;
21 when USER_EXIT_FAILURE /*srw.user_exit_failure */then
22 /*srw.message(02,'FND SRWINIT user exit failed.');*/null;
23
24 raise;
25 end;
26
27 begin
28 select name
29 into H_ACCESS_SET_NAME
30 from gl_access_sets
31 where access_set_id = P_ACCESS_SET_ID;
32 exception
33 when no_data_found then
34 /*srw.message(03,'Cannot find data access set information');*/null;
35
36 raise;
37 end;
38
39 begin
40 select name, currency_code
41 into H_LEDGER_NAME, H_CURRENCY_CODE
42 from gl_ledgers
43 where ledger_id = P_LEDGER_ID;
44 exception
45 when no_data_found then
46 /*srw.message(04,'Cannot find ledger information');*/null;
47
48 raise;
49 end;
50
51 begin
52
53 null;
54
55
56 null;
57
58
59 null;
60
61
62 null;
63
64 exception
65 when UNKNOWN_USER_EXIT /*srw.unknown_user_exit */then
66 /*srw.message(05,'FND FLEXSQL user exit is unknown.');*/null;
67
68 raise;
69 when USER_EXIT_FAILURE /*srw.user_exit_failure */then
70 /*srw.message(06,'FND FLEXSQL user exit failed.');*/null;
71
72 raise;
73 end;
74
75 IF ((P_TAX_TYPE IS NULL) AND (P_TAX_CODE IS NULL)) THEN
76 P_WHERE_TAX := '1 = 1';
77 ELSE
78 IF (P_TAX_CODE IS NULL) THEN
79 P_WHERE_TAX :=
80 'gjl1.tax_type_code = ''' || P_TAX_TYPE || '''';
81 ELSE P_WHERE_TAX :=
82 '(gjl1.tax_type_code, gjl1.tax_code_id) ' ||
83 'IN (SELECT gtc.tax_type_code, gtc.tax_code_id ' ||
84 'FROM gl_tax_codes_v gtc ' ||
85 'WHERE gtc.tax_type_code = ''' || P_TAX_TYPE || ''' ' ||
86 'AND gtc.tax_code = ''' || replace(P_TAX_CODE, '''', '''''') || ''')';
87
88 END IF;
89 END IF;
90
91 IF (P_POSTING_STATUS = 'E') THEN
92 P_WHERE_POSTING_STATUS := 'gjb.status NOT in (''S'',''I'',''U'',''P'')';
93 ELSE
94 P_WHERE_POSTING_STATUS :=
95 'gjb.status||'''' = ' || '''' || P_POSTING_STATUS || '''';
96 END IF;
97
98 P_WHERE_DAS := GL_ACCESS_SET_SECURITY_PKG.GET_SECURITY_CLAUSE(
99 P_ACCESS_SET_ID,
100 'F',
101 'LEDGER_ID',
102 to_char(P_LEDGER_ID),
103 null,
104 'NO_SEG_VAL',
105 null,
106 null,
107 null);
108
109 IF (P_WHERE_DAS IS NOT NULL) THEN
110 P_WHERE_DAS := ' and ' || P_WHERE_DAS ;
111 END IF;
112
113 IF (P_WHERE_DAS IS NULL) THEN
114 P_WHERE_DAS := 'and 1 = 1' ;
115 END IF;
116
117 return (TRUE);
118 end;
119
120 function AfterReport return boolean is
121 begin
122
123 /*srw.user_exit('FND SRWEXIT');*/null;
124 return (TRUE);
125 end;
126
127 function c_dr_or_crformula(C_TAXABLE_ACC_DR in number, C_TAXABLE_ACC_CR in number) return varchar2 is
128 begin
129
130 if abs(nvl(C_TAXABLE_ACC_DR,0))
131 > abs(nvl(C_TAXABLE_ACC_CR,0))
132 then return('D');
133 else return('C');
134 end if;
135 RETURN NULL; end;
136
137 function c_taxable_acc_amountformula(C_TAXABLE_ACC_DR in number, C_TAXABLE_ACC_CR in number) return number is
138 begin
139
140 if abs(nvl(C_TAXABLE_ACC_DR,0)) > abs(nvl(C_TAXABLE_ACC_CR,0)) then
141 return (nvl(C_TAXABLE_ACC_DR,0) - nvl(C_TAXABLE_ACC_CR,0));
142 else
143 return (nvl(C_TAXABLE_ACC_CR,0) - nvl(C_TAXABLE_ACC_DR,0));
144 end if;
145
146 end;
147
148 function c_accounted_amountformula(C_ACCOUNTED_DR in number, C_ACCOUNTED_CR in number) return number is
149 begin
150
151 if abs(nvl(C_ACCOUNTED_DR,0)) > abs(nvl(C_ACCOUNTED_CR,0)) then
152 return(nvl(C_ACCOUNTED_DR,0) - nvl(C_ACCOUNTED_CR,0));
153 else
154 return(nvl(C_ACCOUNTED_CR,0) - nvl(C_ACCOUNTED_DR,0));
155 end if;
156 end;
157
158 function c_grossformula(C_GROSS_DR in number, C_GROSS_CR in number) return number is
159 begin
160
161 if abs(C_GROSS_DR) > abs(C_GROSS_CR) then
162 return(C_GROSS_DR - C_GROSS_CR);
163 else
164 return(C_GROSS_CR - C_GROSS_DR);
165 end if;
166 end;
167
168 function c_gross_drformula(C_TAXABLE_ACC_DR in number, C_ACCOUNTED_DR in number) return number is
169 begin
170
171 return(nvl(C_TAXABLE_ACC_DR,0) + nvl(C_ACCOUNTED_DR,0));
172 end;
173
174 function c_gross_crformula(C_TAXABLE_ACC_CR in number, C_ACCOUNTED_CR in number) return number is
175 begin
176
177 return(nvl(C_TAXABLE_ACC_CR,0) + nvl(C_ACCOUNTED_CR,0));
178 end;
179
180 function c_jou_grossformula(C_JOU_GROSS_DR in number, C_JOU_GROSS_CR in number) return number is
181 begin
182
183 if abs(C_JOU_GROSS_DR) > abs(C_JOU_GROSS_CR) then
184 return(C_JOU_GROSS_DR - C_JOU_GROSS_CR);
185 else
186 return(C_JOU_GROSS_CR - C_JOU_GROSS_DR);
187 end if;
188 end;
189
190 function c_jou_accounted_sumformula(C_JOU_ACCOUNTED_DR in number, C_JOU_ACCOUNTED_CR in number) return number is
191 begin
192
193 if abs(nvl(C_JOU_ACCOUNTED_DR,0)) > abs(nvl(C_JOU_ACCOUNTED_CR,0)) then
194 return(nvl(C_JOU_ACCOUNTED_DR,0) - nvl(C_JOU_ACCOUNTED_CR,0));
195 else
196 return(nvl(C_JOU_ACCOUNTED_CR,0) - nvl(C_JOU_ACCOUNTED_DR,0));
197 end if;
198 end;
199
200 function c_jou_taxable_acc_sumformula(C_JOU_TAXABLE_ACC_DR in number, C_JOU_TAXABLE_ACC_CR in number) return number is
201 begin
202
203 if abs(nvl(C_JOU_TAXABLE_ACC_DR,0)) > abs(nvl(C_JOU_TAXABLE_ACC_CR,0)) then
204 return(nvl(C_JOU_TAXABLE_ACC_DR,0) - nvl(C_JOU_TAXABLE_ACC_CR,0));
205 else
206 return(nvl(C_JOU_TAXABLE_ACC_CR,0) - nvl(C_JOU_TAXABLE_ACC_DR,0));
207 end if;
208
209 end;
210
211 function c_jou_gross_drformula(C_JOU_TAXABLE_ACC_DR in number, C_JOU_ACCOUNTED_DR in number) return number is
212 begin
213
214 return(nvl(C_JOU_TAXABLE_ACC_DR,0) + nvl(C_JOU_ACCOUNTED_DR,0));
215 end;
216
217 function c_jou_gross_crformula(C_JOU_TAXABLE_ACC_CR in number, C_JOU_ACCOUNTED_CR in number) return number is
218 begin
219
220 return(nvl(C_JOU_TAXABLE_ACC_CR,0) + nvl(C_JOU_ACCOUNTED_CR,0));
221 end;
222
223 function c_tax_codeformula(C_TAX_TYPE_CODE in varchar2, C_TAX_CODE_ID in number) return varchar2 is
224 begin
225
226 DECLARE
227 tax_code VARCHAR2(50);
228 temp_return_status VARCHAR2(1);
229 err_msg VARCHAR2(30);
230 err_buf VARCHAR2(2000);
231 BEGIN
232
233 zx_gl_tax_options_pkg.get_tax_rate_code(
234 1.0,
235 C_TAX_TYPE_CODE,
236 C_TAX_CODE_ID,
237 tax_code, temp_return_status, err_msg);
238 if(temp_return_status='E') then
239 fnd_message.set_name('ZX', err_msg);
240 fnd_message.set_token('FUNCTION', 'C_TAX_CODEFormula');
241 err_buf := substrb(fnd_message.get,1,132);
242 /*srw.message(07,err_buf);*/null;
243
244 raise_application_error(-20101,null);/*srw.program_abort;*/null;
245
246 elsif (temp_return_status ='U') then
247 fnd_message.set_token('FUNCTION', 'C_TAX_CODEFormula');
248 err_buf := substrb(fnd_message.get,1,132);
249 /*srw.message(07,err_buf);*/null;
250
251 raise_application_error(-20101,null);/*srw.program_abort;*/null;
252
253 end if;
254 RETURN(tax_code);
255 END;
256 RETURN NULL; end;
257
258 function c_jou_dr_or_crformula(C_JOU_TAXABLE_ACC_DR in number, C_JOU_TAXABLE_ACC_CR in number) return varchar2 is
259 begin
260
261 if abs(nvl(C_JOU_TAXABLE_ACC_DR,0))
262 > abs(nvl(C_JOU_TAXABLE_ACC_CR,0))
263 then return('D');
264 else return('C');
265 end if;
266 RETURN NULL; end;
267
268 function C_OLD_GROUPSFormula return VARCHAR2 is
269 begin
270
271 /*srw.reference(C_NEW_GROUP);*/null;
272
273 RETURN NULL; end;
274
275 function c_new_groupformula(C_JE_HEADER_ID in number, C_TAX_GROUP_ID in number, C_ACCOUNTED_DR in number, C_ACCOUNTED_CR in number) return varchar2 is
276 begin
277
278 IF (nvl(C_OLD_HEADER_ID, -1) <> C_JE_HEADER_ID) THEN
279 C_OLD_GROUPS := '-';
280 C_OLD_HEADER_ID := C_JE_HEADER_ID;
281 END IF;
282
283 IF (instr(nvl(C_OLD_GROUPS, '-'),
284 '-' || to_char(C_TAX_GROUP_ID) || '-')
285 = 0
286 ) THEN
287 C_OLD_GROUPS := '-'
288 || to_char(C_TAX_GROUP_ID)
289 || nvl(C_OLD_GROUPS,'-');
290
291 C_RUN_ACCOUNTED_DR := C_ACCOUNTED_DR;
292 C_RUN_ACCOUNTED_CR := C_ACCOUNTED_CR;
293
294 RETURN('Y');
295 ELSE
296 C_RUN_ACCOUNTED_DR := 0;
297 C_RUN_ACCOUNTED_CR := 0;
298
299 RETURN('N');
300 END IF;
301
302 RETURN NULL; end;
303
304 function C_OLD_HEADER_IDFormula return Number is
305 begin
306
307 /*srw.reference(C_NEW_GROUP);*/null;
308
309 RETURN NULL; end;
310
311 function C_RUN_ACCOUNTED_DRFormula return Number is
312 begin
313
314 /*srw.reference(C_NEW_GROUP);*/null;
315
316 RETURN NULL; end;
317
318 function C_RUN_ACCOUNTED_CRFormula return Number is
319 begin
320
321 /*srw.reference(C_NEW_GROUP);*/null;
322
323 RETURN NULL; end;
324
325 function g_taxablegroupfilter(ACC_SECURE in varchar2) return boolean is
326 begin
327
328 /*srw.reference(P_CHART_OF_ACCOUNTS_ID);*/null;
329
330 /*srw.reference(C_TAXABLE_ACC_SEGMENT);*/null;
331
332
333 IF(ACC_SECURE = 'S') THEN
334 return(FALSE);
335 ELSE
336 return (TRUE);
337 END IF;
338 end;
339
340 function g_bal_segmentgroupfilter(BAL_SECURE in varchar2) return boolean is
341 begin
342 /*SRW.REFERENCE(C_BAL_SEGMENT);*/null;
343
344 /*SRW.REFERENCE(P_CHART_OF_ACCOUNTS_ID);*/null;
345
346
347 IF(BAL_SECURE = 'S') THEN
348 return(FALSE);
349 ELSE
350 return (TRUE);
351 END IF;
352 end;
353
354 --Functions to refer Oracle report placeholders--
355
356 Function C_OLD_GROUPS_p return varchar2 is
357 Begin
358 return C_OLD_GROUPS;
359 END;
360 Function C_OLD_HEADER_ID_p return number is
361 Begin
362 return C_OLD_HEADER_ID;
363 END;
364 Function C_RUN_ACCOUNTED_DR_p return number is
365 Begin
366 return C_RUN_ACCOUNTED_DR;
367 END;
368 Function C_RUN_ACCOUNTED_CR_p return number is
369 Begin
370 return C_RUN_ACCOUNTED_CR;
371 END;
372 Function H_LEDGER_NAME_p return varchar2 is
373 Begin
374 return H_LEDGER_NAME;
375 END;
376 Function H_CURRENCY_CODE_p return varchar2 is
377 Begin
378 return H_CURRENCY_CODE;
379 END;
380 Function H_POSTING_MEANING_p return varchar2 is
381 Begin
382 return H_POSTING_MEANING;
383 END;
384 Function H_ACCESS_SET_NAME_p return varchar2 is
385 Begin
386 return H_ACCESS_SET_NAME;
387 END;
388 Function P_BAL_SEGMENT_p return varchar2 is
389 Begin
390 return P_BAL_SEGMENT;
391 END;
392 Function P_TAXABLE_ACC_SEGMENT_p return varchar2 is
393 Begin
394 return P_TAXABLE_ACC_SEGMENT;
395 END;
396 Function P_TAX_ACC_SEGMENT_p return varchar2 is
397 Begin
398 return P_TAX_ACC_SEGMENT;
399 END;
400 Function P_WHERE_BAL_SEGMENT_p return varchar2 is
401 Begin
402 return P_WHERE_BAL_SEGMENT;
403 END;
404 Function P_WHERE_POSTING_STATUS_p return varchar2 is
405 Begin
406 return P_WHERE_POSTING_STATUS;
407 END;
408 Function P_WHERE_TAX_p return varchar2 is
409 Begin
410 return P_WHERE_TAX;
411 END;
412 Function P_WHERE_DAS_p return varchar2 is
413 Begin
414 return P_WHERE_DAS;
415 END;
416 END GL_GLXJETAX_XMLP_PKG ;
417