[Home] [Help]
PACKAGE BODY: APPS.FA_FAS911_XMLP_PKG
Source
1 PACKAGE BODY FA_FAS911_XMLP_PKG AS
2 /* $Header: FAS911B.pls 120.0.12010000.1 2008/07/28 13:16:04 appldev ship $ */
3 function report_nameformula(Company_Name in varchar2) return varchar2 is
4 begin
5 P_CONC_REQUEST_ID := fnd_global.CONC_REQUEST_ID;
6 DECLARE
7 l_report_name VARCHAR2(80);
8 l_conc_program_id NUMBER;
9 BEGIN
10 RP_Company_Name := Company_Name;
11 SELECT cr.concurrent_program_id
12 INTO l_conc_program_id
13 FROM FND_CONCURRENT_REQUESTS cr
14 WHERE cr.program_application_id = 140
15 AND cr.request_id = P_CONC_REQUEST_ID;
16 SELECT cp.user_concurrent_program_name
17 INTO l_report_name
18 FROM FND_CONCURRENT_PROGRAMS_VL cp
19 WHERE
20 cp.concurrent_program_id= l_conc_program_id
21 and cp.application_id = 140;
22 L_REPORT_NAME := substr(L_REPORT_NAME,1,instr(L_REPORT_NAME,' (XML)'));
23 RP_Report_Name := l_report_name;
24 RETURN(l_report_name);
25 EXCEPTION
26 WHEN OTHERS THEN
27 RP_Report_Name := ':Depreciation Rate Listing:';
28 RETURN(RP_Report_Name);
29 END;
30 RETURN NULL; end;
31 function BeforeReport return boolean is
32 begin
33 /*SRW.USER_EXIT('FND SRWINIT');*/null;
34 return (TRUE);
35 end;
36 function AfterReport return boolean is
37 begin
38 /*SRW.USER_EXIT('FND SRWEXIT');*/null;
39 return (TRUE);
40 end;
41 function d_lifeformula(LIFE in number) return varchar2 is
42 begin
43 /*SRW.REFERENCE(life);*/null;
44 BEGIN
45 RETURN(fadolif(LIFE, NULL, NULL, NULL));
46 END;
47 RETURN NULL; end;
48 --Functions to refer Oracle report placeholders--
49 Function RP_COMPANY_NAME_p return varchar2 is
50 Begin
51 return RP_COMPANY_NAME;
52 END;
53 Function RP_REPORT_NAME_p return varchar2 is
54 Begin
55 return RP_REPORT_NAME;
56 END;
57 FUNCTION fadolif(life NUMBER,
58 adj_rate NUMBER,
59 bonus_rate NUMBER,
60 prod NUMBER)
61 RETURN CHAR IS
62 retval CHAR(7);
63 num_chars NUMBER;
64 temp_retval number;
65 BEGIN
66 IF life IS NOT NULL
67 THEN
68 -- Fix for bug 601202 -- added substrb after lpad. changed '90' to '999'
69 temp_retval := fnd_number.canonical_to_number((LPAD(SUBSTR(TO_CHAR(TRUNC(life/12, 0), '999'), 2, 3),3,' ') || '.' ||
70 SUBSTR(TO_CHAR(MOD(life, 12), '00'), 2, 2)) );
71 retval := to_char(temp_retval,'999D99');
72 ELSIF adj_rate IS NOT NULL
73 THEN
74 /* Bug 1744591
75 Changed 90D99 to 990D99 */
76 retval := SUBSTR(TO_CHAR(ROUND((adj_rate + NVL(bonus_rate, 0))*100, 2), '990.99'),2,6) || '%';
77 ELSIF prod IS NOT NULL
78 THEN
79 --test for length of production_capacity; if it's longer
80 --than 7 characters, then display in exponential notation
81 --IF prod <= 9999999
82 --THEN
83 -- retval := TO_CHAR(prod);
84 --ELSE
85 -- retval := SUBSTR(LTRIM(TO_CHAR(prod, '9.9EEEE')), 1, 7);
86 --END IF;
87 --display nothing for UOP assets
88 retval := '';
89 ELSE
90 --should not occur
91 retval := ' ';
92 END IF;
93 return(retval);
94 END;
95 END FA_FAS911_XMLP_PKG ;
96