[Home] [Help]
PACKAGE BODY: APPS.FA_FASRVPVW_XMLP_PKG
Source
1 PACKAGE BODY FA_FASRVPVW_XMLP_PKG AS
2 /* $Header: FASRVPVWB.pls 120.0.12010000.1 2008/07/28 13:17:37 appldev ship $ */
3 USER_EXIT_FAILURE EXCEPTION;
4 FUNCTION BEFOREREPORT RETURN BOOLEAN IS
5 L_MAX_ASSET_ID NUMBER;
6 L_SUCCESS_COUNT NUMBER;
7 L_FAILURE_COUNT NUMBER;
8 L_RETURN_STATUS NUMBER;
9 L_BOOK VARCHAR2(15);
10 REVAL_ERR EXCEPTION;
11 L_REQUEST_ID NUMBER;
12 L_RESULT BOOLEAN;
13 L_PHASE VARCHAR2(500) := NULL;
14 L_STATUS VARCHAR2(500) := NULL;
15 L_DEVPHASE VARCHAR2(500) := 'PENDING';
16 L_DEVSTATUS VARCHAR2(500) := NULL;
17 L_MESSAGE VARCHAR2(500) := NULL;
18 DUMMY_DEFAULT BOOLEAN := FALSE;
19 BEGIN
20 P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
21 select SUBSTR(ARGUMENT1,INSTR(ARGUMENT1,'=',1,1)+1) into P_MASS_REVAL_ID1
22 FROM FND_CONCURRENT_REQUESTS
23 WHERE REQUEST_ID =P_CONC_REQUEST_ID;
24 RP_MASS_REVAL_ID := P_MASS_REVAL_ID1;
25 SELECT
26 BOOK_TYPE_CODE
27 INTO L_BOOK
28 FROM
29 FA_MASS_REVALUATIONS
30 WHERE MASS_REVAL_ID = P_MASS_REVAL_ID1;
31 IF (NOT FA_CACHE_PKG.FAZCBC(L_BOOK)) THEN
32 RAISE REVAL_ERR;
33 END IF;
34 FA_SRVR_MSG.INIT_SERVER_MESSAGE;
35 FA_DEBUG_PKG.INITIALIZE;
36 L_MAX_ASSET_ID := 0;
37 L_REQUEST_ID := FND_REQUEST.SUBMIT_REQUEST('OFA'
38 ,'FAVRVL'
39 ,''
40 ,''
41 ,DUMMY_DEFAULT
42 ,P_MASS_REVAL_ID1
43 ,'PREVIEW'
44 ,CHR(0)
45 ,''
46 ,''
47 ,''
48 ,''
49 ,''
50 ,''
51 ,''
52 ,''
53 ,''
54 ,''
55 ,''
56 ,''
57 ,''
58 ,''
59 ,''
60 ,''
61 ,''
62 ,''
63 ,''
64 ,''
65 ,''
66 ,''
67 ,''
68 ,''
69 ,''
70 ,''
71 ,''
72 ,''
73 ,''
74 ,''
75 ,''
76 ,''
77 ,''
78 ,''
79 ,''
80 ,''
81 ,''
82 ,''
83 ,''
84 ,''
85 ,''
86 ,''
87 ,''
88 ,''
89 ,''
90 ,''
91 ,''
92 ,''
93 ,''
94 ,''
95 ,''
96 ,''
97 ,''
98 ,''
99 ,''
100 ,''
101 ,''
102 ,''
103 ,''
104 ,''
105 ,''
106 ,''
107 ,''
108 ,''
109 ,''
110 ,''
111 ,''
112 ,''
113 ,''
114 ,''
115 ,''
116 ,''
117 ,''
118 ,''
119 ,''
120 ,''
121 ,''
122 ,''
123 ,''
124 ,''
125 ,''
126 ,''
127 ,''
128 ,''
129 ,''
130 ,''
131 ,''
132 ,''
133 ,''
134 ,''
135 ,''
136 ,''
137 ,''
138 ,''
139 ,''
140 ,''
141 ,'');
142 COMMIT;
143 IF (L_REQUEST_ID = 0) THEN
144 RAISE REVAL_ERR;
145 END IF;
146 FOR i IN 1 .. 10 LOOP
147 L_RESULT := FND_CONCURRENT.WAIT_FOR_REQUEST(REQUEST_ID => L_REQUEST_ID
148 ,INTERVAL => 30
149 ,MAX_WAIT => 32000
150 ,PHASE => L_PHASE
151 ,STATUS => L_STATUS
152 ,DEV_PHASE => L_DEVPHASE
153 ,DEV_STATUS => L_DEVSTATUS
154 ,MESSAGE => L_MESSAGE);
155 IF (NVL(L_DEVPHASE = 'COMPLETE' AND L_DEVSTATUS = 'NORMAL'
156 ,FALSE)) THEN
157 EXIT;
158 ELSE
159 IF (I = 10) THEN
160 RAISE REVAL_ERR;
161 END IF;
162 END IF;
163 END LOOP;
164 P_CONC_REQUEST2_ID := L_REQUEST_ID;
165 RETURN (TRUE);
166 EXCEPTION
167 WHEN REVAL_ERR THEN
168 RETURN FALSE;
169 WHEN OTHERS THEN
170 RETURN FALSE;
171 END BEFOREREPORT;
172 FUNCTION AFTERREPORT RETURN BOOLEAN IS
173 BEGIN
174 UPDATE
175 FA_MASS_REVALUATIONS
176 SET
177 STATUS = 'PREVIEWED'
178 WHERE MASS_REVAL_ID = P_MASS_REVAL_ID1;
179 DELETE FROM FA_MASS_REVAL_REP_ITF
180 WHERE MASS_REVAL_ID = P_MASS_REVAL_ID1
181 AND REQUEST_ID = P_CONC_REQUEST_ID;
182 RETURN (TRUE);
183 END AFTERREPORT;
184 FUNCTION D_REVAL_PCTFORMULA(D_REVAL_PCT IN VARCHAR2) RETURN VARCHAR2 IS
185 BEGIN
186 DECLARE
187 H_MSG_BUFFER VARCHAR2(2000);
188 BEGIN
189 RETURN (D_REVAL_PCT);
190 EXCEPTION
191 WHEN USER_EXIT_FAILURE THEN
192 /*H_MSG_BUFFER := NVL(SRW.GETERR_RUN
193 ,'d_reval_pctformula');*/
194 H_MSG_BUFFER := 'd_reval_pctformula';
195 RETURN (D_REVAL_PCT);
196 WHEN OTHERS THEN
197 RETURN (D_REVAL_PCT);
198 END;
199 END D_REVAL_PCTFORMULA;
200 FUNCTION REPORT_NAMEFORMULA(COMPANY IN VARCHAR2) RETURN VARCHAR2 IS
201 BEGIN
202 DECLARE
203 L_REPORT_NAME VARCHAR2(240);
204 BEGIN
205 RP_COMPANY := COMPANY;
206 SELECT
207 CP.USER_CONCURRENT_PROGRAM_NAME
208 INTO L_REPORT_NAME
209 FROM
210 FND_CONCURRENT_PROGRAMS_VL CP,
211 FND_CONCURRENT_REQUESTS CR
212 WHERE CR.REQUEST_ID = P_CONC_REQUEST_ID
213 AND CP.APPLICATION_ID = CR.PROGRAM_APPLICATION_ID
214 AND CP.CONCURRENT_PROGRAM_ID = CR.CONCURRENT_PROGRAM_ID;
215 l_report_name := substr(l_report_name,1,instr(l_report_name,' (XML)'));
216 RP_REPORT_NAME := L_REPORT_NAME;
217 RETURN (L_REPORT_NAME);
218 EXCEPTION
219 WHEN OTHERS THEN
220 RP_REPORT_NAME := 'Mass Revaluation Preview Report';
221 RETURN ('Mass Revaluation Preview Report');
222 END;
223 RETURN NULL;
224 END REPORT_NAMEFORMULA;
225 FUNCTION BOOKFORMULA RETURN VARCHAR2 IS
226 BEGIN
227 DECLARE
228 L_CURRENCY_CODE VARCHAR2(15);
229 L_DESCRIPTION VARCHAR2(80);
230 L_BOOK_TYPE_CODE VARCHAR2(15);
231 L_DEFAULT_RFRF VARCHAR2(80);
232 TEMP_DEFAULT_RFRF VARCHAR2(3);
233 L_DEFAULT_LEF NUMBER;
234 L_DEFAULT_LEC NUMBER;
235 L_DEFAULT_MFRR NUMBER;
236 BEGIN
237 SELECT
238 MR.DESCRIPTION,
239 MR.BOOK_TYPE_CODE,
240 MR.DEFAULT_REVAL_FULLY_RSVD_FLAG,
241 MR.DEFAULT_LIFE_EXTENSION_FACTOR,
242 MR.DEFAULT_LIFE_EXTENSION_CEILING,
243 MR.DEFAULT_MAX_FULLY_RSVD_REVALS,
244 SOB.CURRENCY_CODE
245 INTO L_DESCRIPTION,L_BOOK_TYPE_CODE,TEMP_DEFAULT_RFRF,L_DEFAULT_LEF,L_DEFAULT_LEC,L_DEFAULT_MFRR,L_CURRENCY_CODE
246 FROM
247 FA_MASS_REVALUATIONS MR,
248 FA_BOOK_CONTROLS BC,
249 GL_SETS_OF_BOOKS SOB
250 WHERE MR.MASS_REVAL_ID = P_MASS_REVAL_ID1
251 AND MR.BOOK_TYPE_CODE = BC.BOOK_TYPE_CODE
252 AND BC.DATE_INEFFECTIVE is null
253 AND SOB.SET_OF_BOOKS_ID = BC.SET_OF_BOOKS_ID;
254 SELECT
255 MEANING
256 INTO L_DEFAULT_RFRF
257 FROM
258 FA_LOOKUPS
259 WHERE LOOKUP_TYPE = 'YESNO'
260 AND LOOKUP_CODE = NVL(TEMP_DEFAULT_RFRF
261 ,'NO');
262 CURRENCY_CODE := L_CURRENCY_CODE;
263 REVAL_DESCRIPTION := L_DESCRIPTION;
264 DEF_RFRF := L_DEFAULT_RFRF;
265 DEF_LEF := L_DEFAULT_LEF;
266 DEF_LEC := L_DEFAULT_LEC;
267 DEF_MFRR := L_DEFAULT_MFRR;
268 RETURN (L_BOOK_TYPE_CODE);
269 END;
270 RETURN NULL;
271 END BOOKFORMULA;
272 FUNCTION LIFE_INDFORMULA(LIFE_IND IN NUMBER) RETURN NUMBER IS
273 BEGIN
274 RETURN (LIFE_IND);
275 END LIFE_INDFORMULA;
276 FUNCTION D_ASS_REVAL_PCTFORMULA(REVAL_PCT IN NUMBER) RETURN VARCHAR2 IS
277 BEGIN
278 BEGIN
279 RETURN (REVAL_PCT);
280 END;
281 RETURN NULL;
282 END D_ASS_REVAL_PCTFORMULA;
283 FUNCTION D_ASS_FOUNDFORMULA(D_ASS_FOUND IN VARCHAR2) RETURN VARCHAR2 IS
284 BEGIN
285 RETURN (D_ASS_FOUND);
286 END D_ASS_FOUNDFORMULA;
287 FUNCTION D_LIFEFORMULA(LIFE_IN_MONTHS IN NUMBER) RETURN VARCHAR2 IS
288 BEGIN
289 IF LIFE_IN_MONTHS IS NOT NULL THEN
290 RETURN ((LPAD(TO_CHAR(TRUNC(LIFE_IN_MONTHS / 12
291 ,0)
292 ,'90')
293 ,3
294 ,' ') || '.' || SUBSTR(TO_CHAR(MOD(LIFE_IN_MONTHS
295 ,12)
296 ,'00')
297 ,2
298 ,2)));
299 ELSE
300 RETURN (NULL);
301 END IF;
302 RETURN NULL;
303 END D_LIFEFORMULA;
304 FUNCTION D_NEW_LIFEFORMULA(NEW_LIFE IN NUMBER) RETURN VARCHAR2 IS
305 BEGIN
306 IF (NEW_LIFE <> 0) THEN
307 RETURN ((LPAD(TO_CHAR(TRUNC(NEW_LIFE / 12
308 ,0)
309 ,'90')
310 ,3
311 ,' ') || '.' || SUBSTR(TO_CHAR(MOD(NEW_LIFE
312 ,12)
313 ,'00')
314 ,2
315 ,2)));
316 ELSE
317 RETURN (NULL);
318 END IF;
319 RETURN NULL;
320 END D_NEW_LIFEFORMULA;
321 FUNCTION D_LIFE_INDFORMULA(LIFE_IND IN NUMBER) RETURN VARCHAR2 IS
322 BEGIN
323 IF (LIFE_IND IS NULL) THEN
324 RETURN (NULL);
325 ELSE
326 RETURN ('*');
327 END IF;
328 RETURN NULL;
329 END D_LIFE_INDFORMULA;
330 FUNCTION D_ASS_FRRFFORMULA RETURN VARCHAR2 IS
331 BEGIN
332 RETURN (D_ASS_FRRF);
333 END D_ASS_FRRFFORMULA;
334 FUNCTION D_ASS_MFRRFORMULA(D_ASS_MFRR IN VARCHAR2) RETURN VARCHAR2 IS
335 BEGIN
336 IF (D_ASS_MFRR = '0') THEN
337 RETURN (NULL);
338 ELSE
339 RETURN (D_ASS_MFRR);
340 END IF;
341 RETURN NULL;
342 END D_ASS_MFRRFORMULA;
343 FUNCTION D_MFRRFORMULA(D_MFRR IN VARCHAR2) RETURN VARCHAR2 IS
344 BEGIN
345 IF (D_MFRR = '0') THEN
346 RETURN (NULL);
347 ELSE
348 RETURN (D_MFRR);
349 END IF;
350 RETURN NULL;
351 END D_MFRRFORMULA;
352 FUNCTION D_FOUNDFORMULA(D_FOUND IN VARCHAR2) RETURN VARCHAR2 IS
353 BEGIN
354 RETURN (D_FOUND);
355 END D_FOUNDFORMULA;
356 FUNCTION D_FRRFFORMULA(REVAL_FULLY_RSVD IN VARCHAR2) RETURN VARCHAR2 IS
357 BEGIN
358 RETURN (REVAL_FULLY_RSVD);
359 END D_FRRFFORMULA;
360 FUNCTION D_LEFFORMULA(D_LEF IN VARCHAR2) RETURN VARCHAR2 IS
361 BEGIN
362 RETURN (D_LEF);
363 END D_LEFFORMULA;
364 FUNCTION D_LECFORMULA(D_LEC IN VARCHAR2) RETURN VARCHAR2 IS
365 BEGIN
366 RETURN (D_LEC);
367 END D_LECFORMULA;
368 FUNCTION D_ASS_FRRF_P RETURN VARCHAR2 IS
369 BEGIN
370 RETURN D_ASS_FRRF;
371 END D_ASS_FRRF_P;
372 FUNCTION REVAL_DESCRIPTION_P RETURN VARCHAR2 IS
373 BEGIN
374 RETURN REVAL_DESCRIPTION;
375 END REVAL_DESCRIPTION_P;
376 FUNCTION CURRENCY_CODE_P RETURN VARCHAR2 IS
377 BEGIN
378 RETURN CURRENCY_CODE;
379 END CURRENCY_CODE_P;
380 FUNCTION DEF_RFRF_P RETURN VARCHAR2 IS
381 BEGIN
382 RETURN DEF_RFRF;
383 END DEF_RFRF_P;
384 FUNCTION DEF_LEC_P RETURN NUMBER IS
385 BEGIN
386 RETURN DEF_LEC;
387 END DEF_LEC_P;
388 FUNCTION DEF_MFRR_P RETURN NUMBER IS
389 BEGIN
390 RETURN DEF_MFRR;
391 END DEF_MFRR_P;
392 FUNCTION DEF_LEF_P RETURN NUMBER IS
393 BEGIN
394 RETURN DEF_LEF;
395 END DEF_LEF_P;
396 FUNCTION RP_COMPANY_P RETURN VARCHAR2 IS
397 BEGIN
398 RETURN RP_COMPANY;
399 END RP_COMPANY_P;
400 FUNCTION RP_REPORT_NAME_P RETURN VARCHAR2 IS
401 BEGIN
402 RETURN RP_REPORT_NAME;
403 END RP_REPORT_NAME_P;
404 FUNCTION RP_REPORT_EXEC_DATE_P RETURN DATE IS
405 BEGIN
406 RETURN RP_REPORT_EXEC_DATE;
407 END RP_REPORT_EXEC_DATE_P;
408 FUNCTION RP_MASS_REVAL_ID_P RETURN NUMBER IS
409 BEGIN
410 RETURN RP_MASS_REVAL_ID;
411 END RP_MASS_REVAL_ID_P;
412 END FA_FASRVPVW_XMLP_PKG;
413