DBA Data[Home] [Help]

PACKAGE BODY: APPS.XLA_ENVIRONMENT_PKG

Source


1 PACKAGE BODY xla_environment_pkg AS
2 /* $Header: xlacmenv.pkb 120.5 2005/05/27 07:02:57 ksvenkat ship $ */
3 /*======================================================================+
4 |             Copyright (c) 2000-2002 Oracle Corporation                |
5 |                       Redwood Shores, CA, USA                         |
6 |                         All rights reserved.                          |
7 +=======================================================================+
8 | PACKAGE NAME                                                          |
9 |    xla_environment_pkg                                                |
10 |                                                                       |
11 | DESCRIPTION                                                           |
12 |    XLA Environment Package                                            |
13 |                                                                       |
14 | HISTORY                                                               |
15 |    10-Feb-01 P. Labrevois    Created                                  |
16 +======================================================================*/
17 
18 g_init_flag                    BOOLEAN := FALSE;
19 
20 
21 /*======================================================================+
22 |                                                                       |
23 |                                                                       |
24 |                                                                       |
25 |                                                                       |
26 |                                                                       |
27 |                                                                       |
28 |                                                                       |
29 |                                                                       |
30 |                                                                       |
31 |                                                                       |
32 | Misc privates procedure or functions                                  |
33 |                                                                       |
34 |                                                                       |
35 |                                                                       |
36 |                                                                       |
37 |                                                                       |
38 |                                                                       |
39 |                                                                       |
40 |                                                                       |
41 |                                                                       |
42 |                                                                       |
43 +======================================================================*/
44 
45 /*======================================================================+
46 |                                                                       |
47 | Private Procedure                                                     |
48 |                                                                       |
49 | set_login_info                                                        |
50 |                                                                       |
51 | Set login global variables                                            |
52 |                                                                       |
53 +======================================================================*/
54 PROCEDURE set_login_info
55 
56 IS
57 
58 BEGIN
59 xla_utility_pkg.trace('> Package xla_environment_pkg .get_login_info'         , 20);
60 
61 g_Login_Id     := fnd_global.login_id;
62 g_Prog_Appl_Id := fnd_global.prog_appl_id;
63 g_Prog_Id      := fnd_global.conc_program_id;
64 g_Req_Id       := fnd_global.conc_request_id;
65 g_Usr_Id       := fnd_global.user_id;
66 
67 xla_utility_pkg.trace('Login id                   = '||TO_CHAR(g_Login_Id)    , 30);
68 xla_utility_pkg.trace('Prog Appl id               = '||TO_CHAR(g_Prog_Appl_Id), 30);
69 xla_utility_pkg.trace('Prog id                    = '||TO_CHAR(g_Prog_Id)     , 30);
70 xla_utility_pkg.trace('Request id                 = '||TO_CHAR(g_Req_Id)      , 30);
71 xla_utility_pkg.trace('User id                    = '||TO_CHAR(g_Usr_Id)      , 30);
72 
73 xla_utility_pkg.trace('< Package xla_environment_pkg .login_info'            , 20);
74 
75 EXCEPTION
76 WHEN xla_exceptions_pkg.application_exception THEN
77    RAISE;
78 WHEN OTHERS                                   THEN
79    xla_exceptions_pkg.raise_message
80      (p_location   => 'xla_environment_pkg .get_login_info');
81 END set_login_info;
82 
83 
84 /*======================================================================+
85 |                                                                       |
86 | Private Procedure                                                     |
87 |                                                                       |
88 | set_release_info                                                      |
89 |                                                                       |
90 | Populate the global variable g_release_name with the current release. |
91 |                                                                       |
92 +======================================================================*/
93 PROCEDURE set_release_info
94 
95 IS
96 
97 BEGIN
98 xla_utility_pkg.trace('> Package xla_environment_pkg .set_release_info'       , 20);
99 
100 SELECT SUBSTR(release_name,1,4)
101 INTO   g_release_name
102 FROM   fnd_product_groups
103 ;
104 
105 xla_utility_pkg.trace('Release                    = '||g_release_name    , 30);
106 
107 xla_utility_pkg.trace('> Package xla_environment_pkg .set_release_info'       , 20);
108 
109 EXCEPTION
110 WHEN xla_exceptions_pkg.application_exception THEN
111    RAISE;
112 WHEN OTHERS                                   THEN
113    xla_exceptions_pkg.raise_message
114      (p_location   => 'xla_environment_pkg .set_release_info');
115 END set_release_info;
116 
117 
118 /*======================================================================+
119 |                                                                       |
120 | Private Procedure                                                     |
121 |                                                                       |
122 | set_mapps_info                                                        |
123 |                                                                       |
124 | Populate the global variable g_mapps_info.                            |
125 |                                                                       |
126 +======================================================================*/
127 PROCEDURE set_mapps_info
128 
129 IS
130 
131 l_count                        INTEGER;
132 
133 BEGIN
134 xla_utility_pkg.trace('> Package xla_environment_pkg .get_mapps_info'        , 10);
135 
136 SELECT COUNT(*)
137 INTO   l_count
138 FROM   fnd_data_groups
139 WHERE  data_group_name NOT LIKE 'Multiple Reporting Currencies%'
140 ;
141 
142 xla_utility_pkg.trace('Data groups                = '||TO_CHAR(l_count) , 20);
143 
144 IF l_count >1 THEN
145    g_mapps_flag := TRUE;
146 ELSE
147    g_mapps_flag := FALSE;
148 END IF;
149 
150 xla_utility_pkg.trace('< Package xla_environment_pkg .get_mapps_info'        , 10);
151 
152 EXCEPTION
153 WHEN xla_exceptions_pkg.application_exception THEN
154    RAISE;
155 WHEN OTHERS                                   THEN
156    xla_exceptions_pkg.raise_message
157      (p_location   => 'xla_environment_pkg .get_login_info');
158 END set_mapps_info;
159 
160 
161 /*======================================================================+
162 |                                                                       |
163 | Private Function                                                      |
164 |                                                                       |
165 | set_unique_session_info                                               |
166 |                                                                       |
167 | Set the pipe name.                                                    |
168 |                                                                       |
169 +======================================================================*/
170 PROCEDURE set_session_info
171 
172 IS
173 
174 BEGIN
175 xla_utility_pkg.trace('> Package xla_environment_pkg .set_session_info'      , 10);
176 
177 SELECT pr.spid
178       ,se.sid
179       ,se.program
180       ,se.module
181 INTO   g_process_id
182       ,g_session_id
183       ,g_program
184       ,g_module
185 FROM   v$session         se
186       ,v$process         pr
187 WHERE  se.sid = (select sid from v$mystat where rownum = 1)
188   AND  se.paddr          = pr.addr;
189 
190 g_session_name        := dbms_pipe.unique_session_name;
191 
192 xla_utility_pkg.trace('< Package xla_environment_pkg .set_session_info'      , 10);
193 
194 EXCEPTION
195 
196 WHEN xla_exceptions_pkg.application_exception THEN
197    RAISE;
198 WHEN OTHERS                                   THEN
199    xla_exceptions_pkg.raise_message
200      (p_location   => 'xla_environment_pkg .set_session_info');
201 END set_session_info;
202 
203 
204 
205 /*======================================================================+
206 |                                                                       |
207 |                                                                       |
208 |                                                                       |
209 |                                                                       |
210 |                                                                       |
211 |                                                                       |
212 |                                                                       |
213 |                                                                       |
214 |                                                                       |
215 |                                                                       |
216 | Refresh                                                               |
217 |                                                                       |
218 |                                                                       |
219 |                                                                       |
220 |                                                                       |
221 |                                                                       |
222 |                                                                       |
223 |                                                                       |
224 |                                                                       |
225 |                                                                       |
226 |                                                                       |
227 +======================================================================*/
228 
229 
230 /*======================================================================+
231 |                                                                       |
232 | Public Procedure                                                     |
233 |                                                                       |
234 | refresh                                                               |
235 |                                                                       |
236 | Refresh the environment. It must be called once at the beginning of   |
237 | EVERY concurrent program to refresh the cache variables.              |
238 |                                                                       |
239 +======================================================================*/
240 PROCEDURE Refresh
241 
242 IS
243 
244 BEGIN
245 xla_utility_pkg.trace('> Package xla_environment_pkg .Refresh'                 , 20);
246 
247 IF NOT g_Init_flag THEN
248    set_login_info;
249    set_release_info;
250    set_mapps_info;
251    set_session_info;
252 ELSE
253    set_login_info;
254 END IF;
255 
256 g_Init_flag := TRUE;
257 
258 xla_utility_pkg.trace('< Package xla_environment_pkg .Refresh'                 , 20);
259 
260 EXCEPTION
261 WHEN xla_exceptions_pkg.application_exception THEN
262    RAISE;
263 WHEN OTHERS                                   THEN
264    xla_exceptions_pkg.raise_message
265      (p_location   => 'xla_environment_pkg .get_login_info');
266 END Refresh;
267 
268 
269 /*======================================================================+
270 |                                                                       |
271 |                                                                       |
272 |                                                                       |
273 |                                                                       |
274 |                                                                       |
275 |                                                                       |
276 |                                                                       |
277 |                                                                       |
278 |                                                                       |
279 |                                                                       |
280 | Initialization                                                        |
281 |                                                                       |
282 |                                                                       |
283 |                                                                       |
284 |                                                                       |
285 |                                                                       |
286 |                                                                       |
287 |                                                                       |
288 |                                                                       |
289 |                                                                       |
290 |                                                                       |
291 +======================================================================*/
292 
293 BEGIN
294 refresh;
295 
296 END xla_environment_pkg;