[Home] [Help]
PACKAGE BODY: APPS.XLA_RPT_UTIL_QRY_PKG
Source
1 PACKAGE BODY xla_rpt_util_qry_pkg AS
2 -- $Header: xlarput2.pkb 120.3 2011/04/19 00:40:49 vdamerla noship $
3 /*===========================================================================+
4 | Copyright (c) 2003 Oracle Corporation BelmFont, California, USA |
5 | ALL rights reserved. |
6 +============================================================================+
7 | FILENAME |
8 | xlarput2.pkb |
9 | |
10 | PACKAGE NAME |
11 | xla_rpt_util_qry_pkg |
12 | |
13 | DESCRIPTION |
14 | Package body. This calls the various Application/Report specific |
15 | hooks to get their Custom Query for SLA wrapper Reports. |
16 | HISTORY |
17 | 08/13/2009 nksurana Created |
18 | |
19 +===========================================================================*/
20 --
21 --
22
23 --=============================================================================
24 -- *********** Local Trace Routine **********
25 --=============================================================================
26 C_LEVEL_STATEMENT CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
27 C_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
28 C_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
29 C_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
30 C_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
31 C_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
32
33 C_LEVEL_LOG_DISABLED CONSTANT NUMBER := 99;
34 C_DEFAULT_MODULE CONSTANT VARCHAR2(240):= 'xla.plsql.xla_rpt_util_qry_pkg';
35
36 g_log_level NUMBER;
37 g_log_enabled BOOLEAN;
38
39 PROCEDURE trace
40 (p_msg IN VARCHAR2
41 ,p_level IN NUMBER
42 ,p_module IN VARCHAR2) IS
43 BEGIN
44 IF (p_msg IS NULL AND p_level >= g_log_level) THEN
45 fnd_log.message(p_level, NVL(p_module,C_DEFAULT_MODULE));
46 ELSIF p_level >= g_log_level THEN
47 fnd_log.string(p_level, NVL(p_module,C_DEFAULT_MODULE), p_msg);
48 END IF;
49
50 EXCEPTION
51 WHEN xla_exceptions_pkg.application_exception THEN
52 RAISE;
53 WHEN OTHERS THEN
54 xla_exceptions_pkg.raise_message
55 (p_location => 'xla_rpt_util_qry_pkg.trace');
56 END trace;
57
58 --=============================================================================
59 -- *********** Custom Query Routine **********
60 --=============================================================================
61 PROCEDURE get_custom_query(p_application_id IN NUMBER,
62 p_custom_query_flag IN VARCHAR2,
63 p_custom_header_query OUT NOCOPY VARCHAR2,
64 p_custom_line_query OUT NOCOPY VARCHAR2) IS
65
66 l_log_module VARCHAR2(240);
67 l_component_name VARCHAR2(30);
68 l_custom_header_query VARCHAR2(32000);
69 l_custom_line_query VARCHAR2(32000);
70
71 BEGIN
72
73 IF g_log_enabled THEN
74 l_log_module := C_DEFAULT_MODULE||'.get_custom_query';
75 END IF;
76 --
77 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
78 trace
79 (p_msg => 'BEGIN of get_custom_query'
80 ,p_level => C_LEVEL_PROCEDURE
81 ,p_module => l_log_module);
82 END IF;
83
84 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
85 trace
86 (p_msg => 'Concurrent Request Id = '||FND_GLOBAL.CONC_REQUEST_ID
87 ,p_level => C_LEVEL_STATEMENT
88 ,p_module=> l_log_module );
89 END IF;
90
91 BEGIN
92
93 select fcp.concurrent_program_name
94 into l_component_name
95 from fnd_concurrent_requests fcr,fnd_concurrent_programs_vl fcp
96 where fcr.request_id = FND_GLOBAL.CONC_REQUEST_ID
97 and fcr.concurrent_program_id = fcp.concurrent_program_id;
98
99 EXCEPTION
100 when others then
101 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
102 trace
103 (p_msg => 'Could not find the Component Name for Request Id : '||FND_GLOBAL.CONC_REQUEST_ID
104 ,p_level => C_LEVEL_STATEMENT
105 ,p_module=> l_log_module );
106 END IF;
107 END;
108
109 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
110 trace
111 (p_msg => 'p_component_name = '||l_component_name
112 ,p_level => C_LEVEL_STATEMENT
113 ,p_module=> l_log_module );
114
115 trace
116 (p_msg => 'p_custom_query_flag = '||p_custom_query_flag
117 ,p_level => C_LEVEL_STATEMENT
118 ,p_module=> l_log_module );
119
120 END IF;
121
122 case
123 when l_component_name like 'AP%' then
124 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
125 trace
126 (p_msg => 'Calling Payables hook'
127 ,p_level => C_LEVEL_STATEMENT
128 ,p_module=> l_log_module );
129 END IF;
130
131 null;
132 when l_component_name like 'AR%' then
133 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
134 trace
135 (p_msg => 'Calling Receivables hook'
136 ,p_level => C_LEVEL_STATEMENT
137 ,p_module=> l_log_module );
138 END IF;
139
140 AR_XLA_REPORTS_PKG.JE_REPORT_HOOK
141 ( p_application_id => p_application_id
142 ,p_component_name => l_component_name
143 ,p_custom_query_flag => p_custom_query_flag
144 ,p_custom_header_query => l_custom_header_query
145 ,p_custom_line_query => l_custom_line_query) ;
146 when l_component_name like 'CLA%' then
147 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
148 trace
149 (p_msg => 'Calling APAC Consulting Localizations hook'
150 ,p_level => C_LEVEL_STATEMENT
151 ,p_module=> l_log_module );
152 END IF;
153
154 null;
155 when l_component_name like 'CLE%' then
156 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
157 trace
158 (p_msg => 'Calling EMEA Consulting Localizations hook'
159 ,p_level => C_LEVEL_STATEMENT
160 ,p_module=> l_log_module );
161 END IF;
162
163 null;
164 when l_component_name like 'CST%' then
165 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
166 trace
167 (p_msg => 'Calling Cost Management hook'
168 ,p_level => C_LEVEL_STATEMENT
169 ,p_module=> l_log_module );
170 END IF;
171
172 null;
173 when l_component_name like 'JG%' then
174 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
175 trace
176 (p_msg => 'Calling Regional Localizations hook'
177 ,p_level => C_LEVEL_STATEMENT
178 ,p_module=> l_log_module );
179 END IF;
180
181 null;
182 when l_component_name like 'XLA%' then
183 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
184 trace
185 (p_msg => 'Calling Subledger Accounting hook'
186 ,p_level => C_LEVEL_STATEMENT
187 ,p_module=> l_log_module );
188 END IF;
189
190 null;
191 else null;
192 end case;
193
194 p_custom_header_query := l_custom_header_query;
195 p_custom_line_query := l_custom_line_query;
196
197 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
198 trace
199 (p_msg => 'END of get_custom_query'
200 ,p_level => C_LEVEL_PROCEDURE
201 ,p_module => l_log_module);
202 END IF;
203
204 EXCEPTION
205 WHEN OTHERS THEN
206 fnd_file.put_line(fnd_file.LOG,'The hook for Component : '
207 ||l_component_name
208 ||' is erroneous.'
209 ||'Continuing without any custom query.');
210
211 END get_custom_query;
212
213
214 BEGIN
215
216 g_log_level := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
217 g_log_enabled := fnd_log.test
218 (log_level => g_log_level
219 ,MODULE => C_DEFAULT_MODULE);
220
221 IF NOT g_log_enabled THEN
222 g_log_level := C_LEVEL_LOG_DISABLED;
223 END IF;
224
225 END xla_rpt_util_qry_pkg;