[Home] [Help]
PACKAGE BODY: APPS.XLA_AAD_INSTALL_PVT
Source
1 PACKAGE BODY xla_aad_install_pvt AS
2 /* $Header: xlainaad.pkb 120.7.12020000.2 2013/01/23 06:45:29 vgopiset ship $ */
3
4 --=============================================================================
5 -- **************** declaraions ********************
6 --=============================================================================
7 -------------------------------------------------------------------------------
8 -- declaring global types
9 -------------------------------------------------------------------------------
10 -------------------------------------------------------------------------------
11 -- declaring global constants
12 -------------------------------------------------------------------------------
13 C_FILE_NAME CONSTANT VARCHAR2(30):='xlaalupl.pkb';
14 C_CHAR CONSTANT VARCHAR2(1) :='
15 ';
16
17 --=============================================================================
18 -- *********** Local Trace Routine **********
19 --=============================================================================
20 C_LEVEL_STATEMENT CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
21 C_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
22 C_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
23 C_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
24 C_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
25 C_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
26
27 C_LEVEL_LOG_DISABLED CONSTANT NUMBER := 99;
28 C_DEFAULT_MODULE CONSTANT VARCHAR2(240) := 'xla.plsql.xla_aad_install_pvt';
29
30 g_log_level NUMBER;
31 g_log_enabled BOOLEAN;
32
33 PROCEDURE trace
34 (p_msg IN VARCHAR2
35 ,p_module IN VARCHAR2
36 ,p_level IN NUMBER) IS
37 l_time varchar2(300);
38 BEGIN
39 IF (p_msg IS NULL AND p_level >= g_log_level) THEN
40 fnd_log.message(p_level, p_module);
41 ELSIF p_level >= g_log_level THEN
42 fnd_log.string(p_level, p_module, p_msg);
43 END IF;
44 EXCEPTION
45 WHEN xla_exceptions_pkg.application_exception THEN
46 RAISE;
47
48 WHEN OTHERS THEN
49 xla_exceptions_pkg.raise_message
50 (p_location => 'xla_aad_install_pvt.trace');
51 END trace;
52
53
54 --=============================================================================
55 -- *********** private procedures and functions **********
56 --=============================================================================
57 --=============================================================================
58 --
59 -- Name : XLA_ZD_PREPARE
60 -- Description: PREPARE API call for Non-FND Loaders
61 --
62 --=============================================================================
63 PROCEDURE XLA_ZD_PREPARE
64 IS
65 l_log_module VARCHAR2(240);
66 BEGIN
67
68 IF g_log_enabled THEN
69 l_log_module := C_DEFAULT_MODULE||'.XLA_ZD_PREPARE';
70 END IF;
71
72 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
73 trace(p_msg => 'BEGIN of procedure XLA_ZD_PREPARE',
74 p_module => l_log_module,
75 p_level => C_LEVEL_PROCEDURE);
76 END IF;
77
78 AD_ZD_SEED.PREPARE('XLA_DESCRIPTIONS_B');
79 AD_ZD_SEED.PREPARE('XLA_DESCRIPTIONS_TL');
80 AD_ZD_SEED.PREPARE('XLA_DESC_PRIORITIES');
81 AD_ZD_SEED.PREPARE('XLA_DESCRIPT_DETAILS_B');
82 AD_ZD_SEED.PREPARE('XLA_DESCRIPT_DETAILS_TL');
83 AD_ZD_SEED.PREPARE('XLA_CONDITIONS');
84 AD_ZD_SEED.PREPARE('XLA_MAPPING_SETS_B');
85 AD_ZD_SEED.PREPARE('XLA_MAPPING_SETS_TL');
86 AD_ZD_SEED.PREPARE('XLA_MAPPING_SET_VALUES');
87 AD_ZD_SEED.PREPARE('XLA_ANALYTICAL_HDRS_B');
88 AD_ZD_SEED.PREPARE('XLA_ANALYTICAL_HDRS_TL');
89 AD_ZD_SEED.PREPARE('XLA_ANALYTICAL_DTLS_B');
90 AD_ZD_SEED.PREPARE('XLA_ANALYTICAL_DTLS_TL');
91 AD_ZD_SEED.PREPARE('XLA_ANALYTICAL_SOURCES');
92 AD_ZD_SEED.PREPARE('XLA_SEG_RULES_B');
93 AD_ZD_SEED.PREPARE('XLA_SEG_RULES_TL');
94 AD_ZD_SEED.PREPARE('XLA_SEG_RULE_DETAILS');
95 AD_ZD_SEED.PREPARE('XLA_ACCT_LINE_TYPES_B');
96 AD_ZD_SEED.PREPARE('XLA_ACCT_LINE_TYPES_TL');
97 AD_ZD_SEED.PREPARE('XLA_JLT_ACCT_ATTRS');
98 AD_ZD_SEED.PREPARE('XLA_LINE_DEFINITIONS_B');
99 AD_ZD_SEED.PREPARE('XLA_LINE_DEFINITIONS_TL');
100 AD_ZD_SEED.PREPARE('XLA_LINE_DEFN_JLT_ASSGNS');
101 AD_ZD_SEED.PREPARE('XLA_LINE_DEFN_ADR_ASSGNS');
102 AD_ZD_SEED.PREPARE('XLA_LINE_DEFN_AC_ASSGNS');
103 AD_ZD_SEED.PREPARE('XLA_MPA_HEADER_AC_ASSGNS');
104 AD_ZD_SEED.PREPARE('XLA_MPA_JLT_ASSGNS');
105 AD_ZD_SEED.PREPARE('XLA_MPA_JLT_AC_ASSGNS');
106 AD_ZD_SEED.PREPARE('XLA_MPA_JLT_ADR_ASSGNS');
107 AD_ZD_SEED.PREPARE('XLA_PRODUCT_RULES_B');
108 AD_ZD_SEED.PREPARE('XLA_PRODUCT_RULES_TL');
109 AD_ZD_SEED.PREPARE('XLA_PROD_ACCT_HEADERS');
110 AD_ZD_SEED.PREPARE('XLA_AAD_HDR_ACCT_ATTRS');
111 AD_ZD_SEED.PREPARE('XLA_AAD_LINE_DEFN_ASSGNS');
112 AD_ZD_SEED.PREPARE('XLA_AAD_HEADER_AC_ASSGNS');
113 AD_ZD_SEED.PREPARE('XLA_STAGE_ACCTG_METHODS');
114 AD_ZD_SEED.PREPARE('XLA_ACCTG_METHOD_RULES');
115 AD_ZD_SEED.PREPARE('XLA_STAGING_COMPONENTS_H');
116 AD_ZD_SEED.PREPARE('XLA_ACCTG_METHODS_TL');
117 AD_ZD_SEED.PREPARE('XLA_ACCTG_METHODS_B');
118
119
120 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
121 trace(p_msg => 'END of procedure XLA_ZD_PREPARE',
122 p_module => l_log_module,
123 p_level => C_LEVEL_PROCEDURE);
124 END IF;
125 END XLA_ZD_PREPARE;
126
127 --=============================================================================
128 --
129 --
130 --
131 --
132 --
133 -- *********** public procedures and functions **********
134 --
135 --
136 --
137 --
138 --
139 --=============================================================================
140
141
142 --=============================================================================
143 --
144 -- Name:
145 -- Description:
146 --
147 --=============================================================================
148 PROCEDURE pre_import
149 (p_application_id IN INTEGER
150 ,p_amb_context_code IN VARCHAR2
151 ,x_return_status IN OUT NOCOPY VARCHAR2
152 )IS
153 l_staging_context_code VARCHAR2(30);
154 l_log_module VARCHAR2(240);
155 BEGIN
156 IF g_log_enabled THEN
157 l_log_module := C_DEFAULT_MODULE||'.pre_import';
158 END IF;
159
160 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
161 trace(p_msg => 'BEGIN of procedure pre_import',
162 p_module => l_log_module,
163 p_level => C_LEVEL_PROCEDURE);
164 END IF;
165
166 xla_aad_loader_util_pvt.reset_errors
167 (p_application_id => p_application_id
168 ,p_amb_context_code => p_amb_context_code
169 ,p_request_code => 'IMPORT');
170
171 SELECT p_amb_context_code||'_INSTALL_'||application_short_name
172 INTO l_staging_context_code
173 FROM fnd_application
174 WHERE application_id = p_application_id;
175
176 XLA_ZD_PREPARE ; --added for bug 14812442
177
178 x_return_status := xla_aad_import_pvt.pre_import
179 (p_application_id => p_application_id
180 ,p_amb_context_code => p_amb_context_code
181 ,p_staging_context_code => l_staging_context_code);
182
183 IF (x_return_status = 'SUCCESS') THEN
184 DELETE FROM xla_aad_loader_defns_t
185 WHERE staging_amb_context_code = l_staging_context_code;
186 ELSE
187 ROLLBACK;
188 xla_aad_loader_util_pvt.insert_errors
189 (p_application_id => p_application_id
190 ,p_amb_context_code => p_amb_context_code
191 ,p_request_code => 'IMPORT');
192 END IF;
193
194 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
195 trace(p_msg => 'END of procedure pre_import: x_return_status = '||x_return_status,
196 p_module => l_log_module,
197 p_level => C_LEVEL_PROCEDURE);
198 END IF;
199 EXCEPTION
200 WHEN OTHERS THEN
201 ROLLBACK;
202 x_return_status := 'ERROR';
203 xla_aad_loader_util_pvt.insert_errors
204 (p_application_id => p_application_id
205 ,p_amb_context_code => p_amb_context_code
206 ,p_request_code => 'IMPORT');
207 END pre_import;
208
209 --=============================================================================
210 --
211 -- Name:
212 -- Description:
213 -- Modified: 5692314 ssawhney remove code logic for OVERWRITE feature.
214 --=============================================================================
215 PROCEDURE post_import
216 (p_application_id IN INTEGER
217 ,p_amb_context_code IN VARCHAR2
218 ,p_import_mode IN VARCHAR2
219 ,p_force_overwrite IN VARCHAR2
220 ,x_return_status IN OUT NOCOPY VARCHAR2
221 )IS
222 l_staging_context_code VARCHAR2(30);
223 l_return_status VARCHAR2(30);
224 l_compilation_status_code VARCHAR2(1);
225 l_validation_status_code VARCHAR2(1);
226 l_hash_id INTEGER;
227 l_log_module VARCHAR2(240);
228 l_exception VARCHAR2(240);
229 l_excp_code VARCHAR2(100);
230
231 BEGIN
232 IF g_log_enabled THEN
233 l_log_module := C_DEFAULT_MODULE||'.post_import';
234 END IF;
235
236 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
237 trace(p_msg => 'BEGIN of procedure post_import',
238 p_module => l_log_module,
239 p_level => C_LEVEL_PROCEDURE);
240 END IF;
241
242
243 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
244 trace(p_msg => 'Calling procedure reset_errors from '||C_DEFAULT_MODULE||'.post_import',
245 p_module => l_log_module,
246 p_level => C_LEVEL_PROCEDURE);
247 END IF;
248
249 xla_aad_loader_util_pvt.reset_errors
250 (p_application_id => p_application_id
251 ,p_amb_context_code => p_amb_context_code
252 ,p_request_code => 'IMPORT');
253
254 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
255 trace(p_msg => 'Returned from reset_errors to '||C_DEFAULT_MODULE||'.post_import',
256 p_module => l_log_module,
257 p_level => C_LEVEL_PROCEDURE);
258 END IF;
259
260 SELECT p_amb_context_code||'_INSTALL_'||application_short_name
261 INTO l_staging_context_code
262 FROM fnd_application
263 WHERE application_id = p_application_id;
264
265 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
266 trace(p_msg => 'Calling procedure post_upload from '||C_DEFAULT_MODULE||'.post_import',
267 p_module => l_log_module,
268 p_level => C_LEVEL_PROCEDURE);
269 END IF;
270
271 x_return_status := xla_aad_upload_pvt.post_upload
272 (p_application_id => p_application_id
273 ,p_amb_context_code => p_amb_context_code
274 ,p_staging_context_code => l_staging_context_code);
275
276 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
277 trace(p_msg => 'Returned from post_upload to '||C_DEFAULT_MODULE||'.post_import',
278 p_module => l_log_module,
279 p_level => C_LEVEL_PROCEDURE);
280 END IF;
281
282
283 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
284 trace(p_msg => 'Calling procedure post_import from '||C_DEFAULT_MODULE||'.post_import',
285 p_module => l_log_module,
286 p_level => C_LEVEL_PROCEDURE);
287 END IF;
288
289 IF (x_return_status = 'SUCCESS') THEN
290 xla_aad_import_pvt.post_import
291 (p_application_id => p_application_id
292 ,p_amb_context_code => p_amb_context_code
293 ,p_staging_context_code => l_staging_context_code);
294
295 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
296 trace(p_msg => 'Returned from post_import to '||C_DEFAULT_MODULE||'.post_import',
297 p_module => l_log_module,
298 p_level => C_LEVEL_PROCEDURE);
299 END IF;
300
301
302 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
303 trace(p_msg => 'Before calling xla_aad_merge from'||C_DEFAULT_MODULE||'.post_import',
304 p_module => l_log_module,
305 p_level => C_LEVEL_PROCEDURE);
306 END IF;
307
308 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
309 trace(p_msg => 'p_import_mode for merge is : '||p_import_mode,
310 p_module => l_log_module,
311 p_level => C_LEVEL_PROCEDURE);
312 END IF;
313
314
315 IF (p_import_mode = 'ANALYSIS') THEN
316 xla_aad_merge_analysis_pvt.analysis
317 (p_api_version => 1.0
318 ,x_return_status => l_return_status
319 ,p_application_id => p_application_id
320 ,p_amb_context_code => p_amb_context_code
321 ,p_staging_context_code => l_staging_context_code
322 ,p_batch_name => NULL
323 ,x_analysis_status => x_return_status);
324
325 ELSE -- commented for bug 5692314 (p_import_mode = 'MERGE') THEN
326 xla_aad_merge_pvt.merge
327 (p_api_version => 1.0
328 ,x_return_status => l_return_status
329 ,p_application_id => p_application_id
330 ,p_amb_context_code => p_amb_context_code
331 ,p_staging_context_code => l_staging_context_code
332 ,p_analyzed_flag => 'N'
333 ,p_compile_flag => 'N'
334 ,x_merge_status => x_return_status);
335
336 /* -- commented for bug 5692314
337 ELSE
338 xla_aad_overwrite_pvt.overwrite
339 (p_api_version => 1.0
340 ,x_return_status => l_return_status
341 ,p_application_id => p_application_id
342 ,p_amb_context_code => p_amb_context_code
343 ,p_staging_context_code => l_staging_context_code
344 ,p_force_flag => p_force_overwrite
345 ,p_compile_flag => 'N'
346 ,x_overwrite_status => x_return_status);
347 */
348 END IF;
349
350 END IF;
351
352
353 IF (x_return_status = 'SUCCESS') THEN
354 DELETE FROM xla_aad_loader_defns_t
355 WHERE staging_amb_context_code = l_staging_context_code;
356
357 IF (p_import_mode IN ('MERGE', 'OVERWRITE')) THEN
358 /*UPDATE xla_product_rules_b
359 SET compile_status_code = 'R'
360 WHERE application_id = p_application_id
361 AND amb_context_code = p_amb_context_code;*/
362
363
364 UPDATE xla_product_rules_b prd
365 SET compile_status_code = 'R'
366 WHERE application_id = p_application_id
367 AND amb_context_code = p_amb_context_code
368 AND EXISTS (select 1
369 from xla_aads_gt a,
370 XLA_PAD_INQ_LINES_FVL b
371 where (a.product_rule_code is null or a.product_rule_code = b.product_rule_code)
372 and (a.event_class_code is null or a.event_class_code = b.event_class_code)
373 and (a.event_type_code is null or a.event_type_code = b.event_type_code)
374 and (a.line_definition_code is null or a.line_definition_code = b.line_definition_code)
375 and (a.accounting_line_code is null or a.accounting_line_code = b.accounting_line_code)
376 and (a.accounting_class_code is null or a.accounting_class_code = b.accounting_class_code)
377 and (a.segment_rule_code is null or a.segment_rule_code = b.segment_rule_code)
378 and (a.description_code is null or a.description_code = b.description_code)
379 and (a.analytical_criterion_code is null or a.analytical_criterion_code = b.analytical_criterion_code)
380 and prd.product_rule_code = b.product_rule_code
381 )
382 AND EXISTS
383 ( SELECT 1
384 FROM xla_acctg_method_rules amr,
385 gl_ledgers gl
386 WHERE prd.product_rule_code = amr.product_rule_code
387 AND prd.product_rule_type_code = amr.product_rule_type_code
388 AND prd.application_id = amr.application_id
389 AND prd.amb_context_code = amr.amb_context_code
390 AND amr.accounting_method_code = gl.sla_accounting_method_code
391 AND amr.application_id = p_application_id
392 AND amr.end_date_active IS NULL OR amr.end_date_active >= sysdate
393 );
394
395 /********************************************************************************/
396 /* For AADs that are not attached to SLAM, we are stamping them to N - */
397 /* NOT VALIDATED.This is because, if in FUTURE, customer intends to attach */
398 /* a different AAD onto SLAM and LEDGER, that AAD would get used in its */
399 /* current setup(where its validation status is Y), although higher versions */
400 /* with setup changes would have been shipped in ldts by product teams */
401 /* In that case, we would not have validated this AAD as it was not */
402 /* attached to SLAM/LEDGER at that time.So higher versions of ldt still pulled */
403 /* in the latest code but has not validated the AAD with latest setup. */
404 /* So, now if customer uses that AAD, he would be using it with old setup */
405 /* and latest code change/setup change is not pulled into accounting and */
406 /* accounting would be incorrect.Hence we are setting it to N, so that */
407 /* re-validating AAD would pull up latest setup in to the AAD and accounting */
408 /* would be as expected. */
409 /********************************************************************************/
410
411
412 UPDATE xla_product_rules_b prd
413 SET compile_status_code = 'N'
414 WHERE application_id = p_application_id
415 AND amb_context_code = p_amb_context_code
416 AND EXISTS
417 ( select 1
418 from xla_aads_gt a,
419 XLA_PAD_INQ_LINES_FVL b
420 where (a.product_rule_code is null or a.product_rule_code = b.product_rule_code)
421 and (a.event_class_code is null or a.event_class_code = b.event_class_code)
422 and (a.event_type_code is null or a.event_type_code = b.event_type_code)
423 and (a.line_definition_code is null or a.line_definition_code = b.line_definition_code)
424 and (a.accounting_line_code is null or a.accounting_line_code = b.accounting_line_code)
425 and (a.accounting_class_code is null or a.accounting_class_code = b.accounting_class_code)
426 and (a.segment_rule_code is null or a.segment_rule_code = b.segment_rule_code)
427 and (a.description_code is null or a.description_code = b.description_code)
428 and (a.analytical_criterion_code is null or a.analytical_criterion_code = b.analytical_criterion_code)
429 and prd.product_rule_code = b.product_rule_code
430 )
431 AND NOT EXISTS
432 ( SELECT 1
433 FROM xla_acctg_method_rules amr,
434 gl_ledgers gl
435 WHERE prd.product_rule_code = amr.product_rule_code
436 AND prd.product_rule_type_code = amr.product_rule_type_code
437 AND prd.application_id = amr.application_id
438 AND prd.amb_context_code = amr.amb_context_code
439 AND amr.accounting_method_code = gl.sla_accounting_method_code
440 AND amr.application_id = p_application_id
441 AND amr.end_date_active IS NULL OR amr.end_date_active >= sysdate
442 );
443
444 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
445 trace(p_msg => 'Number of Rows updated to R in product_rules_b is :'||SQL%ROWCOUNT,
446 p_module => l_log_module,
447 p_level => C_LEVEL_PROCEDURE);
448 END IF;
449
450 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
451 trace(p_msg => 'Calling Validate and Compile AAD procedure',
452 p_module => l_log_module,
453 p_level => C_LEVEL_PROCEDURE);
454 END IF;
455
456
457 FOR l IN (SELECT * FROM xla_product_rules_b
458 WHERE application_id = p_application_id
459 AND amb_context_code = p_amb_context_code
460 AND compile_status_code = 'R') LOOP -- Added extra condition on compile status code
461 xla_amb_aad_pkg.validate_and_compile_aad
462 (p_application_id => p_application_id
463 ,p_amb_context_code => p_amb_context_code
464 ,p_product_rule_type_code => l.product_rule_type_code
465 ,p_product_rule_code => l.product_rule_code
466 ,x_validation_status_code => l_validation_status_code
467 ,x_compilation_status_code => l_compilation_status_code
468 ,x_hash_id => l_hash_id);
469 END LOOP;
470
471
472 END IF;
473
474
475 ELSE
476 xla_aad_loader_util_pvt.insert_errors
477 (p_application_id => p_application_id
478 ,p_amb_context_code => p_amb_context_code
479 ,p_request_code => 'IMPORT');
480 END IF;
481
482
483 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
484 trace(p_msg => 'END of procedure post_import: x_return_status = '||x_return_status,
485 p_module => l_log_module,
486 p_level => C_LEVEL_PROCEDURE);
487 END IF;
488 EXCEPTION
489 WHEN OTHERS THEN
490 ROLLBACK;
491 x_return_status := 'ERROR';
492
493 l_exception := substr(sqlerrm,1,240);
494 l_excp_code := sqlcode;
495
496 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
497 trace(p_msg => 'In exception of xla_aad_install_pvt.post_import',
498 p_module => l_log_module,
499 p_level => C_LEVEL_PROCEDURE);
500 END IF;
501
502 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
503 trace(p_msg => 'Error in xla_aad_install_pvt.post_import is : '||l_excp_code||' - '||l_exception,
504 p_module => l_log_module,
505 p_level => C_LEVEL_PROCEDURE);
506 END IF;
507
508 xla_aad_loader_util_pvt.insert_errors
509 (p_application_id => p_application_id
510 ,p_amb_context_code => p_amb_context_code
511 ,p_request_code => 'IMPORT');
512 END post_import;
513
514 --=============================================================================
515 --
516 -- Name:
517 -- Description:
518 --
519 --=============================================================================
520 PROCEDURE pre_export
521 (p_application_id IN INTEGER
522 ,p_amb_context_code IN VARCHAR2
523 ,p_versioning_mode IN VARCHAR2
524 ,p_user_version IN VARCHAR2
525 ,p_version_comment IN VARCHAR2
526 ,x_return_status IN OUT NOCOPY VARCHAR2
527 )IS
528 l_log_module VARCHAR2(240);
529 BEGIN
530 IF g_log_enabled THEN
531 l_log_module := C_DEFAULT_MODULE||'.pre_export';
532 END IF;
533
534 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
535 trace(p_msg => 'BEGIN of procedure pre_export',
536 p_module => l_log_module,
537 p_level => C_LEVEL_PROCEDURE);
538 END IF;
539
540 xla_aad_loader_util_pvt.reset_errors
541 (p_application_id => p_application_id
542 ,p_amb_context_code => p_amb_context_code
543 ,p_request_code => 'EXPORT');
544
545 x_return_status := xla_aad_export_pvt.pre_export
546 (p_application_id => p_application_id
547 ,p_amb_context_code => p_amb_context_code
548 ,p_versioning_mode => CASE p_versioning_mode
549 WHEN 'N' THEN 'STANDARD'
550 WHEN 'Y' THEN 'LEAPFROG'
551 ELSE p_versioning_mode
552 END
553 ,p_user_version => CASE WHEN p_user_version = 'NULL'
554 THEN NULL
555 ELSE p_user_version END
556 ,p_version_comment => CASE WHEN p_version_comment = 'NULL'
557 THEN NULL
558 ELSE p_version_comment END
559 ,p_owner_type => 'C');
560
561 IF (x_return_status <> 'SUCCESS') THEN
562 ROLLBACK;
563 xla_aad_loader_util_pvt.insert_errors
564 (p_application_id => p_application_id
565 ,p_amb_context_code => p_amb_context_code
566 ,p_request_code => 'EXPORT');
567 END IF;
568
569 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
570 trace(p_msg => 'END of procedure pre_export: x_return_status = '||x_return_status,
571 p_module => l_log_module,
572 p_level => C_LEVEL_PROCEDURE);
573 END IF;
574 EXCEPTION
575 WHEN OTHERS THEN
576 ROLLBACK;
577 x_return_status := 'ERROR';
578 xla_aad_loader_util_pvt.insert_errors
579 (p_application_id => p_application_id
580 ,p_amb_context_code => p_amb_context_code
581 ,p_request_code => 'EXPORT');
582 END pre_export;
583
584 --=============================================================================
585 --
586 -- Following code is executed when the package body is referenced for the first
587 -- time
588 --
589 --=============================================================================
590 BEGIN
591 g_log_level := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
592 g_log_enabled := fnd_log.test
593 (log_level => g_log_level
594 ,module => C_DEFAULT_MODULE);
595
596 IF NOT g_log_enabled THEN
597 g_log_level := C_LEVEL_LOG_DISABLED;
598 END IF;
599
600 END xla_aad_install_pvt;