[Home] [Help]
PACKAGE BODY: APPS.JL_JLARFEFR_XMLP_PKG
Source
1 PACKAGE BODY JL_JLARFEFR_XMLP_PKG AS
2 /* $Header: JLARFEFRB.pls 120.1 2007/12/25 16:32:35 dwkrishn noship $ */
3 FUNCTION BEFOREREPORT RETURN BOOLEAN IS
4 L_FLAG VARCHAR2(1);
5 L_SCALING_FACTOR NUMBER := 0;
6 ERRMSG VARCHAR2(1000);
7 ERRNUM NUMBER;
8 BEGIN
9 P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
10 /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
11 C_SCALING_FACTOR := L_SCALING_FACTOR;
12 IF UPPER(P_MRCSOBTYPE) = 'R' THEN
13 FND_CLIENT_INFO.SET_CURRENCY_CONTEXT(P_CA_SET_OF_BOOKS_ID);
14 END IF;
15 IF UPPER(P_MRCSOBTYPE) = 'R' THEN
16 SELECT
17 DISTRIBUTION_SOURCE_BOOK
18 INTO P_CORP_BOOK
19 FROM
20 FA_BOOK_CONTROLS_MRC_V
21 WHERE BOOK_TYPE_CODE = P_BOOK_TYPE_CODE;
22 SELECT
23 PERIOD_NAME
24 INTO C_PERIOD_FROM
25 FROM
26 FA_DEPRN_PERIODS_MRC_V
27 WHERE PERIOD_COUNTER = P_PERIOD_COUNTER_FROM
28 AND BOOK_TYPE_CODE = P_BOOK_TYPE_CODE;
29 SELECT
30 PERIOD_NAME
31 INTO C_PERIOD_TO
32 FROM
33 FA_DEPRN_PERIODS_MRC_V
34 WHERE PERIOD_COUNTER = P_PERIOD_COUNTER_TO
35 AND BOOK_TYPE_CODE = P_BOOK_TYPE_CODE;
36 /*SRW.MESSAGE('10000'
37 ,'Check ==' || P_PERIOD_COUNTER_TO)*/NULL;
38 /*SRW.MESSAGE('10000'
39 ,'Check ==' || P_BOOK_TYPE_CODE)*/NULL;
40 BEGIN
41 SELECT
42 'Y'
43 INTO L_FLAG
44 FROM
45 FA_DEPRN_PERIODS_MRC_V
46 WHERE BOOK_TYPE_CODE = P_BOOK_TYPE_CODE
47 AND PERIOD_COUNTER = P_PERIOD_COUNTER_TO
48 AND PERIOD_CLOSE_DATE is not null;
49 EXCEPTION
50 WHEN NO_DATA_FOUND THEN
51 SET_NAME('JL'
52 ,'JL_CO_FA_SAME_AS_PERIOD_CLOSED');
53 SET_TOKEN('PERIOD'
54 ,C_PERIOD_TO
55 ,TRUE);
56 SET_TOKEN('BOOK'
57 ,P_BOOK_TYPE_CODE
58 ,TRUE);
59 ERRMSG := GET;
60 /*SRW.MESSAGE(62331
61 ,ERRMSG)*/NULL;
62 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
63 WHEN OTHERS THEN
64 ERRMSG := SQLERRM;
65 ERRNUM := SQLCODE;
66 /*SRW.MESSAGE(ERRNUM
67 ,ERRMSG)*/NULL;
68 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
69 END;
70 ELSE
71 SELECT
72 DISTRIBUTION_SOURCE_BOOK
73 INTO P_CORP_BOOK
74 FROM
75 FA_BOOK_CONTROLS
76 WHERE BOOK_TYPE_CODE = P_BOOK_TYPE_CODE;
77 SELECT
78 PERIOD_NAME
79 INTO C_PERIOD_FROM
80 FROM
81 FA_DEPRN_PERIODS
82 WHERE PERIOD_COUNTER = P_PERIOD_COUNTER_FROM
83 AND BOOK_TYPE_CODE = P_BOOK_TYPE_CODE;
84 SELECT
85 PERIOD_NAME
86 INTO C_PERIOD_TO
87 FROM
88 FA_DEPRN_PERIODS
89 WHERE PERIOD_COUNTER = P_PERIOD_COUNTER_TO
90 AND BOOK_TYPE_CODE = P_BOOK_TYPE_CODE;
91 /*SRW.MESSAGE('10000'
92 ,'Check ==' || P_PERIOD_COUNTER_TO)*/NULL;
93 /*SRW.MESSAGE('10000'
94 ,'Check ==' || P_BOOK_TYPE_CODE)*/NULL;
95 BEGIN
96 SELECT
97 'Y'
98 INTO L_FLAG
99 FROM
100 FA_DEPRN_PERIODS
101 WHERE BOOK_TYPE_CODE = P_BOOK_TYPE_CODE
102 AND PERIOD_COUNTER = P_PERIOD_COUNTER_TO
103 AND PERIOD_CLOSE_DATE is not null;
104 EXCEPTION
105 WHEN NO_DATA_FOUND THEN
106 SET_NAME('JL'
107 ,'JL_CO_FA_SAME_AS_PERIOD_CLOSED');
108 SET_TOKEN('PERIOD'
109 ,C_PERIOD_TO
110 ,TRUE);
111 SET_TOKEN('BOOK'
112 ,P_BOOK_TYPE_CODE
113 ,TRUE);
114 ERRMSG := GET;
115 /*SRW.MESSAGE(62331
116 ,ERRMSG)*/NULL;
117 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
118 WHEN OTHERS THEN
119 ERRMSG := SQLERRM;
120 ERRNUM := SQLCODE;
121 /*SRW.MESSAGE(ERRNUM
122 ,ERRMSG)*/NULL;
123 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
124 END;
125 END IF;
126 JL_ZZ_FA_FUNCTIONS_PKG.POPULATE_FA_EXHIBIT_DATA(P_BOOK_TYPE_CODE
127 ,P_CORP_BOOK
128 ,P_CONC_REQUEST_ID
129 ,P_PERIOD_COUNTER_FROM
130 ,P_PERIOD_COUNTER_TO
131 ,P_MRCSOBTYPE);
132 GET_BASE_CURR_DATA;
133 RETURN (TRUE);
134 END BEFOREREPORT;
135
136 PROCEDURE GET_BASE_CURR_DATA IS
137 BASE_CURR FND_CURRENCIES_VL.CURRENCY_CODE%TYPE;
138 PREC FND_CURRENCIES_VL.PRECISION%TYPE;
139 MIN_AU FND_CURRENCIES_VL.MINIMUM_ACCOUNTABLE_UNIT%TYPE;
140 DESCR FND_CURRENCIES_VL.DESCRIPTION%TYPE;
141 ORG_NAME GL_SETS_OF_BOOKS.NAME%TYPE;
142 BEGIN
143 BASE_CURR := '';
144 PREC := 0;
145 MIN_AU := 0;
146 DESCR := '';
147 ORG_NAME := '';
148 IF UPPER(P_MRCSOBTYPE) = 'R' THEN
149 BEGIN
150 SELECT
151 FCURR.CURRENCY_CODE,
152 FCURR.PRECISION,
153 FCURR.MINIMUM_ACCOUNTABLE_UNIT,
154 FCURR.DESCRIPTION,
155 GSBKS.NAME
156 INTO BASE_CURR,PREC,MIN_AU,DESCR,ORG_NAME
157 FROM
158 FA_BOOK_CONTROLS_MRC_V BKCTRL,
159 FND_CURRENCIES_VL FCURR,
160 GL_SETS_OF_BOOKS GSBKS
161 WHERE BKCTRL.BOOK_TYPE_CODE = P_BOOK_TYPE_CODE
162 AND BKCTRL.SET_OF_BOOKS_ID = GSBKS.SET_OF_BOOKS_ID
163 AND GSBKS.CURRENCY_CODE = FCURR.CURRENCY_CODE;
164 EXCEPTION
165 WHEN NO_DATA_FOUND THEN
166 RAISE_ERR('JL_AR_FA_CURR_DET_NOT_DEFINED'
167 ,'N');
168 WHEN OTHERS THEN
169 RAISE_ORA_ERR;
170 END;
171 ELSE
172 BEGIN
173 SELECT
174 FCURR.CURRENCY_CODE,
175 FCURR.PRECISION,
176 FCURR.MINIMUM_ACCOUNTABLE_UNIT,
177 FCURR.DESCRIPTION,
178 GSBKS.NAME
179 INTO BASE_CURR,PREC,MIN_AU,DESCR,ORG_NAME
180 FROM
181 FA_BOOK_CONTROLS BKCTRL,
182 FND_CURRENCIES_VL FCURR,
183 GL_SETS_OF_BOOKS GSBKS
184 WHERE BKCTRL.BOOK_TYPE_CODE = P_BOOK_TYPE_CODE
185 AND BKCTRL.SET_OF_BOOKS_ID = GSBKS.SET_OF_BOOKS_ID
186 AND GSBKS.CURRENCY_CODE = FCURR.CURRENCY_CODE;
187 EXCEPTION
188 WHEN NO_DATA_FOUND THEN
189 RAISE_ERR('JL_AR_FA_CURR_DET_NOT_DEFINED'
190 ,'N');
191 WHEN OTHERS THEN
192 RAISE_ORA_ERR;
193 END;
194 END IF;
195 C_BASE_CURRENCY_CODE := BASE_CURR;
196 C_BASE_PRECISION := PREC;
197 C_BASE_MIN_ACCT_UNIT := 0;
198 C_BASE_DESCRIPTION := DESCR;
199 C_ORGANIZATION_NAME := ORG_NAME;
200 END GET_BASE_CURR_DATA;
201
202 FUNCTION AFTERREPORT RETURN BOOLEAN IS
203 BEGIN
204 BEGIN
205 /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
206 EXCEPTION
207 WHEN OTHERS THEN
208 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
209 END;
210 RETURN (TRUE);
211 END AFTERREPORT;
212
213 PROCEDURE RAISE_ORA_ERR IS
214 ERRMSG VARCHAR2(1000);
215 ERRNUM NUMBER;
216 BEGIN
217 ERRMSG := SQLERRM;
218 ERRNUM := SQLCODE;
219 /*SRW.MESSAGE(ERRNUM
220 ,ERRMSG)*/NULL;
221 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
222 END RAISE_ORA_ERR;
223
224 PROCEDURE RAISE_ERR(MSGNAME IN VARCHAR2
225 ,ABORT_FLAG IN VARCHAR2) IS
226 ERRMSG VARCHAR2(1000);
227 BEGIN
228 SET_NAME('JL'
229 ,MSGNAME);
230 ERRMSG := GET;
231 /*SRW.MESSAGE(JL_ZZ_FA_UTILITIES_PKG.GET_APP_ERRNUM('JL'
232 ,MSGNAME)
233 ,ERRMSG)*/NULL;
234 IF ABORT_FLAG = 'Y' THEN
235 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
236 END IF;
237 END RAISE_ERR;
238
239 FUNCTION AFTERPFORM RETURN BOOLEAN IS
240 BEGIN
241 IF P_CA_SET_OF_BOOKS_ID <> -1999 THEN
242 BEGIN
243 SELECT
244 MRC_SOB_TYPE_CODE,
245 CURRENCY_CODE
246 INTO P_MRCSOBTYPE,LP_CURRENCY_CODE
247 FROM
248 GL_SETS_OF_BOOKS
249 WHERE SET_OF_BOOKS_ID = P_CA_SET_OF_BOOKS_ID;
250 EXCEPTION
251 WHEN OTHERS THEN
252 P_MRCSOBTYPE := 'P';
253 END;
254 ELSE
255 P_MRCSOBTYPE := 'P';
256 END IF;
257 IF UPPER(P_MRCSOBTYPE) = 'R' THEN
258 LP_FA_BOOK_CONTROLS := 'FA_BOOK_CONTROLS_MRC_V';
259 LP_FA_BOOKS := 'FA_BOOKS_MRC_V';
260 LP_FA_ADJUSTMENTS := 'FA_ADJUSTMENTS_MRC_V';
261 LP_FA_DEPRN_PERIODS := 'FA_DEPRN_PERIODS_MRC_V';
262 LP_FA_DEPRN_SUMMARY := 'FA_DEPRN_SUMMARY_MRC_V';
263 LP_FA_DEPRN_DETAIL := 'FA_DEPRN_DETAIL_MRC_V';
264 ELSE
265 LP_FA_BOOK_CONTROLS := 'FA_BOOK_CONTROLS';
266 LP_FA_BOOKS := 'FA_BOOKS';
267 LP_FA_ADJUSTMENTS := 'FA_ADJUSTMENTS';
268 LP_FA_DEPRN_PERIODS := 'FA_DEPRN_PERIODS';
269 LP_FA_DEPRN_SUMMARY := 'FA_DEPRN_SUMMARY';
270 LP_FA_DEPRN_DETAIL := 'FA_DEPRN_DETAIL';
271 END IF;
272 RETURN (TRUE);
273 END AFTERPFORM;
274
275 FUNCTION C_BASE_CURRENCY_CODE_P RETURN VARCHAR2 IS
276 BEGIN
277 RETURN C_BASE_CURRENCY_CODE;
278 END C_BASE_CURRENCY_CODE_P;
279
280 FUNCTION C_BASE_PRECISION_P RETURN NUMBER IS
281 BEGIN
282 RETURN C_BASE_PRECISION;
283 END C_BASE_PRECISION_P;
284
285 FUNCTION C_ORGANIZATION_NAME_P RETURN VARCHAR2 IS
286 BEGIN
287 RETURN C_ORGANIZATION_NAME;
288 END C_ORGANIZATION_NAME_P;
289
290 FUNCTION C_BASE_MIN_ACCT_UNIT_P RETURN NUMBER IS
291 BEGIN
292 RETURN C_BASE_MIN_ACCT_UNIT;
293 END C_BASE_MIN_ACCT_UNIT_P;
294
295 FUNCTION C_BASE_DESCRIPTION_P RETURN VARCHAR2 IS
296 BEGIN
297 RETURN C_BASE_DESCRIPTION;
298 END C_BASE_DESCRIPTION_P;
299
300 FUNCTION C_PERIOD_FROM_P RETURN VARCHAR2 IS
301 BEGIN
302 RETURN C_PERIOD_FROM;
303 END C_PERIOD_FROM_P;
304
305 FUNCTION C_PERIOD_TO_P RETURN VARCHAR2 IS
306 BEGIN
307 RETURN C_PERIOD_TO;
308 END C_PERIOD_TO_P;
309
310 FUNCTION C_SCALING_FACTOR_P RETURN NUMBER IS
311 BEGIN
312 RETURN C_SCALING_FACTOR;
313 END C_SCALING_FACTOR_P;
314
315 PROCEDURE SET_NAME(APPLICATION IN VARCHAR2
316 ,NAME IN VARCHAR2) IS
317 BEGIN
318 /* STPROC.INIT('begin FND_MESSAGE.SET_NAME(:APPLICATION, :NAME); end;');
319 STPROC.BIND_I(APPLICATION);
320 STPROC.BIND_I(NAME);
321 STPROC.EXECUTE;*/
322 FND_MESSAGE.SET_NAME(APPLICATION,NAME);
323 END SET_NAME;
324
325 PROCEDURE SET_TOKEN(TOKEN IN VARCHAR2
326 ,VALUE IN VARCHAR2
327 ,TRANSLATE IN BOOLEAN) IS
328 TRANSLATE1 BOOLEAN;
329 BEGIN
330 /* STPROC.INIT('declare TRANSLATE BOOLEAN; begin TRANSLATE := sys.diutil.int_to_bool(:TRANSLATE); FND_MESSAGE.SET_TOKEN(:TOKEN, :VALUE, TRANSLATE); end;');
331 STPROC.BIND_I(TRANSLATE);
332 STPROC.BIND_I(TOKEN);
333 STPROC.BIND_I(VALUE);
334 STPROC.EXECUTE;*/
335
336 --TRANSLATE1 := sys.diutil.int_to_bool(TRANSLATE);
337 FND_MESSAGE.SET_TOKEN(TOKEN, VALUE, TRANSLATE1);
338 END SET_TOKEN;
339
340 PROCEDURE RETRIEVE(MSGOUT OUT NOCOPY VARCHAR2) IS
341 BEGIN
342 /* STPROC.INIT('begin FND_MESSAGE.RETRIEVE(:MSGOUT); end;');
343 STPROC.BIND_O(MSGOUT);
344 STPROC.EXECUTE;
345 STPROC.RETRIEVE(1
346 ,MSGOUT);*/
347
348 FND_MESSAGE.RETRIEVE(MSGOUT);
349 END RETRIEVE;
350
351 PROCEDURE CLEAR IS
352 BEGIN
353 /* STPROC.INIT('begin FND_MESSAGE.CLEAR; end;');
354 STPROC.EXECUTE;*/null;
355 END CLEAR;
356
357 FUNCTION GET_STRING(APPIN IN VARCHAR2
358 ,NAMEIN IN VARCHAR2) RETURN VARCHAR2 IS
359 X0 VARCHAR2(2000);
360 BEGIN
361 /* STPROC.INIT('begin :X0 := FND_MESSAGE.GET_STRING(:APPIN, :NAMEIN); end;');
362 STPROC.BIND_O(X0);
363 STPROC.BIND_I(APPIN);
364 STPROC.BIND_I(NAMEIN);
365 STPROC.EXECUTE;
366 STPROC.RETRIEVE(1
367 ,X0);*/
368 RETURN X0;
369 END GET_STRING;
370
371 FUNCTION GET_NUMBER(APPIN IN VARCHAR2
372 ,NAMEIN IN VARCHAR2) RETURN NUMBER IS
373 X0 NUMBER;
374 BEGIN
375 /* STPROC.INIT('begin :X0 := FND_MESSAGE.GET_NUMBER(:APPIN, :NAMEIN); end;');
376 STPROC.BIND_O(X0);
377 STPROC.BIND_I(APPIN);
378 STPROC.BIND_I(NAMEIN);
379 STPROC.EXECUTE;
380 STPROC.RETRIEVE(1
381 ,X0);*/
382 RETURN X0;
383 END GET_NUMBER;
384
385 FUNCTION GET RETURN VARCHAR2 IS
386 X0 VARCHAR2(2000);
387 BEGIN
388 /* STPROC.INIT('begin :X0 := FND_MESSAGE.GET; end;');
389 STPROC.BIND_O(X0);
390 STPROC.EXECUTE;
391 STPROC.RETRIEVE(1
392 ,X0);*/X0 := FND_MESSAGE.GET;
393 RETURN X0;
394 END GET;
395
396 FUNCTION GET_ENCODED RETURN VARCHAR2 IS
397 X0 VARCHAR2(2000);
398 BEGIN
399 /* STPROC.INIT('begin :X0 := FND_MESSAGE.GET_ENCODED; end;');
400 STPROC.BIND_O(X0);
401 STPROC.EXECUTE;
402 STPROC.RETRIEVE(1
403 ,X0);*/
404 RETURN X0;
405 END GET_ENCODED;
406
407 PROCEDURE PARSE_ENCODED(ENCODED_MESSAGE IN VARCHAR2
408 ,APP_SHORT_NAME OUT NOCOPY VARCHAR2
409 ,MESSAGE_NAME OUT NOCOPY VARCHAR2) IS
410 BEGIN
411 /* STPROC.INIT('begin FND_MESSAGE.PARSE_ENCODED(:ENCODED_MESSAGE, :APP_SHORT_NAME, :MESSAGE_NAME); end;');
412 STPROC.BIND_I(ENCODED_MESSAGE);
413 STPROC.BIND_O(APP_SHORT_NAME);
414 STPROC.BIND_O(MESSAGE_NAME);
415 STPROC.EXECUTE;
416 STPROC.RETRIEVE(2
417 ,APP_SHORT_NAME);
418 STPROC.RETRIEVE(3
419 ,MESSAGE_NAME);*/null;
420 END PARSE_ENCODED;
421
422 PROCEDURE SET_ENCODED(ENCODED_MESSAGE IN VARCHAR2) IS
423 BEGIN
424 /* STPROC.INIT('begin FND_MESSAGE.SET_ENCODED(:ENCODED_MESSAGE); end;');
425 STPROC.BIND_I(ENCODED_MESSAGE);
426 STPROC.EXECUTE;*/null;
427 END SET_ENCODED;
428
429 PROCEDURE RAISE_ERROR IS
430 BEGIN
431 /* STPROC.INIT('begin FND_MESSAGE.RAISE_ERROR; end;');
432 STPROC.EXECUTE;*/null;
433 END RAISE_ERROR;
434
435 END JL_JLARFEFR_XMLP_PKG;
436
437