[Home] [Help]
PACKAGE BODY: APPS.JA_JAAUFREV_XMLP_PKG
Source
1 PACKAGE BODY JA_JAAUFREV_XMLP_PKG AS
2 /* $Header: JAAUFREVB.pls 120.1 2007/12/25 16:06:31 dwkrishn noship $ */
3 FUNCTION BEFOREREPORT RETURN BOOLEAN IS
4 BEGIN
5 BEGIN
6 P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
7 /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
8 EXCEPTION
9 WHEN /*SRW.USER_EXIT_FAILURE*/OTHERS THEN
10 /*SRW.MESSAGE(1
11 ,'SRWINIT failed in before report trigger')*/NULL;
12 END;
13 RETURN (TRUE);
14 END BEFOREREPORT;
15
16 FUNCTION AFTERREPORT RETURN BOOLEAN IS
17 BEGIN
18 /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
19 RETURN (TRUE);
20 END AFTERREPORT;
21
22 FUNCTION C_NEW_DEP_RSVFORMULA(TH_ID IN NUMBER
23 ,BOOK_TYPE_CODE IN VARCHAR2
24 ,ASSET_ID IN NUMBER) RETURN NUMBER IS
25 BEGIN
26 DECLARE
27 L_NEW_DEP_RSV NUMBER;
28 BEGIN
29 SELECT
30 DECODE(DEBIT_CREDIT_FLAG
31 ,'CR'
32 ,-ADJ.ADJUSTMENT_AMOUNT
33 ,'DR'
34 ,ADJ.ADJUSTMENT_AMOUNT)
35 INTO L_NEW_DEP_RSV
36 FROM
37 FA_ADJUSTMENTS ADJ
38 WHERE ADJ.TRANSACTION_HEADER_ID = TH_ID
39 AND ADJ.BOOK_TYPE_CODE = C_NEW_DEP_RSVFORMULA.BOOK_TYPE_CODE
40 AND ADJ.ASSET_ID = C_NEW_DEP_RSVFORMULA.ASSET_ID
41 AND ADJ.SOURCE_TYPE_CODE = 'REVALUATION'
42 AND ADJ.ADJUSTMENT_TYPE = 'RESERVE';
43 RETURN (L_NEW_DEP_RSV);
44 EXCEPTION
45 WHEN NO_DATA_FOUND THEN
46 L_NEW_DEP_RSV := 0;
47 RETURN (L_NEW_DEP_RSV);
48 END;
49 RETURN NULL;
50 END C_NEW_DEP_RSVFORMULA;
51
52 FUNCTION D_ASSET_CLASSFORMULA RETURN VARCHAR2 IS
53 BEGIN
54 DECLARE
55 L_ASSET_CLASS VARCHAR2(250);
56 BEGIN
57 IF (P_ASSET_CLASS <> ' ') THEN
58 SELECT
59 DECODE(FLEX1.APPLICATION_COLUMN_NAME
60 ,'SEGMENT7'
61 ,C.SEGMENT7
62 ,'SEGMENT6'
63 ,C.SEGMENT6
64 ,'SEGMENT5'
65 ,C.SEGMENT5
66 ,'SEGMENT4'
67 ,C.SEGMENT4
68 ,'SEGMENT3'
69 ,C.SEGMENT3
70 ,'SEGMENT2'
71 ,C.SEGMENT2
72 ,'SEGMENT1'
73 ,C.SEGMENT1) || DECODE(NVL(FLEX2.APPLICATION_COLUMN_NAME
74 ,' ')
75 ,' '
76 ,' '
77 ,'-') || DECODE(NVL(FLEX2.APPLICATION_COLUMN_NAME
78 ,' ')
79 ,'SEGMENT7'
80 ,C.SEGMENT7
81 ,'SEGMENT6'
82 ,C.SEGMENT6
83 ,'SEGMENT5'
84 ,C.SEGMENT5
85 ,'SEGMENT4'
86 ,C.SEGMENT4
87 ,'SEGMENT3'
88 ,C.SEGMENT3
89 ,'SEGMENT2'
90 ,C.SEGMENT2
91 ,'SEGMENT1'
92 ,C.SEGMENT1
93 ,' ') || DECODE(NVL(FLEX3.APPLICATION_COLUMN_NAME
94 ,' ')
95 ,' '
96 ,' '
97 ,'-') || DECODE(NVL(FLEX3.APPLICATION_COLUMN_NAME
98 ,' ')
99 ,'SEGMENT7'
100 ,C.SEGMENT7
101 ,'SEGMENT6'
102 ,C.SEGMENT6
103 ,'SEGMENT5'
104 ,C.SEGMENT5
105 ,'SEGMENT4'
106 ,C.SEGMENT4
107 ,'SEGMENT3'
108 ,C.SEGMENT3
109 ,'SEGMENT2'
110 ,C.SEGMENT2
111 ,'SEGMENT1'
112 ,C.SEGMENT1
113 ,' ') || DECODE(NVL(FLEX4.APPLICATION_COLUMN_NAME
114 ,' ')
115 ,' '
116 ,' '
117 ,'-') || DECODE(NVL(FLEX4.APPLICATION_COLUMN_NAME
118 ,' ')
119 ,'SEGMENT7'
120 ,C.SEGMENT7
121 ,'SEGMENT6'
122 ,C.SEGMENT6
123 ,'SEGMENT5'
124 ,C.SEGMENT5
125 ,'SEGMENT4'
126 ,C.SEGMENT4
127 ,'SEGMENT3'
128 ,C.SEGMENT3
129 ,'SEGMENT2'
130 ,C.SEGMENT2
131 ,'SEGMENT1'
132 ,C.SEGMENT1
133 ,' ') || DECODE(NVL(FLEX5.APPLICATION_COLUMN_NAME
134 ,' ')
135 ,' '
136 ,' '
137 ,'-') || DECODE(NVL(FLEX5.APPLICATION_COLUMN_NAME
138 ,' ')
139 ,'SEGMENT7'
140 ,C.SEGMENT7
141 ,'SEGMENT6'
142 ,C.SEGMENT6
143 ,'SEGMENT5'
144 ,C.SEGMENT5
145 ,'SEGMENT4'
146 ,C.SEGMENT4
147 ,'SEGMENT3'
148 ,C.SEGMENT3
149 ,'SEGMENT2'
150 ,C.SEGMENT2
151 ,'SEGMENT1'
152 ,C.SEGMENT1
153 ,' ') || DECODE(NVL(FLEX6.APPLICATION_COLUMN_NAME
154 ,' ')
155 ,' '
156 ,' '
157 ,'-') || DECODE(NVL(FLEX6.APPLICATION_COLUMN_NAME
158 ,' ')
159 ,'SEGMENT7'
160 ,C.SEGMENT7
161 ,'SEGMENT6'
162 ,C.SEGMENT6
163 ,'SEGMENT5'
164 ,C.SEGMENT5
165 ,'SEGMENT4'
166 ,C.SEGMENT4
167 ,'SEGMENT3'
168 ,C.SEGMENT3
169 ,'SEGMENT2'
170 ,C.SEGMENT2
171 ,'SEGMENT1'
172 ,C.SEGMENT1
173 ,' ') || DECODE(NVL(FLEX7.APPLICATION_COLUMN_NAME
174 ,' ')
175 ,' '
176 ,' '
177 ,'-') || DECODE(NVL(FLEX7.APPLICATION_COLUMN_NAME
178 ,' ')
179 ,'SEGMENT7'
180 ,C.SEGMENT7
181 ,'SEGMENT6'
182 ,C.SEGMENT6
183 ,'SEGMENT5'
184 ,C.SEGMENT5
185 ,'SEGMENT4'
186 ,C.SEGMENT4
187 ,'SEGMENT3'
188 ,C.SEGMENT3
189 ,'SEGMENT2'
190 ,C.SEGMENT2
191 ,'SEGMENT1'
192 ,C.SEGMENT1
193 ,' ')
194 INTO L_ASSET_CLASS
195 FROM
196 FA_CATEGORIES C,
197 FND_ID_FLEXS FLEXID,
198 FND_ID_FLEX_SEGMENTS FLEX1,
199 FND_ID_FLEX_SEGMENTS FLEX2,
200 FND_ID_FLEX_SEGMENTS FLEX3,
201 FND_ID_FLEX_SEGMENTS FLEX4,
202 FND_ID_FLEX_SEGMENTS FLEX5,
203 FND_ID_FLEX_SEGMENTS FLEX6,
204 FND_ID_FLEX_SEGMENTS FLEX7
205 WHERE C.CATEGORY_ID = P_ASSET_CLASS
206 AND FLEXID.APPLICATION_TABLE_NAME = 'FA_CATEGORIES_B'
207 AND FLEXID.UNIQUE_ID_COLUMN_NAME = 'CATEGORY_ID'
208 AND FLEX1.ID_FLEX_CODE = FLEXID.ID_FLEX_CODE
209 AND FLEX1.SEGMENT_NUM = 1
210 AND FLEX1.ENABLED_FLAG = 'Y'
211 AND flex2.id_flex_code (+) = FLEXID.ID_FLEX_CODE
212 AND flex2.enabled_flag (+) = 'Y'
213 AND flex2.segment_num (+) = 2
214 AND flex3.id_flex_code (+) = FLEXID.ID_FLEX_CODE
215 AND flex3.enabled_flag (+) = 'Y'
216 AND flex3.segment_num (+) = 3
217 AND flex4.id_flex_code (+) = FLEXID.ID_FLEX_CODE
218 AND flex4.enabled_flag (+) = 'Y'
219 AND flex4.segment_num (+) = 4
220 AND flex5.id_flex_code (+) = FLEXID.ID_FLEX_CODE
221 AND flex5.enabled_flag (+) = 'Y'
222 AND flex5.segment_num (+) = 5
223 AND flex6.id_flex_code (+) = FLEXID.ID_FLEX_CODE
224 AND flex6.enabled_flag (+) = 'Y'
225 AND flex6.segment_num (+) = 6
226 AND flex7.id_flex_code (+) = FLEXID.ID_FLEX_CODE
227 AND flex7.enabled_flag (+) = 'Y'
228 AND flex7.segment_num (+) = 7;
229 RETURN (L_ASSET_CLASS);
230 ELSE
231 RETURN ('ALL');
232 END IF;
233 END;
234 RETURN NULL;
235 END D_ASSET_CLASSFORMULA;
236
237 FUNCTION PROFIT_LOSSFORMULA(TOT_OLD_REVAL_RSV IN NUMBER
238 ,TOT_REVAL_RSV IN NUMBER) RETURN NUMBER IS
239 BEGIN
240 DECLARE
241 L_PROFIT_LOSS NUMBER;
242 L_RESERVE NUMBER;
243 BEGIN
244 IF TOT_OLD_REVAL_RSV >= 0 THEN
245 IF TOT_REVAL_RSV >= 0 THEN
246 L_PROFIT_LOSS := 0;
247 L_RESERVE := TOT_REVAL_RSV;
248 ELSE
249 IF TOT_OLD_REVAL_RSV > -1 * TOT_REVAL_RSV THEN
250 L_PROFIT_LOSS := 0;
251 L_RESERVE := TOT_REVAL_RSV;
252 ELSE
253 L_RESERVE := -1 * TOT_OLD_REVAL_RSV;
254 L_PROFIT_LOSS := TOT_REVAL_RSV - L_RESERVE;
255 END IF;
256 END IF;
257 END IF;
258 IF TOT_OLD_REVAL_RSV < 0 AND TOT_REVAL_RSV >= 0 THEN
259 IF -1 * TOT_OLD_REVAL_RSV <= TOT_REVAL_RSV THEN
260 L_PROFIT_LOSS := -1 * TOT_OLD_REVAL_RSV;
261 L_RESERVE := TOT_REVAL_RSV - L_PROFIT_LOSS;
262 ELSE
263 L_PROFIT_LOSS := TOT_REVAL_RSV;
264 L_RESERVE := 0;
265 END IF;
266 END IF;
267 IF TOT_OLD_REVAL_RSV < 0 AND TOT_REVAL_RSV < 0 THEN
268 L_PROFIT_LOSS := TOT_REVAL_RSV;
269 L_RESERVE := 0;
270 END IF;
271 RESERVE := L_RESERVE;
272 RETURN (L_PROFIT_LOSS);
273 END;
274 RETURN NULL;
275 END PROFIT_LOSSFORMULA;
276
277 FUNCTION C_CATEGORYFORMULA(ASSET_CLASS IN NUMBER) RETURN VARCHAR2 IS
278 BEGIN
279 DECLARE
280 L_ASSET_CLASS VARCHAR2(250);
281 BEGIN
282 SELECT
283 DECODE(FLEX1.APPLICATION_COLUMN_NAME
284 ,'SEGMENT7'
285 ,C.SEGMENT7
286 ,'SEGMENT6'
287 ,C.SEGMENT6
288 ,'SEGMENT5'
289 ,C.SEGMENT5
290 ,'SEGMENT4'
291 ,C.SEGMENT4
292 ,'SEGMENT3'
293 ,C.SEGMENT3
294 ,'SEGMENT2'
295 ,C.SEGMENT2
296 ,'SEGMENT1'
297 ,C.SEGMENT1) || DECODE(NVL(FLEX2.APPLICATION_COLUMN_NAME
298 ,' ')
299 ,' '
300 ,' '
301 ,'-') || DECODE(NVL(FLEX2.APPLICATION_COLUMN_NAME
302 ,' ')
303 ,'SEGMENT7'
304 ,C.SEGMENT7
305 ,'SEGMENT6'
306 ,C.SEGMENT6
307 ,'SEGMENT5'
308 ,C.SEGMENT5
309 ,'SEGMENT4'
310 ,C.SEGMENT4
311 ,'SEGMENT3'
312 ,C.SEGMENT3
313 ,'SEGMENT2'
314 ,C.SEGMENT2
315 ,'SEGMENT1'
316 ,C.SEGMENT1
317 ,' ') || DECODE(NVL(FLEX3.APPLICATION_COLUMN_NAME
318 ,' ')
319 ,' '
320 ,' '
321 ,'-') || DECODE(NVL(FLEX3.APPLICATION_COLUMN_NAME
322 ,' ')
323 ,'SEGMENT7'
324 ,C.SEGMENT7
325 ,'SEGMENT6'
326 ,C.SEGMENT6
327 ,'SEGMENT5'
328 ,C.SEGMENT5
329 ,'SEGMENT4'
330 ,C.SEGMENT4
331 ,'SEGMENT3'
332 ,C.SEGMENT3
333 ,'SEGMENT2'
334 ,C.SEGMENT2
335 ,'SEGMENT1'
336 ,C.SEGMENT1
337 ,' ') || DECODE(NVL(FLEX4.APPLICATION_COLUMN_NAME
338 ,' ')
339 ,' '
340 ,' '
341 ,'-') || DECODE(NVL(FLEX4.APPLICATION_COLUMN_NAME
342 ,' ')
343 ,'SEGMENT7'
344 ,C.SEGMENT7
345 ,'SEGMENT6'
346 ,C.SEGMENT6
347 ,'SEGMENT5'
348 ,C.SEGMENT5
349 ,'SEGMENT4'
350 ,C.SEGMENT4
351 ,'SEGMENT3'
352 ,C.SEGMENT3
353 ,'SEGMENT2'
354 ,C.SEGMENT2
355 ,'SEGMENT1'
356 ,C.SEGMENT1
357 ,' ') || DECODE(NVL(FLEX5.APPLICATION_COLUMN_NAME
358 ,' ')
359 ,' '
360 ,' '
361 ,'-') || DECODE(NVL(FLEX5.APPLICATION_COLUMN_NAME
362 ,' ')
363 ,'SEGMENT7'
364 ,C.SEGMENT7
365 ,'SEGMENT6'
366 ,C.SEGMENT6
367 ,'SEGMENT5'
368 ,C.SEGMENT5
369 ,'SEGMENT4'
370 ,C.SEGMENT4
371 ,'SEGMENT3'
372 ,C.SEGMENT3
373 ,'SEGMENT2'
374 ,C.SEGMENT2
375 ,'SEGMENT1'
376 ,C.SEGMENT1
377 ,' ') || DECODE(NVL(FLEX6.APPLICATION_COLUMN_NAME
378 ,' ')
379 ,' '
380 ,' '
381 ,'-') || DECODE(NVL(FLEX6.APPLICATION_COLUMN_NAME
382 ,' ')
383 ,'SEGMENT7'
384 ,C.SEGMENT7
385 ,'SEGMENT6'
386 ,C.SEGMENT6
387 ,'SEGMENT5'
388 ,C.SEGMENT5
389 ,'SEGMENT4'
390 ,C.SEGMENT4
391 ,'SEGMENT3'
392 ,C.SEGMENT3
393 ,'SEGMENT2'
394 ,C.SEGMENT2
395 ,'SEGMENT1'
396 ,C.SEGMENT1
397 ,' ') || DECODE(NVL(FLEX7.APPLICATION_COLUMN_NAME
398 ,' ')
399 ,' '
400 ,' '
401 ,'-') || DECODE(NVL(FLEX7.APPLICATION_COLUMN_NAME
402 ,' ')
403 ,'SEGMENT7'
404 ,C.SEGMENT7
405 ,'SEGMENT6'
406 ,C.SEGMENT6
407 ,'SEGMENT5'
408 ,C.SEGMENT5
409 ,'SEGMENT4'
410 ,C.SEGMENT4
411 ,'SEGMENT3'
412 ,C.SEGMENT3
413 ,'SEGMENT2'
414 ,C.SEGMENT2
415 ,'SEGMENT1'
416 ,C.SEGMENT1
417 ,' ')
418 INTO L_ASSET_CLASS
419 FROM
420 FA_CATEGORIES C,
421 FND_ID_FLEXS FLEXID,
422 FND_ID_FLEX_SEGMENTS FLEX1,
423 FND_ID_FLEX_SEGMENTS FLEX2,
424 FND_ID_FLEX_SEGMENTS FLEX3,
425 FND_ID_FLEX_SEGMENTS FLEX4,
426 FND_ID_FLEX_SEGMENTS FLEX5,
427 FND_ID_FLEX_SEGMENTS FLEX6,
428 FND_ID_FLEX_SEGMENTS FLEX7
429 WHERE C.CATEGORY_ID = ASSET_CLASS
430 AND FLEXID.APPLICATION_TABLE_NAME = 'FA_CATEGORIES_B'
431 AND FLEXID.UNIQUE_ID_COLUMN_NAME = 'CATEGORY_ID'
432 AND FLEX1.ID_FLEX_CODE = FLEXID.ID_FLEX_CODE
433 AND FLEX1.SEGMENT_NUM = 1
434 AND FLEX1.ENABLED_FLAG = 'Y'
435 AND flex2.id_flex_code (+) = FLEXID.ID_FLEX_CODE
436 AND flex2.enabled_flag (+) = 'Y'
437 AND flex2.segment_num (+) = 2
438 AND flex3.id_flex_code (+) = FLEXID.ID_FLEX_CODE
439 AND flex3.enabled_flag (+) = 'Y'
440 AND flex3.segment_num (+) = 3
441 AND flex4.id_flex_code (+) = FLEXID.ID_FLEX_CODE
442 AND flex4.enabled_flag (+) = 'Y'
443 AND flex4.segment_num (+) = 4
444 AND flex5.id_flex_code (+) = FLEXID.ID_FLEX_CODE
445 AND flex5.enabled_flag (+) = 'Y'
446 AND flex5.segment_num (+) = 5
447 AND flex6.id_flex_code (+) = FLEXID.ID_FLEX_CODE
448 AND flex6.enabled_flag (+) = 'Y'
449 AND flex6.segment_num (+) = 6
450 AND flex7.id_flex_code (+) = FLEXID.ID_FLEX_CODE
451 AND flex7.enabled_flag (+) = 'Y'
452 AND flex7.segment_num (+) = 7;
453 RETURN (L_ASSET_CLASS);
454 END;
455 RETURN NULL;
456 END C_CATEGORYFORMULA;
457
458 FUNCTION C_OLD_COSTFORMULA(OLD_COST IN NUMBER
459 ,C_OLD_REVAL_RSV IN NUMBER
460 ,C_OLD_DEP_RSV IN NUMBER) RETURN NUMBER IS
461 BEGIN
462 RETURN (OLD_COST - C_OLD_REVAL_RSV + C_OLD_DEP_RSV);
463 END C_OLD_COSTFORMULA;
464
465 FUNCTION C_OLD_REVAL_RSVFORMULA(ASSET_ID IN NUMBER
466 ,BOOK_TYPE_CODE IN VARCHAR2
467 ,TH_ID IN NUMBER) RETURN NUMBER IS
468 BEGIN
469 DECLARE
470 L_TOT_REV_RSV NUMBER;
471 L_NEW_REV_RSV NUMBER;
472 L_OLD_REV_RSV NUMBER;
473 BEGIN
474 BEGIN
475 SELECT
476 SUM(DECODE(DEBIT_CREDIT_FLAG
477 ,'CR'
478 ,ADJ.ADJUSTMENT_AMOUNT
479 ,'DR'
480 ,-ADJ.ADJUSTMENT_AMOUNT))
481 INTO L_TOT_REV_RSV
482 FROM
483 FA_ADJUSTMENTS ADJ
484 WHERE ADJ.ASSET_ID = C_OLD_REVAL_RSVFORMULA.ASSET_ID
485 AND ADJ.BOOK_TYPE_CODE = C_OLD_REVAL_RSVFORMULA.BOOK_TYPE_CODE
486 AND ADJ.SOURCE_TYPE_CODE = 'REVALUATION'
487 AND ADJ.ADJUSTMENT_TYPE = 'REVAL RESERVE';
488 EXCEPTION
489 WHEN NO_DATA_FOUND THEN
490 L_TOT_REV_RSV := 0;
491 END;
492 BEGIN
493 SELECT
494 DECODE(DEBIT_CREDIT_FLAG
495 ,'CR'
496 ,ADJ.ADJUSTMENT_AMOUNT
497 ,'DR'
498 ,-ADJ.ADJUSTMENT_AMOUNT)
499 INTO L_NEW_REV_RSV
500 FROM
501 FA_ADJUSTMENTS ADJ
502 WHERE ADJ.TRANSACTION_HEADER_ID = TH_ID
503 AND ADJ.ASSET_ID = C_OLD_REVAL_RSVFORMULA.ASSET_ID
504 AND ADJ.BOOK_TYPE_CODE = C_OLD_REVAL_RSVFORMULA.BOOK_TYPE_CODE
505 AND ADJ.SOURCE_TYPE_CODE = 'REVALUATION'
506 AND ADJ.ADJUSTMENT_TYPE = 'REVAL RESERVE';
507 EXCEPTION
508 WHEN NO_DATA_FOUND THEN
509 L_NEW_REV_RSV := 0;
510 END;
511 L_OLD_REV_RSV := L_TOT_REV_RSV - L_NEW_REV_RSV;
512 RETURN (L_OLD_REV_RSV);
513 END;
514 RETURN NULL;
515 END C_OLD_REVAL_RSVFORMULA;
516
517 FUNCTION C_OLD_DEP_RSVFORMULA(ASSET_ID IN NUMBER
518 ,BOOK_TYPE_CODE IN VARCHAR2
519 ,TH_ID IN NUMBER) RETURN NUMBER IS
520 BEGIN
521 DECLARE
522 L_TOT_DEP_RSV NUMBER;
523 L_NEW_DEP_RSV NUMBER;
524 L_OLD_DEP_RSV NUMBER;
525 BEGIN
526 BEGIN
527 SELECT
528 SUM(DECODE(DEBIT_CREDIT_FLAG
529 ,'CR'
530 ,-ADJ.ADJUSTMENT_AMOUNT
531 ,'DR'
532 ,ADJ.ADJUSTMENT_AMOUNT))
533 INTO L_TOT_DEP_RSV
534 FROM
535 FA_ADJUSTMENTS ADJ
536 WHERE ADJ.ASSET_ID = C_OLD_DEP_RSVFORMULA.ASSET_ID
537 AND ADJ.BOOK_TYPE_CODE = C_OLD_DEP_RSVFORMULA.BOOK_TYPE_CODE
538 AND ADJ.SOURCE_TYPE_CODE = 'REVALUATION'
539 AND ADJ.ADJUSTMENT_TYPE = 'RESERVE';
540 EXCEPTION
541 WHEN NO_DATA_FOUND THEN
542 L_TOT_DEP_RSV := 0;
543 END;
544 BEGIN
545 SELECT
546 DECODE(DEBIT_CREDIT_FLAG
547 ,'CR'
548 ,-ADJ.ADJUSTMENT_AMOUNT
549 ,'DR'
550 ,ADJ.ADJUSTMENT_AMOUNT)
551 INTO L_NEW_DEP_RSV
552 FROM
553 FA_ADJUSTMENTS ADJ
554 WHERE ADJ.TRANSACTION_HEADER_ID = TH_ID
555 AND ADJ.ASSET_ID = C_OLD_DEP_RSVFORMULA.ASSET_ID
556 AND ADJ.BOOK_TYPE_CODE = C_OLD_DEP_RSVFORMULA.BOOK_TYPE_CODE
557 AND ADJ.SOURCE_TYPE_CODE = 'REVALUATION'
558 AND ADJ.ADJUSTMENT_TYPE = 'RESERVE';
559 EXCEPTION
560 WHEN NO_DATA_FOUND THEN
561 L_NEW_DEP_RSV := 0;
562 END;
563 L_OLD_DEP_RSV := L_TOT_DEP_RSV - L_NEW_DEP_RSV;
564 RETURN (L_OLD_DEP_RSV);
565 END;
566 RETURN NULL;
567 END C_OLD_DEP_RSVFORMULA;
568
569 FUNCTION C_ACTUAL_COSTFORMULA(C_OLD_COST IN NUMBER
570 ,C_OLD_REVAL_RSV IN NUMBER
571 ,C_OLD_DEP_RSV IN NUMBER) RETURN NUMBER IS
572 BEGIN
573 RETURN (C_OLD_COST + C_OLD_REVAL_RSV - C_OLD_DEP_RSV);
574 END C_ACTUAL_COSTFORMULA;
575
576 FUNCTION C_REVAL_RSVFORMULA(ADJ_COST IN NUMBER
577 ,C_NEW_DEP_RSV IN NUMBER) RETURN NUMBER IS
578 BEGIN
579 RETURN (ADJ_COST + C_NEW_DEP_RSV);
580 END C_REVAL_RSVFORMULA;
581
582 FUNCTION C_NEW_COSTFORMULA(C_ACTUAL_COST IN NUMBER
583 ,ADJ_COST IN NUMBER) RETURN NUMBER IS
584 BEGIN
585 RETURN (C_ACTUAL_COST + ADJ_COST);
586 END C_NEW_COSTFORMULA;
587
588 FUNCTION C_NEW_REVAL_RSVFORMULA(C_OLD_REVAL_RSV IN NUMBER
589 ,C_REVAL_RSV IN NUMBER) RETURN NUMBER IS
590 BEGIN
591 RETURN (C_OLD_REVAL_RSV + C_REVAL_RSV);
592 END C_NEW_REVAL_RSVFORMULA;
593
594 FUNCTION RESERVE_P RETURN NUMBER IS
595 BEGIN
596 RETURN RESERVE;
597 END RESERVE_P;
598
599 END JA_JAAUFREV_XMLP_PKG;
600
601