[Home] [Help]
PACKAGE BODY: APPS.FA_FAS421_XMLP_PKG
Source
1 PACKAGE BODY FA_FAS421_XMLP_PKG AS
2 /* $Header: FAS421B.pls 120.0.12010000.1 2008/07/28 13:14:22 appldev ship $ */
3 function report_nameformula(Company_Name in varchar2) return varchar2 is
4 begin
5 DECLARE
6 l_report_name VARCHAR2(80);
7 l_conc_program_id NUMBER;
8 BEGIN
9 --Added the below line
10 P_CONC_REQUEST_ID := fnd_global.CONC_REQUEST_ID;
11 --End of below line
12 RP_Company_Name := Company_Name;
13 SELECT cr.concurrent_program_id
14 INTO l_conc_program_id
15 FROM FND_CONCURRENT_REQUESTS cr
16 WHERE cr.program_application_id = 140
17 AND cr.request_id = P_CONC_REQUEST_ID;
18 SELECT cp.user_concurrent_program_name
19 INTO l_report_name
20 FROM FND_CONCURRENT_PROGRAMS_VL cp
21 WHERE
22 cp.concurrent_program_id= l_conc_program_id
23 and cp.application_id = 140;
24 l_report_name := substr(l_report_name,1,instr(l_report_name,' (XML)'));
25 RP_Report_Name := l_report_name;
26 RETURN(l_report_name);
27 EXCEPTION
28 WHEN OTHERS THEN
29 RP_Report_Name := ':Additions By Source:';
30 RETURN('REPORT TITLE');
31 END;
32 RETURN NULL; end;
33 function BeforeReport return boolean is
34 a boolean;
35 begin
36 /*SRW.USER_EXIT('FND SRWINIT');*/null;
37 a:=P_PERIOD2ValidTrigger;
38 return (TRUE);
39 end;
40 function AfterReport return boolean is
41 begin
42 /*SRW.USER_EXIT('FND SRWEXIT');*/null;
43 return (TRUE);
44 end;
45 function Period1_PCFormula return Number is
46 begin
47 DECLARE
48 l_period_POD DATE;
49 l_period_PCD DATE;
50 l_period_PC NUMBER(15);
51 l_period_FY NUMBER(15);
52 BEGIN
53 SELECT period_counter,
54 period_open_date,
55 nvl(period_close_date, sysdate),
56 fiscal_year
57 INTO l_period_PC,
58 l_period_POD,
59 l_period_PCD,
60 l_period_FY
61 FROM FA_DEPRN_PERIODS
62 WHERE book_type_code = P_BOOK
63 AND period_name = P_PERIOD1;
64 Period1_POD := l_period_POD;
65 Period1_PCD := l_period_PCD;
66 Period1_FY := l_period_FY;
67 return(l_period_PC);
68 END;
69 RETURN NULL; end;
70 function Period2_PCFormula return Number is
71 begin
72 DECLARE
73 l_period_POD DATE;
74 l_period_PCD DATE;
75 l_period_PC NUMBER(15);
76 l_period_FY NUMBER(15);
77 BEGIN
78 SELECT period_counter,
79 period_open_date,
80 nvl(period_close_date, sysdate),
81 fiscal_year
82 INTO l_period_PC,
83 l_period_POD,
84 l_period_PCD,
85 l_period_FY
86 FROM FA_DEPRN_PERIODS
87 WHERE book_type_code = P_BOOK
88 AND period_name = P_PERIOD2;
89 Period2_POD := l_period_POD;
90 Period2_PCD := l_period_PCD;
91 Period2_FY := l_period_FY;
92 return(l_period_PC);
93 END;
94 RETURN NULL; end;
95 function d_lifeformula(life in number, adj_rate in number, bonus_rate in number, prod in number) return varchar2 is
96 begin
97 begin
98 return (fadolif(life,
99 adj_rate,
100 bonus_rate,
101 prod));
102 end;
103 RETURN NULL; end;
104 function P_PERIOD2ValidTrigger return boolean is
105 begin
106 IF P_PERIOD2 IS NULL
107 THEN P_PERIOD2 := P_PERIOD1;
108 END IF; return (TRUE);
109 end;
110 --Functions to refer Oracle report placeholders--
111 Function ACCT_BAL_APROMPT_p return varchar2 is
112 Begin
113 return ACCT_BAL_APROMPT;
114 END;
115 Function ACCT_CC_APROMPT_p return varchar2 is
116 Begin
117 return ACCT_CC_APROMPT;
118 END;
119 Function CAT_MAJ_RPROMPT_p return varchar2 is
120 Begin
121 return CAT_MAJ_RPROMPT;
122 END;
123 Function Period1_POD_p return date is
124 Begin
125 return Period1_POD;
126 END;
127 Function Period1_PCD_p return date is
128 Begin
129 return Period1_PCD;
130 END;
131 Function Period1_FY_p return number is
132 Begin
133 return Period1_FY;
134 END;
135 Function Period2_POD_p return date is
136 Begin
137 return Period2_POD;
138 END;
139 Function Period2_PCD_p return date is
140 Begin
141 return Period2_PCD;
142 END;
143 Function Period2_FY_p return number is
144 Begin
145 return Period2_FY;
146 END;
147 Function RP_COMPANY_NAME_p return varchar2 is
148 Begin
149 return RP_COMPANY_NAME;
150 END;
151 Function RP_REPORT_NAME_p return varchar2 is
152 Begin
153 return RP_REPORT_NAME;
154 END;
155 FUNCTION fadolif(life NUMBER,
156 adj_rate NUMBER,
157 bonus_rate NUMBER,
158 prod NUMBER)
159 RETURN CHAR IS
160 retval CHAR(7);
161 num_chars NUMBER;
162 temp_retval number;
163 BEGIN
164 IF life IS NOT NULL
165 THEN
166 -- Fix for bug 601202 -- added substrb after lpad. changed '90' to '999'
167 temp_retval := fnd_number.canonical_to_number((LPAD(SUBSTR(TO_CHAR(TRUNC(life/12, 0), '999'), 2, 3),3,' ') || '.' ||
168 SUBSTR(TO_CHAR(MOD(life, 12), '00'), 2, 2)) );
169 retval := to_char(temp_retval,'999D99');
170 ELSIF adj_rate IS NOT NULL
171 THEN
172 /* Bug 1744591
173 Changed 90D99 to 990D99 */
174 retval := SUBSTR(TO_CHAR(ROUND((adj_rate + NVL(bonus_rate, 0))*100, 2), '990.99'),2,6) || '%';
175 ELSIF prod IS NOT NULL
176 THEN
177 --test for length of production_capacity; if it's longer
178 --than 7 characters, then display in exponential notation
179 --IF prod <= 9999999
180 --THEN
181 -- retval := TO_CHAR(prod);
182 --ELSE
183 -- retval := SUBSTR(LTRIM(TO_CHAR(prod, '9.9EEEE')), 1, 7);
184 --END IF;
185 --display nothing for UOP assets
186 retval := '';
187 ELSE
188 --should not occur
189 retval := ' ';
190 END IF;
191 return(retval);
192 END;
193 END FA_FAS421_XMLP_PKG ;
194