[Home] [Help]
PACKAGE: APPS.XLA_CMP_EXTRACT_PKG
Source
1 PACKAGE xla_cmp_extract_pkg AUTHID CURRENT_USER AS
2 /* $Header: xlacpext.pkh 120.19 2006/08/25 20:46:56 weshen ship $ */
3 /*===========================================================================+
4 | Copyright (c) 2001-2002 Oracle Corporation |
5 | Redwood Shores, CA, USA |
6 | All rights reserved. |
7 +============================================================================+
8 | PACKAGE NAME |
9 | xla_cmp_extract_pkg |
10 | |
11 | DESCRIPTION |
12 | This is a XLA private package, which contains all the logic required |
13 | to generate extract from AMB specifcations |
14 | |
15 | |
16 | HISTORY |
17 | 25-JUN-2002 K.Boussema Created |
18 | 19-MAR-2003 K.Boussema Added amb_context_code |
19 | 05-MAI-2003 K.Boussema Modified to retrieve data base on ledger_id |
20 | 13-MAI-2003 K.Boussema Modified the Extract according to bug 2857548|
21 | 17-JUL-2003 K.Boussema Reviewd the code |
22 | 26-AUG-2003 K.Boussema Reviewd the generation of the extract to |
23 | handle the use of line_number as source |
24 | 09-OCT-2003 K.Boussema Changed to accept AADs differents Extract |
25 | specifcations |
26 | 22-DEC-2003 K.Boussema Replaced Extract Validations by a call to |
27 | Extract Integrity Checker routine |
28 | 12-MAR-2004 K.Boussema Changed to incorporate the select of lookups |
29 | from the extract objects |
30 | 20-Sep-2004 S.Singhania Made ffdg changes for the bulk performance: |
31 | - Added specs for GenerateHdrStructure, |
32 | GenerateCacheHdrSources |
33 | - Modified specs for GenerateHdrVariables, |
34 | GenerateHeaderCursor, GenerateLineCursor |
35 | 06-Oct-2004 K.Boussema Made changes for the Accounting Event Extract|
36 | Diagnostics feature. |
37 | 06-Mar-2005 W. Shen Ledger Currency Project. Remove ALC object |
38 +===========================================================================*/
39 --
40 --
41 --+==========================================================================+
42 --| |
43 --| PUBLIC FUNCTION |
44 --| |
45 --| Call Extract Integrity Checker to validate the Extract Objects and |
46 --| sources specifications |
47 --| |
48 --| |
49 --+==========================================================================+
50 --
51 --
52 FUNCTION CallExtractIntegrityChecker (
53 p_application_id IN NUMBER
54 , p_entity_code IN VARCHAR2
55 , p_event_class_code IN VARCHAR2
56 , p_amb_context_code IN VARCHAR2
57 , p_product_rule_type_code IN VARCHAR2
58 , p_product_rule_code IN VARCHAR2
59 --
60 , p_array_evt_source_index IN xla_cmp_source_pkg.t_array_ByInt
61 --
62 , p_array_application_id IN xla_cmp_source_pkg.t_array_Num
63 , p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
64 , p_array_source_type_code IN xla_cmp_source_pkg.t_array_VL1
65 , p_array_datatype_code IN xla_cmp_source_pkg.t_array_VL1
66 , p_array_translated_flag IN xla_cmp_source_pkg.t_array_VL1
67 --
68 , p_array_evt_source_Level OUT NOCOPY xla_cmp_source_pkg.t_array_VL1
69 --
70 , p_array_object_name OUT NOCOPY xla_cmp_source_pkg.t_array_VL30
71 , p_array_parent_object_index OUT NOCOPY xla_cmp_source_pkg.t_array_ByInt
72 , p_array_object_type OUT NOCOPY xla_cmp_source_pkg.t_array_VL30
73 , p_array_object_hash_id OUT NOCOPY xla_cmp_source_pkg.t_array_VL30
74 , p_array_populated_flag OUT NOCOPY xla_cmp_source_pkg.t_array_VL1
75 --
76 , p_array_ref_obj_flag OUT NOCOPY xla_cmp_source_pkg.t_array_VL1
77 , p_array_join_condition OUT NOCOPY xla_cmp_source_pkg.t_array_VL2000
78 --
79 , p_array_h_source_index OUT NOCOPY xla_cmp_source_pkg.t_array_ByInt
80 , p_array_h_table_index OUT NOCOPY xla_cmp_source_pkg.t_array_ByInt
81 , p_array_h_mls_source_index OUT NOCOPY xla_cmp_source_pkg.t_array_ByInt
82 , p_array_h_mls_table_index OUT NOCOPY xla_cmp_source_pkg.t_array_ByInt
83 , p_array_l_source_index OUT NOCOPY xla_cmp_source_pkg.t_array_ByInt
84 , p_array_l_table_index OUT NOCOPY xla_cmp_source_pkg.t_array_ByInt
85 , p_array_l_mls_source_index OUT NOCOPY xla_cmp_source_pkg.t_array_ByInt
86 , p_array_l_mls_table_index OUT NOCOPY xla_cmp_source_pkg.t_array_ByInt
87 )
88 RETURN BOOLEAN
89 ;
90 --
91 --+==========================================================================+
92 --| |
93 --| PRIVATE function |
94 --| |
95 --| Generate the declaration of the sturcture for the line variables |
96 --| |
97 --| |
98 --+==========================================================================+
99 --
100 FUNCTION GenerateLineStructure (
101 p_array_table_name IN xla_cmp_source_pkg.t_array_VL30
102 --
103 , p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
104 --
105 , p_array_l_source_index IN xla_cmp_source_pkg.t_array_ByInt
106 , p_array_l_table_index IN xla_cmp_source_pkg.t_array_ByInt
107 --
108 , p_array_l_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
109 , p_array_l_mls_table_index IN xla_cmp_source_pkg.t_array_ByInt
110 --
111 --
112 )
113 RETURN VARCHAR2
114 ;
115 --
116 --+==========================================================================+
117 --| |
118 --| PRIVATE function |
119 --| |
120 --| Generate the Declaration of header variables |
121 --| |
122 --+==========================================================================+
123 --
124 FUNCTION GenerateHdrVariables
125 (p_array_h_source_index IN xla_cmp_source_pkg.t_array_ByInt
126 ,p_array_h_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
127 ,p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
128 ,p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
129 ,p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num)
130 RETURN VARCHAR2;
131
132 --
133 --+==========================================================================+
134 --| |
135 --| PRIVATE function |
136 --| |
137 --| Generate Fetch on header cursor into header variables |
138 --| |
139 --+==========================================================================+
140 --
141 FUNCTION GenerateFetchHeaderCursor (
142 p_array_h_source_index IN xla_cmp_source_pkg.t_array_ByInt
143 , p_array_h_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
144 --
145 , p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
146 , p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
147 )
148 RETURN VARCHAR2
149 ;
150 --
151 --+==========================================================================+
152 --| |
153 --| PRIVATE function |
154 --| |
155 --| Generate the Declaration of line variables |
156 --| |
157 --+==========================================================================+
158 --
159 --
160 FUNCTION GenerateLineVariables(
161 p_array_l_source_index IN xla_cmp_source_pkg.t_array_ByInt
162 , p_array_l_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
163 --
164 , p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
165 , p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
166 , p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
167 )
168 RETURN VARCHAR2
169 ;
170 --
171 --+==========================================================================+
172 --| |
173 --| PRIVATE function |
174 --| |
175 --| Generate Fetch on Line cursor into header variables |
176 --| |
177 --+==========================================================================+
178 --
179 FUNCTION GenerateFetchLineCursor(
180 p_array_l_source_index IN xla_cmp_source_pkg.t_array_ByInt
181 , p_array_l_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
182 --
183 , p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
184 , p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
185 , p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
186 )
187 RETURN VARCHAR2
188 ;
189
190 --
191 --+==========================================================================+
192 --| |
193 --| PRIVATE function |
194 --| |
195 --| Generate the declaration of the header Cursor : The Extract of |
196 --| standard and MLS header sources from the Header Extract Object |
197 --| |
198 --| |
199 --+==========================================================================+
200 --
201 FUNCTION GenerateHeaderCursor (
202 --
203 p_array_table_name IN xla_cmp_source_pkg.t_array_VL30
204 , p_array_parent_table_index IN xla_cmp_source_pkg.t_array_ByInt
205 , p_array_table_hash IN xla_cmp_source_pkg.t_array_VL30
206 , p_array_populated_flag IN xla_cmp_source_pkg.t_array_VL1
207 --
208 , p_array_ref_obj_flag IN xla_cmp_source_pkg.t_array_VL1
209 , p_array_join_condition IN xla_cmp_source_pkg.t_array_VL2000
210 --
211 , p_array_h_source_index IN xla_cmp_source_pkg.t_array_ByInt
212 , p_array_h_table_index IN xla_cmp_source_pkg.t_array_ByInt
213 --
214 , p_array_h_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
215 , p_array_h_mls_table_index IN xla_cmp_source_pkg.t_array_ByInt
216 --
217 , p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
218 , p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
219 , p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
220 , p_procedure IN VARCHAR2)
221 RETURN VARCHAR2
222 ;
223 --
224 --+==========================================================================+
225 --| |
229 --| standard BC and MLS line sources from the Header Extract Object |
226 --| PRIVATE function |
227 --| |
228 --| Generate the declaration of the Line Cursor : The Extract of |
230 --| |
231 --| |
232 --+==========================================================================+
233 --
234 FUNCTION GenerateLineCursor (
235 p_application_id IN NUMBER
236 --
237 , p_array_table_name IN xla_cmp_source_pkg.t_array_VL30
238 , p_array_parent_table_index IN xla_cmp_source_pkg.t_array_ByInt
239 , p_array_table_hash IN xla_cmp_source_pkg.t_array_VL30
240 , p_array_populated_flag IN xla_cmp_source_pkg.t_array_VL1
241 --
242 , p_array_ref_obj_flag IN xla_cmp_source_pkg.t_array_VL1
243 , p_array_join_condition IN xla_cmp_source_pkg.t_array_VL2000
244 --
245 , p_array_l_source_index IN xla_cmp_source_pkg.t_array_ByInt
246 , p_array_l_table_index IN xla_cmp_source_pkg.t_array_ByInt
247 --
248 , p_array_l_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
249 , p_array_l_mls_table_index IN xla_cmp_source_pkg.t_array_ByInt
250 --
251 , p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
252 , p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
253 , p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
254 , p_procedure IN VARCHAR2)
255 RETURN VARCHAR2
256 ;
257 --
258 --+==========================================================================+
259 --| |
260 --| PRIVATE function |
261 --| |
262 --| |
263 --| |
264 --+==========================================================================+
265 FUNCTION GenerateHdrStructure
266 (p_array_table_name IN xla_cmp_source_pkg.t_array_VL30
267 ,p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
268 ,p_array_h_source_index IN xla_cmp_source_pkg.t_array_ByInt
269 ,p_array_h_table_index IN xla_cmp_source_pkg.t_array_ByInt
270 ,p_array_h_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
271 ,p_array_h_mls_table_index IN xla_cmp_source_pkg.t_array_ByInt)
272 RETURN VARCHAR2;
273 --
274 --
275 --+==========================================================================+
276 --| |
277 --| PRIVATE function |
278 --| |
279 --| |
280 --| |
281 --+==========================================================================+
282 FUNCTION GenerateCacheHdrSources
283 (p_array_h_source_index IN xla_cmp_source_pkg.t_array_ByInt
284 ,p_array_h_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
285 ,p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
286 ,p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
287 ,p_array_datatype_code IN OUT NOCOPY xla_cmp_source_pkg.t_array_VL1)
288 RETURN VARCHAR2;
289 --
290
291 --
292 --===========================================================================
293 --
294 --
295 --
296 --
297 --
298 --
299 --
300 --
301 --
302 --
303 -- Accounting Event Extract Diagnostics
304 --
305 --
306 --
307 --
308 --
309 --
310 --
311 --
312 --
313 --
314 --
315 --============================================================================
316 --
317 --
318 --+==========================================================================+
319 --| |
320 --| PUBLIC function |
321 --| |
322 --| Generate the INSERT SQL statement used by the Extract Source Values |
323 --| Dump to insert the header source values into xla_extract_sources |
324 --| |
325 --| |
326 --+==========================================================================+
327 --
328 FUNCTION GenerateInsertHdrSources (
329 --
330 p_array_table_name IN xla_cmp_source_pkg.t_array_VL30
331 , p_array_parent_table_index IN xla_cmp_source_pkg.t_array_ByInt
332 , p_array_table_hash IN xla_cmp_source_pkg.t_array_VL30
333 , p_array_table_type IN xla_cmp_source_pkg.t_array_VL30
334 , p_array_populated_flag IN xla_cmp_source_pkg.t_array_VL1
335 --
336 , p_array_ref_obj_flag IN xla_cmp_source_pkg.t_array_VL1
337 , p_array_join_condition IN xla_cmp_source_pkg.t_array_VL2000
338 --
342 , p_array_h_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
339 , p_array_h_source_index IN xla_cmp_source_pkg.t_array_ByInt
340 , p_array_h_table_index IN xla_cmp_source_pkg.t_array_ByInt
341 --
343 , p_array_h_mls_table_index IN xla_cmp_source_pkg.t_array_ByInt
344 --
345 , p_array_application_id IN xla_cmp_source_pkg.t_array_Num
346 , p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
347 , p_array_source_type_code IN xla_cmp_source_pkg.t_array_VL1
348 , p_array_flex_value_set_id IN xla_cmp_source_pkg.t_array_Num
349 , p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
350 , p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
351 --
352 , p_procedure IN VARCHAR2
353 )
354 RETURN CLOB
355 ;
356
357 --+==========================================================================+
358 --| |
359 --| PUBLIC function |
360 --| |
361 --| Generate the INSERT SQL statement used by the Extract Source Values |
362 --| Dump to insert the line source values into xla_extract_sources |
363 --| |
364 --| |
365 --+==========================================================================+
366 --
367 FUNCTION GenerateInsertLineSources (
368 --
369 p_array_table_name IN xla_cmp_source_pkg.t_array_VL30
370 , p_array_parent_table_index IN xla_cmp_source_pkg.t_array_ByInt
371 , p_array_table_hash IN xla_cmp_source_pkg.t_array_VL30
372 , p_array_table_type IN xla_cmp_source_pkg.t_array_VL30
373 , p_array_populated_flag IN xla_cmp_source_pkg.t_array_VL1
374 --
375 , p_array_ref_obj_flag IN xla_cmp_source_pkg.t_array_VL1
376 , p_array_join_condition IN xla_cmp_source_pkg.t_array_VL2000
377 --
378 , p_array_l_source_index IN xla_cmp_source_pkg.t_array_ByInt
379 , p_array_l_table_index IN xla_cmp_source_pkg.t_array_ByInt
380 --
381 , p_array_l_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
382 , p_array_l_mls_table_index IN xla_cmp_source_pkg.t_array_ByInt
383 --
384 , p_array_application_id IN xla_cmp_source_pkg.t_array_Num
385 , p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
386 , p_array_source_type_code IN xla_cmp_source_pkg.t_array_VL1
387 , p_array_flex_value_set_id IN xla_cmp_source_pkg.t_array_Num
388 , p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
389 , p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
390 --
391 ,p_procedure IN VARCHAR2
392 )
393 RETURN CLOB
394 ;
395
396
397 END xla_cmp_extract_pkg; -- end of package spec