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