[Home] [Help]
PACKAGE BODY: APPS.FA_FAS540_XMLP_PKG
Source
1 PACKAGE BODY FA_FAS540_XMLP_PKG AS
2 /* $Header: FAS540B.pls 120.0.12010000.1 2008/07/28 13:15:10 appldev ship $ */
3 function BeforeReport return boolean is
4 begin
5 P_CONC_REQUEST_ID := fnd_global.CONC_REQUEST_ID;
6 begin
7 /*SRW.USER_EXIT('FND SRWINIT');*/null;
8 END; return (TRUE);
9 end;
10 function AfterReport return boolean is
11 begin
12 /*SRW.USER_EXIT('FND SRWEXIT');*/null;
13 return (TRUE);
14 end;
15 function report_nameformula(Company_Name in varchar2) return varchar2 is
16 begin
17 DECLARE
18 l_report_name VARCHAR2(80);
19 l_conc_program_id NUMBER;
20 BEGIN
21 RP_Company_Name := Company_Name;
22 SELECT cr.concurrent_program_id
23 INTO l_conc_program_id
24 FROM FND_CONCURRENT_REQUESTS cr
25 WHERE cr.program_application_id = 140
26 AND cr.request_id = P_CONC_REQUEST_ID;
27 SELECT cp.user_concurrent_program_name
28 INTO l_report_name
29 FROM FND_CONCURRENT_PROGRAMS_VL cp
30 WHERE
31 cp.concurrent_program_id= l_conc_program_id
32 and cp.application_id = 140;
33 l_report_name := substr(l_report_name,1,instr(l_report_name,' (XML)'));
34 RP_Report_Name := l_report_name;
35 RETURN(l_report_name);
36 EXCEPTION
37 WHEN OTHERS THEN
38 RP_Report_Name := ':Tax Additions Report:';
39 RETURN(RP_Report_Name);
40 END;
41 RETURN NULL; end;
42 function BOOKFormula return VARCHAR2 is
43 begin
44 DECLARE
45 l_book VARCHAR2(15);
46 l_accounting_flex_structure number(15);
47 l_dist_book VARCHAR2(15);
48 l_fiscal_year_name VARCHAR2(30);
49 l_currency_code VARCHAR2(15);
50 l_precision number;
51 BEGIN
52 SELECT bc.book_type_code,
53 bc.accounting_flex_structure,
54 bc.distribution_source_book,
55 bc.fiscal_year_name,
56 sob.currency_code,
57 cur.precision
58 INTO l_book,
59 l_accounting_flex_structure,
60 l_dist_book,
61 l_fiscal_year_name,
62 l_currency_code,
63 l_precision
64 FROM fa_book_controls bc,
65 gl_sets_of_books sob,
66 fnd_currencies cur
67 WHERE bc.book_type_code = P_BOOK
68 AND bc.date_ineffective is null
69 AND bc.set_of_books_id = sob.set_of_books_id
70 AND sob.currency_code = cur.currency_code;
71 DIST_BOOK := l_dist_book;
72 ACCOUNTING_FLEX_STRUCTURE := l_accounting_flex_structure;
73 CURRENCY_CODE := l_currency_code;
74 FISCAL_YEAR_NAME := l_fiscal_year_name;
75 P_MIN_PRECISION := l_precision;
76 RETURN(l_book);
77 END;
78 RETURN NULL; end;
79 function PERIOD1Formula return VARCHAR2 is
80 begin
81 DECLARE
82 l_period_name VARCHAR2(15);
83 l_period_counter number(15);
84 BEGIN
85 select period_name,
86 period_counter
87 into l_period_name,
88 l_period_counter
89 from fa_deprn_periods
90 where book_type_code = P_BOOK
91 and period_name = P_PERIOD1;
92 PERIOD1_PC := l_period_counter;
93 RETURN(l_period_name);
94 END;
95 RETURN NULL; end;
96 function PERIOD2Formula return VARCHAR2 is
97 begin
98 DECLARE
99 l_period_name VARCHAR2(15);
100 l_period_counter number(15);
101 BEGIN
102 select period_name,
103 period_counter
104 into l_period_name,
105 l_period_counter
106 from fa_deprn_periods
107 where book_type_code = P_BOOK
108 and period_name = P_PERIOD2;
109 PERIOD2_PC := l_period_counter;
110 RETURN(l_period_name);
111 EXCEPTION
112 WHEN NO_DATA_FOUND
113 THEN
114 PERIOD2_PC := PERIOD1_PC;
115 RETURN(P_PERIOD1);
116 END;
117 RETURN NULL; end;
118 function d_lifeformula(life in number, adj_rate in number, bonus_rate in number, prod in number) return varchar2 is
119 begin
120 begin
121 return(fadolif(life, adj_rate, bonus_rate, prod));
122 end;
123 RETURN NULL; end;
124 --Functions to refer Oracle report placeholders--
125 Function DIST_BOOK_p return varchar2 is
126 Begin
127 return DIST_BOOK;
128 END;
129 Function CURRENCY_CODE_p return varchar2 is
130 Begin
131 return CURRENCY_CODE;
132 END;
133 Function FISCAL_YEAR_NAME_p return varchar2 is
134 Begin
135 return FISCAL_YEAR_NAME;
136 END;
137 Function ACCOUNTING_FLEX_STRUCTURE_p return number is
138 Begin
139 return ACCOUNTING_FLEX_STRUCTURE;
140 END;
141 Function PERIOD1_PC_p return number is
142 Begin
143 return PERIOD1_PC;
144 END;
145 Function PERIOD2_PC_p return number is
146 Begin
147 return PERIOD2_PC;
148 END;
149 Function RP_COMPANY_NAME_p return varchar2 is
150 Begin
151 return RP_COMPANY_NAME;
152 END;
153 Function RP_REPORT_NAME_p return varchar2 is
154 Begin
155 return RP_REPORT_NAME;
156 END;
157 Function RP_BAL_LPROMPT_p return varchar2 is
158 Begin
159 return RP_BAL_LPROMPT;
160 END;
161 FUNCTION fadolif(life NUMBER,
162 adj_rate NUMBER,
163 bonus_rate NUMBER,
164 prod NUMBER)
165 RETURN CHAR IS
166 retval CHAR(7);
167 num_chars NUMBER;
168 temp_retval number;
169 BEGIN
170 IF life IS NOT NULL
171 THEN
172 -- Fix for bug 601202 -- added substrb after lpad. changed '90' to '999'
173 temp_retval := fnd_number.canonical_to_number((LPAD(SUBSTR(TO_CHAR(TRUNC(life/12, 0), '999'), 2, 3),3,' ') || '.' ||
174 SUBSTR(TO_CHAR(MOD(life, 12), '00'), 2, 2)) );
175 retval := to_char(temp_retval,'999D99');
176 ELSIF adj_rate IS NOT NULL
177 THEN
178 /* Bug 1744591
179 Changed 90D99 to 990D99 */
180 retval := SUBSTR(TO_CHAR(ROUND((adj_rate + NVL(bonus_rate, 0))*100, 2), '990.99'),2,6) || '%';
181 ELSIF prod IS NOT NULL
182 THEN
183 --test for length of production_capacity; if it's longer
184 --than 7 characters, then display in exponential notation
185 --IF prod <= 9999999
186 --THEN
187 -- retval := TO_CHAR(prod);
188 --ELSE
189 -- retval := SUBSTR(LTRIM(TO_CHAR(prod, '9.9EEEE')), 1, 7);
190 --END IF;
191 --display nothing for UOP assets
192 retval := '';
193 ELSE
194 --should not occur
195 retval := ' ';
196 END IF;
197 return(retval);
198 END;
199 --ADDED
200 function ACCT_BAL_LPROMPTFormula(ACCT_BAL_LPROMPT VARCHAR2) return VARCHAR2 is
201 begin
202 /*SRW.REFERENCE(:BOOK);
203 SRW.USER_EXIT('FND FLEXIDVAL
204 CODE="GL#"
205 NUM=":ACCOUNTING_FLEX_STRUCTURE"
206 APPL_SHORT_NAME="SQLGL"
207 DATA="12345678"
208 LPROMPT=":ACCT_BAL_LPROMPT"
209 DISPLAY="GL_BALANCING"'); */
210 RP_BAL_LPROMPT := ACCT_BAL_LPROMPT;
211 RETURN(ACCT_BAL_LPROMPT);
212 end;
213 END FA_FAS540_XMLP_PKG ;
214