[Home] [Help]
PACKAGE BODY: APPS.XLA_ACCOUNTING_ERR_PKG
Source
1 PACKAGE BODY xla_accounting_err_pkg AS
2 -- $Header: xlaaperr.pkb 120.20.12020000.2 2012/07/23 13:15:08 vgopiset ship $
3 /*===========================================================================+
4 | Copyright (c) 2001-2002 Oracle Corporation |
5 | Redwood Shores, CA, USA |
6 | All rights reserved. |
7 +============================================================================+
8 | PACKAGE NAME |
9 | xla_accounting_err_pkg |
10 | |
11 | DESCRIPTION |
12 | This is the body of the package that handles errors for accounting |
13 | entries generated by Accounting Program and Mnaual Enteries. |
14 | |
15 | HISTORY |
16 | 09/09/2002 S. Singhania Created |
17 | 11/30/2002 S. Singhania Added call to 'xla_accounting_pkg.set_ |
18 | error_count' |
19 | 12/12/2002 S. Singhania Added more calls to 'xla_utitlity_pkg. |
20 | trace' routine to help debug. |
21 | 01/03/2003 S. Singhania Minor changes due to change in column |
22 | name in xla_accounting_errors. |
23 | (ae_line_number => ae_line_num) |
24 | 05/21/2003 S. Singhania Added more trace messages in exception |
25 | handlers |
26 | Added local trace routine. |
27 | Fix for bug # 2970204 |
28 | Modified the specifications of |
29 | initialize() |
30 | 06/12/2003 S. Singhania Added trace messages to the exception |
31 | in STACK_ERRORS |
32 | 07/29/2003 S. Singhania Modified the specifications of |
33 | initialize() |
34 | Modification for bug # 3072738 |
35 | - Added the API GET_TOTAL_ERROR_COUNT|
36 | - Code modified to count # of errors |
37 | rather than failed events. |
38 | 08/04/2003 S. Singhania Added NVL to return value in |
39 | GET_TOTAL_ERROR_COUNT |
40 | 08/12/2003 S. Singhania Added trace to display message_name in |
41 | STACK_ERROR |
42 | 08/27/2003 S. Singhania Modified STACK_ERROR to insert message |
43 | rather than encoded message. |
44 | Bug # 3113574 |
45 | 09/09/2003 S. Singhania Added the procedure body for |
46 | SET_ERROR_SOURCE |
47 | 10/14/2003 S. Singhania Renamed SET_ERROR_SOURCE to |
48 | SET_OPTIONS. |
49 | Added new parameters to INITIALIZE. |
50 | 02/28/2004 S. Singhania Bug 3416534. Updated local trace |
51 | procedure and added FND_LOG messages |
52 | 03/23/2004 S. Singhania Added a parameter p_module to the TRACE|
53 | calls and the procedure. |
54 +===========================================================================*/
55
56 --=============================================================================
57 -- **************** declaraions ********************
58 --=============================================================================
59 -------------------------------------------------------------------------------
60 -- declaring private variables
61 -------------------------------------------------------------------------------
62 g_error_index PLS_INTEGER := 0;
63 g_client_id VARCHAR2(30);
64 g_accounting_errors xla_accounting_err_pkg.t_array_error;
65 g_error_source VARCHAR2(30);
66 g_request_id NUMBER;
67 g_application_id NUMBER;
68 -------------------------------------------------------------------------------
69 -- forward declarion of private procedures and functions
70 -------------------------------------------------------------------------------
71 PROCEDURE reset;
72
73 PROCEDURE stack_error
74 (p_appli_s_name IN VARCHAR2
75 ,p_msg_name IN VARCHAR2
76 ,p_entity_id IN NUMBER
77 ,p_event_id IN NUMBER
78 ,p_ledger_id IN NUMBER DEFAULT NULL
79 ,p_ae_header_id IN NUMBER DEFAULT NULL
80 ,p_ae_line_num IN NUMBER DEFAULT NULL
81 ,p_accounting_batch_id IN NUMBER DEFAULT NULL);
82
83 --=============================================================================
84 -- *********** Local Trace Routine **********
85 --=============================================================================
86 C_LEVEL_STATEMENT CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
87 C_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
88 C_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
89 C_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
90 C_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
91 C_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
92
93 C_LEVEL_LOG_DISABLED CONSTANT NUMBER := 99;
94 C_DEFAULT_MODULE CONSTANT VARCHAR2(240) := 'xla.plsql.xla_accounting_err_pkg';
95
96 g_log_level NUMBER;
97 g_log_enabled BOOLEAN;
98
99 PROCEDURE trace
100 (p_msg IN VARCHAR2
101 ,p_level IN NUMBER
102 ,p_module IN VARCHAR2) IS
103 BEGIN
104
105 IF (p_msg IS NULL AND p_level >= g_log_level) THEN
106 fnd_log.message(p_level, p_module);
107 ELSIF p_level >= g_log_level THEN
108 fnd_log.string(p_level, p_module, p_msg);
109 END IF;
110
111 EXCEPTION
112 WHEN xla_exceptions_pkg.application_exception THEN
113 RAISE;
114 WHEN OTHERS THEN
115 xla_exceptions_pkg.raise_message
116 (p_location => 'xla_accounting_err_pkg.trace');
117 END trace;
118
119
120 --=============================================================================
121 -- *********** public procedures and functions **********
122 --=============================================================================
123 --=============================================================================
124 --
125 --
126 --
127 --
128 --
129 --
130 --
131 --
132 --
133 --
134 -- Following are the public routines:
135 --
136 -- 1. build_message (no tokens)
137 -- 2. build_message (1 token)
138 -- 3. build_message (2 token)
139 -- 4. build_message (3 token)
140 -- 5. build_message (4 token)
141 -- 6. build_message (5 token)
142 -- 7. build_message (6 token)
143 -- 8. initialize
144 -- 9. insert_errors
145 -- 10. set_error_source
146 --
147 --
148 --
149 --
150 --
151 --
152 --
153 --
154 --
155 --
156 --
157 --=============================================================================
158
159 --=============================================================================
160 --
161 --
162 --=============================================================================
163
164 --added bug 10226301
165
166 PROCEDURE copy_global_array is
167 BEGIN
168
169 IF g_error_index > 0 THEN
170 FOR i IN g_accounting_errors.FIRST..g_accounting_errors.LAST LOOP
171 xla_datafixes_pub.global_error_index := xla_datafixes_pub.global_error_index + 1;
172 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).application_id := g_accounting_errors(i).application_id;
173 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).event_id := g_accounting_errors(i).event_id;
174 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).entity_id := g_accounting_errors(i).entity_id ;
175 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).ledger_id := g_accounting_errors(i).ledger_id;
176 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).ae_header_id := g_accounting_errors(i).ae_header_id;
177 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).ae_line_num := g_accounting_errors(i).ae_line_num;
178 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).accounting_batch_id := g_accounting_errors(i).accounting_batch_id;
179 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).message_number := g_accounting_errors(i).message_number;
180 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).encoded_msg := g_accounting_errors(i).encoded_msg ;
181 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).error_source_code := g_accounting_errors(i).error_source_code;
182 xla_datafixes_pub.global_accounting_errors(xla_datafixes_pub.global_error_index).request_id := g_accounting_errors(i).request_id;
183
184
185 END LOOP;
186 END IF;
187 END;
188 --end bug 10226301
189
190 PROCEDURE build_message
191 (p_appli_s_name IN VARCHAR2
192 ,p_msg_name IN VARCHAR2
193 ,p_entity_id IN NUMBER
194 ,p_event_id IN NUMBER
195 ,p_ledger_id IN NUMBER DEFAULT NULL
196 ,p_ae_header_id IN NUMBER DEFAULT NULL
197 ,p_ae_line_num IN NUMBER DEFAULT NULL
198 ,p_accounting_batch_id IN NUMBER DEFAULT NULL) IS
199 l_log_module VARCHAR2(240);
200 BEGIN
201 IF g_log_enabled THEN
202 l_log_module := C_DEFAULT_MODULE||'.build_message';
203 END IF;
204 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
205 trace
206 (p_msg => 'BEGIN of procedure BUILD_MESSAGE'
207 ,p_level => C_LEVEL_PROCEDURE
208 ,p_module => l_log_module);
209 trace
210 (p_msg => 'p_appli_s_name = '||p_appli_s_name
211 ,p_level => C_LEVEL_PROCEDURE
212 ,p_module => l_log_module);
213 trace
214 (p_msg => 'p_msg_name = '||p_msg_name
215 ,p_level => C_LEVEL_PROCEDURE
216 ,p_module => l_log_module);
217 trace
218 (p_msg => 'p_entity_id = '||p_entity_id
219 ,p_level => C_LEVEL_PROCEDURE
220 ,p_module => l_log_module);
221 trace
222 (p_msg => 'p_event_id = '||p_event_id
223 ,p_level => C_LEVEL_PROCEDURE
224 ,p_module => l_log_module);
225 trace
226 (p_msg => 'p_ledger_id = '||p_ledger_id
227 ,p_level => C_LEVEL_PROCEDURE
228 ,p_module => l_log_module);
229 trace
230 (p_msg => 'p_ae_header_id = '||p_ae_header_id
231 ,p_level => C_LEVEL_PROCEDURE
232 ,p_module => l_log_module);
233 trace
234 (p_msg => 'p_ae_line_num = '||p_ae_line_num
235 ,p_level => C_LEVEL_PROCEDURE
236 ,p_module => l_log_module);
237 trace
238 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
239 ,p_level => C_LEVEL_PROCEDURE
240 ,p_module => l_log_module);
241 END IF;
242
243 xla_messages_pkg.build_message
244 (p_appli_s_name => p_appli_s_name
245 ,p_msg_name => p_msg_name);
246
247 stack_error
248 (p_appli_s_name => p_appli_s_name
249 ,p_msg_name => p_msg_name
250 ,p_entity_id => p_entity_id
251 ,p_event_id => p_event_id
252 ,p_ledger_id => p_ledger_id
253 ,p_ae_header_id => p_ae_header_id
254 ,p_ae_line_num => p_ae_line_num
255 ,p_accounting_batch_id => p_accounting_batch_id);
256
257 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
258 trace
259 (p_msg => 'END of procedure BUILD_MESSAGE'
260 ,p_level => C_LEVEL_PROCEDURE
261 ,p_module => l_log_module);
262 END IF;
263 EXCEPTION
264 WHEN xla_exceptions_pkg.application_exception THEN
265 RAISE;
266 WHEN OTHERS THEN
267 IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
268 trace
269 (p_msg => 'p_appli_s_name = '||p_appli_s_name
270 ,p_level => C_LEVEL_EXCEPTION
271 ,p_module => l_log_module);
272 trace
273 (p_msg => 'p_msg_name = '||p_msg_name
274 ,p_level => C_LEVEL_EXCEPTION
275 ,p_module => l_log_module);
276 trace
277 (p_msg => 'p_entity_id = '||p_entity_id
278 ,p_level => C_LEVEL_EXCEPTION
279 ,p_module => l_log_module);
280 trace
281 (p_msg => 'p_event_id = '||p_event_id
282 ,p_level => C_LEVEL_EXCEPTION
283 ,p_module => l_log_module);
284 trace
285 (p_msg => 'p_ledger_id = '||p_ledger_id
286 ,p_level => C_LEVEL_EXCEPTION
287 ,p_module => l_log_module);
288 trace
289 (p_msg => 'p_ae_header_id = '||p_ae_header_id
290 ,p_level => C_LEVEL_EXCEPTION
291 ,p_module => l_log_module);
292 trace
293 (p_msg => 'p_ae_line_num = '||p_ae_line_num
297 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
294 ,p_level => C_LEVEL_EXCEPTION
295 ,p_module => l_log_module);
296 trace
298 ,p_level => C_LEVEL_EXCEPTION
299 ,p_module => l_log_module);
300 END IF;
301
302 xla_exceptions_pkg.raise_message
303 (p_location => 'xla_accounting_err_pkg.build_message');
304 END build_message; -- end of procedure
305
306
307 --=============================================================================
308 --
309 --
310 --=============================================================================
311 PROCEDURE build_message
312 (p_appli_s_name IN VARCHAR2
313 ,p_msg_name IN VARCHAR2
314 ,p_token_1 IN VARCHAR2
315 ,p_value_1 IN VARCHAR2
316 ,p_entity_id IN NUMBER
317 ,p_event_id IN NUMBER
318 ,p_ledger_id IN NUMBER DEFAULT NULL
319 ,p_ae_header_id IN NUMBER DEFAULT NULL
320 ,p_ae_line_num IN NUMBER DEFAULT NULL
321 ,p_accounting_batch_id IN NUMBER DEFAULT NULL) IS
322 l_log_module VARCHAR2(240);
323 BEGIN
324 IF g_log_enabled THEN
325 l_log_module := C_DEFAULT_MODULE||'.build_message';
326 END IF;
327 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
328 trace
329 (p_msg => 'BEGIN of procedure BUILD_MESSAGE'
330 ,p_level => C_LEVEL_PROCEDURE
331 ,p_module => l_log_module);
332 trace
333 (p_msg => 'p_appli_s_name = '||p_appli_s_name
334 ,p_level => C_LEVEL_PROCEDURE
335 ,p_module => l_log_module);
336 trace
337 (p_msg => 'p_msg_name = '||p_msg_name
338 ,p_level => C_LEVEL_PROCEDURE
339 ,p_module => l_log_module);
340 trace
341 (p_msg => 'p_token_1 = '||p_token_1
342 ,p_level => C_LEVEL_PROCEDURE
343 ,p_module => l_log_module);
344 trace
345 (p_msg => 'p_value_1 = '||p_value_1
346 ,p_level => C_LEVEL_PROCEDURE
347 ,p_module => l_log_module);
348 trace
349 (p_msg => 'p_entity_id = '||p_entity_id
350 ,p_level => C_LEVEL_PROCEDURE
351 ,p_module => l_log_module);
352 trace
353 (p_msg => 'p_event_id = '||p_event_id
354 ,p_level => C_LEVEL_PROCEDURE
355 ,p_module => l_log_module);
356 trace
357 (p_msg => 'p_ledger_id = '||p_ledger_id
358 ,p_level => C_LEVEL_PROCEDURE
359 ,p_module => l_log_module);
360 trace
361 (p_msg => 'p_ae_header_id = '||p_ae_header_id
362 ,p_level => C_LEVEL_PROCEDURE
363 ,p_module => l_log_module);
364 trace
365 (p_msg => 'p_ae_line_num = '||p_ae_line_num
366 ,p_level => C_LEVEL_PROCEDURE
367 ,p_module => l_log_module);
368 trace
369 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
370 ,p_level => C_LEVEL_PROCEDURE
371 ,p_module => l_log_module);
372 END IF;
373
374 xla_messages_pkg.build_message
375 (p_appli_s_name => p_appli_s_name
376 ,p_msg_name => p_msg_name
377 ,p_token_1 => p_token_1
378 ,p_value_1 => p_value_1);
379
380 stack_error
381 (p_appli_s_name => p_appli_s_name
382 ,p_msg_name => p_msg_name
383 ,p_entity_id => p_entity_id
384 ,p_event_id => p_event_id
385 ,p_ledger_id => p_ledger_id
386 ,p_ae_header_id => p_ae_header_id
387 ,p_ae_line_num => p_ae_line_num
388 ,p_accounting_batch_id => p_accounting_batch_id);
389
390 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
391 trace
392 (p_msg => 'END of procedure BUILD_MESSAGE'
393 ,p_level => C_LEVEL_PROCEDURE
394 ,p_module => l_log_module);
395 END IF;
396 EXCEPTION
397 WHEN xla_exceptions_pkg.application_exception THEN
398 RAISE;
399 WHEN OTHERS THEN
400 IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
401 trace
402 (p_msg => 'p_appli_s_name = '||p_appli_s_name
403 ,p_level => C_LEVEL_EXCEPTION
404 ,p_module => l_log_module);
405 trace
406 (p_msg => 'p_msg_name = '||p_msg_name
407 ,p_level => C_LEVEL_EXCEPTION
408 ,p_module => l_log_module);
409 trace
410 (p_msg => 'p_token_1 = '||p_token_1
411 ,p_level => C_LEVEL_EXCEPTION
412 ,p_module => l_log_module);
413 trace
414 (p_msg => 'p_value_1 = '||p_value_1
415 ,p_level => C_LEVEL_EXCEPTION
416 ,p_module => l_log_module);
417 trace
418 (p_msg => 'p_entity_id = '||p_entity_id
419 ,p_level => C_LEVEL_EXCEPTION
420 ,p_module => l_log_module);
421 trace
422 (p_msg => 'p_event_id = '||p_event_id
423 ,p_level => C_LEVEL_EXCEPTION
424 ,p_module => l_log_module);
425 trace
426 (p_msg => 'p_ledger_id = '||p_ledger_id
427 ,p_level => C_LEVEL_EXCEPTION
428 ,p_module => l_log_module);
429 trace
430 (p_msg => 'p_ae_header_id = '||p_ae_header_id
431 ,p_level => C_LEVEL_EXCEPTION
432 ,p_module => l_log_module);
436 ,p_module => l_log_module);
433 trace
434 (p_msg => 'p_ae_line_num = '||p_ae_line_num
435 ,p_level => C_LEVEL_EXCEPTION
437 trace
438 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
439 ,p_level => C_LEVEL_EXCEPTION
440 ,p_module => l_log_module);
441 END IF;
442
443 xla_exceptions_pkg.raise_message
444 (p_location => 'xla_accounting_err_pkg.build_message');
445 END build_message; -- end of procedure
446
447
448 --=============================================================================
449 --
450 --
451 --=============================================================================
452 PROCEDURE build_message
453 (p_appli_s_name IN VARCHAR2
454 ,p_msg_name IN VARCHAR2
455 ,p_token_1 IN VARCHAR2
456 ,p_value_1 IN VARCHAR2
457 ,p_token_2 IN VARCHAR2
458 ,p_value_2 IN VARCHAR2
459 ,p_entity_id IN NUMBER
460 ,p_event_id IN NUMBER
461 ,p_ledger_id IN NUMBER DEFAULT NULL
462 ,p_ae_header_id IN NUMBER DEFAULT NULL
463 ,p_ae_line_num IN NUMBER DEFAULT NULL
464 ,p_accounting_batch_id IN NUMBER DEFAULT NULL) IS
465 l_log_module VARCHAR2(240);
466 BEGIN
467 IF g_log_enabled THEN
468 l_log_module := C_DEFAULT_MODULE||'.build_message';
469 END IF;
470 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
471 trace
472 (p_msg => 'BEGIN of procedure BUILD_MESSAGE'
473 ,p_level => C_LEVEL_PROCEDURE
474 ,p_module => l_log_module);
475 trace
476 (p_msg => 'p_appli_s_name = '||p_appli_s_name
477 ,p_level => C_LEVEL_PROCEDURE
478 ,p_module => l_log_module);
479 trace
480 (p_msg => 'p_msg_name = '||p_msg_name
481 ,p_level => C_LEVEL_PROCEDURE
482 ,p_module => l_log_module);
483 trace
484 (p_msg => 'p_token_1 = '||p_token_1
485 ,p_level => C_LEVEL_PROCEDURE
486 ,p_module => l_log_module);
487 trace
488 (p_msg => 'p_value_1 = '||p_value_1
489 ,p_level => C_LEVEL_PROCEDURE
490 ,p_module => l_log_module);
491 trace
492 (p_msg => 'p_token_2 = '||p_token_2
493 ,p_level => C_LEVEL_PROCEDURE
494 ,p_module => l_log_module);
495 trace
496 (p_msg => 'p_value_2 = '||p_value_2
497 ,p_level => C_LEVEL_PROCEDURE
498 ,p_module => l_log_module);
499 trace
500 (p_msg => 'p_entity_id = '||p_entity_id
501 ,p_level => C_LEVEL_PROCEDURE
502 ,p_module => l_log_module);
503 trace
504 (p_msg => 'p_event_id = '||p_event_id
505 ,p_level => C_LEVEL_PROCEDURE
506 ,p_module => l_log_module);
507 trace
508 (p_msg => 'p_ledger_id = '||p_ledger_id
509 ,p_level => C_LEVEL_PROCEDURE
510 ,p_module => l_log_module);
511 trace
512 (p_msg => 'p_ae_header_id = '||p_ae_header_id
513 ,p_level => C_LEVEL_PROCEDURE
514 ,p_module => l_log_module);
515 trace
516 (p_msg => 'p_ae_line_num = '||p_ae_line_num
517 ,p_level => C_LEVEL_PROCEDURE
518 ,p_module => l_log_module);
519 trace
520 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
521 ,p_level => C_LEVEL_PROCEDURE
522 ,p_module => l_log_module);
523 END IF;
524
525 xla_messages_pkg.build_message
526 (p_appli_s_name => p_appli_s_name
527 ,p_msg_name => p_msg_name
528 ,p_token_1 => p_token_1
529 ,p_value_1 => p_value_1
530 ,p_token_2 => p_token_2
531 ,p_value_2 => p_value_2);
532
533 stack_error
534 (p_appli_s_name => p_appli_s_name
535 ,p_msg_name => p_msg_name
536 ,p_entity_id => p_entity_id
537 ,p_event_id => p_event_id
538 ,p_ledger_id => p_ledger_id
539 ,p_ae_header_id => p_ae_header_id
540 ,p_ae_line_num => p_ae_line_num
541 ,p_accounting_batch_id => p_accounting_batch_id);
542
543 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
544 trace
545 (p_msg => 'END of procedure BUILD_MESSAGE'
546 ,p_level => C_LEVEL_PROCEDURE
547 ,p_module => l_log_module);
548 END IF;
549 EXCEPTION
550 WHEN xla_exceptions_pkg.application_exception THEN
551 RAISE;
552 WHEN OTHERS THEN
553 IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
554 trace
555 (p_msg => 'p_appli_s_name = '||p_appli_s_name
556 ,p_level => C_LEVEL_EXCEPTION
557 ,p_module => l_log_module);
558 trace
559 (p_msg => 'p_msg_name = '||p_msg_name
560 ,p_level => C_LEVEL_EXCEPTION
561 ,p_module => l_log_module);
562 trace
563 (p_msg => 'p_token_1 = '||p_token_1
564 ,p_level => C_LEVEL_EXCEPTION
565 ,p_module => l_log_module);
566 trace
567 (p_msg => 'p_value_1 = '||p_value_1
568 ,p_level => C_LEVEL_EXCEPTION
569 ,p_module => l_log_module);
570 trace
574 trace
571 (p_msg => 'p_token_2 = '||p_token_2
572 ,p_level => C_LEVEL_EXCEPTION
573 ,p_module => l_log_module);
575 (p_msg => 'p_value_2 = '||p_value_2
576 ,p_level => C_LEVEL_EXCEPTION
577 ,p_module => l_log_module);
578 trace
579 (p_msg => 'p_entity_id = '||p_entity_id
580 ,p_level => C_LEVEL_EXCEPTION
581 ,p_module => l_log_module);
582 trace
583 (p_msg => 'p_event_id = '||p_event_id
584 ,p_level => C_LEVEL_EXCEPTION
585 ,p_module => l_log_module);
586 trace
587 (p_msg => 'p_ledger_id = '||p_ledger_id
588 ,p_level => C_LEVEL_EXCEPTION
589 ,p_module => l_log_module);
590 trace
594 trace
591 (p_msg => 'p_ae_header_id = '||p_ae_header_id
592 ,p_level => C_LEVEL_EXCEPTION
593 ,p_module => l_log_module);
595 (p_msg => 'p_ae_line_num = '||p_ae_line_num
596 ,p_level => C_LEVEL_EXCEPTION
597 ,p_module => l_log_module);
598 trace
599 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
600 ,p_level => C_LEVEL_EXCEPTION
601 ,p_module => l_log_module);
602 END IF;
603
604 xla_exceptions_pkg.raise_message
605 (p_location => 'xla_accounting_err_pkg.build_message');
606 END build_message; -- end of procedure
607
608
609 --=============================================================================
610 --
611 --
612 --=============================================================================
613 PROCEDURE build_message
614 (p_appli_s_name IN VARCHAR2
615 ,p_msg_name IN VARCHAR2
616 ,p_token_1 IN VARCHAR2
617 ,p_value_1 IN VARCHAR2
618 ,p_token_2 IN VARCHAR2
619 ,p_value_2 IN VARCHAR2
620 ,p_token_3 IN VARCHAR2
621 ,p_value_3 IN VARCHAR2
622 ,p_entity_id IN NUMBER
623 ,p_event_id IN NUMBER
624 ,p_ledger_id IN NUMBER DEFAULT NULL
625 ,p_ae_header_id IN NUMBER DEFAULT NULL
626 ,p_ae_line_num IN NUMBER DEFAULT NULL
627 ,p_accounting_batch_id IN NUMBER DEFAULT NULL) IS
628 l_log_module VARCHAR2(240);
629 BEGIN
630 IF g_log_enabled THEN
631 l_log_module := C_DEFAULT_MODULE||'.build_message';
632 END IF;
633 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
634 trace
635 (p_msg => 'BEGIN of procedure BUILD_MESSAGE'
636 ,p_level => C_LEVEL_PROCEDURE
637 ,p_module => l_log_module);
638 trace
639 (p_msg => 'p_appli_s_name = '||p_appli_s_name
640 ,p_level => C_LEVEL_PROCEDURE
641 ,p_module => l_log_module);
642 trace
643 (p_msg => 'p_msg_name = '||p_msg_name
644 ,p_level => C_LEVEL_PROCEDURE
645 ,p_module => l_log_module);
646 trace
647 (p_msg => 'p_token_1 = '||p_token_1
648 ,p_level => C_LEVEL_PROCEDURE
649 ,p_module => l_log_module);
650 trace
651 (p_msg => 'p_value_1 = '||p_value_1
652 ,p_level => C_LEVEL_PROCEDURE
653 ,p_module => l_log_module);
654 trace
655 (p_msg => 'p_token_2 = '||p_token_2
656 ,p_level => C_LEVEL_PROCEDURE
657 ,p_module => l_log_module);
658 trace
659 (p_msg => 'p_value_2 = '||p_value_2
660 ,p_level => C_LEVEL_PROCEDURE
661 ,p_module => l_log_module);
662 trace
663 (p_msg => 'p_token_3 = '||p_token_3
664 ,p_level => C_LEVEL_PROCEDURE
665 ,p_module => l_log_module);
666 trace
667 (p_msg => 'p_value_3 = '||p_value_3
668 ,p_level => C_LEVEL_PROCEDURE
669 ,p_module => l_log_module);
670 trace
671 (p_msg => 'p_entity_id = '||p_entity_id
672 ,p_level => C_LEVEL_PROCEDURE
673 ,p_module => l_log_module);
674 trace
675 (p_msg => 'p_event_id = '||p_event_id
676 ,p_level => C_LEVEL_PROCEDURE
677 ,p_module => l_log_module);
678 trace
679 (p_msg => 'p_ledger_id = '||p_ledger_id
680 ,p_level => C_LEVEL_PROCEDURE
681 ,p_module => l_log_module);
682 trace
683 (p_msg => 'p_ae_header_id = '||p_ae_header_id
684 ,p_level => C_LEVEL_PROCEDURE
685 ,p_module => l_log_module);
686 trace
687 (p_msg => 'p_ae_line_num = '||p_ae_line_num
691 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
688 ,p_level => C_LEVEL_PROCEDURE
689 ,p_module => l_log_module);
690 trace
692 ,p_level => C_LEVEL_PROCEDURE
693 ,p_module => l_log_module);
694 END IF;
695
696 xla_messages_pkg.build_message
697 (p_appli_s_name => p_appli_s_name
698 ,p_msg_name => p_msg_name
699 ,p_token_1 => p_token_1
700 ,p_value_1 => p_value_1
701 ,p_token_2 => p_token_2
702 ,p_value_2 => p_value_2
703 ,p_token_3 => p_token_3
704 ,p_value_3 => p_value_3);
705
706 stack_error
707 (p_appli_s_name => p_appli_s_name
708 ,p_msg_name => p_msg_name
709 ,p_entity_id => p_entity_id
710 ,p_event_id => p_event_id
711 ,p_ledger_id => p_ledger_id
712 ,p_ae_header_id => p_ae_header_id
713 ,p_ae_line_num => p_ae_line_num
714 ,p_accounting_batch_id => p_accounting_batch_id);
715
716 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
717 trace
718 (p_msg => 'END of procedure BUILD_MESSAGE'
719 ,p_level => C_LEVEL_PROCEDURE
720 ,p_module => l_log_module);
721 END IF;
722 EXCEPTION
723 WHEN xla_exceptions_pkg.application_exception THEN
724 RAISE;
725 WHEN OTHERS THEN
726 IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
727 trace
728 (p_msg => 'p_appli_s_name = '||p_appli_s_name
729 ,p_level => C_LEVEL_EXCEPTION
730 ,p_module => l_log_module);
731 trace
732 (p_msg => 'p_msg_name = '||p_msg_name
733 ,p_level => C_LEVEL_EXCEPTION
734 ,p_module => l_log_module);
735 trace
736 (p_msg => 'p_token_1 = '||p_token_1
737 ,p_level => C_LEVEL_EXCEPTION
738 ,p_module => l_log_module);
739 trace
740 (p_msg => 'p_value_1 = '||p_value_1
741 ,p_level => C_LEVEL_EXCEPTION
742 ,p_module => l_log_module);
743 trace
744 (p_msg => 'p_token_2 = '||p_token_2
745 ,p_level => C_LEVEL_EXCEPTION
746 ,p_module => l_log_module);
747 trace
748 (p_msg => 'p_value_2 = '||p_value_2
749 ,p_level => C_LEVEL_EXCEPTION
750 ,p_module => l_log_module);
754 ,p_module => l_log_module);
751 trace
752 (p_msg => 'p_token_3 = '||p_token_3
753 ,p_level => C_LEVEL_EXCEPTION
755 trace
756 (p_msg => 'p_value_3 = '||p_value_3
757 ,p_level => C_LEVEL_EXCEPTION
758 ,p_module => l_log_module);
759 trace
760 (p_msg => 'p_entity_id = '||p_entity_id
761 ,p_level => C_LEVEL_EXCEPTION
762 ,p_module => l_log_module);
763 trace
764 (p_msg => 'p_event_id = '||p_event_id
765 ,p_level => C_LEVEL_EXCEPTION
766 ,p_module => l_log_module);
767 trace
768 (p_msg => 'p_ledger_id = '||p_ledger_id
769 ,p_level => C_LEVEL_EXCEPTION
770 ,p_module => l_log_module);
771 trace
772 (p_msg => 'p_ae_header_id = '||p_ae_header_id
773 ,p_level => C_LEVEL_EXCEPTION
774 ,p_module => l_log_module);
775 trace
776 (p_msg => 'p_ae_line_num = '||p_ae_line_num
777 ,p_level => C_LEVEL_EXCEPTION
778 ,p_module => l_log_module);
779 trace
780 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
781 ,p_level => C_LEVEL_EXCEPTION
782 ,p_module => l_log_module);
783 END IF;
784
785 xla_exceptions_pkg.raise_message
786 (p_location => 'xla_accounting_err_pkg.build_message');
787 END build_message; -- end of procedure
788
789
790 --=============================================================================
791 --
792 --
793 --=============================================================================
794 PROCEDURE build_message
795 (p_appli_s_name IN VARCHAR2
796 ,p_msg_name IN VARCHAR2
797 ,p_token_1 IN VARCHAR2
798 ,p_value_1 IN VARCHAR2
799 ,p_token_2 IN VARCHAR2
800 ,p_value_2 IN VARCHAR2
801 ,p_token_3 IN VARCHAR2
802 ,p_value_3 IN VARCHAR2
803 ,p_token_4 IN VARCHAR2
807 ,p_ledger_id IN NUMBER DEFAULT NULL
804 ,p_value_4 IN VARCHAR2
805 ,p_entity_id IN NUMBER
806 ,p_event_id IN NUMBER
808 ,p_ae_header_id IN NUMBER DEFAULT NULL
809 ,p_ae_line_num IN NUMBER DEFAULT NULL
810 ,p_accounting_batch_id IN NUMBER DEFAULT NULL) IS
811 l_log_module VARCHAR2(240);
812 BEGIN
813 IF g_log_enabled THEN
814 l_log_module := C_DEFAULT_MODULE||'.build_message';
815 END IF;
816 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
817 trace
818 (p_msg => 'BEGIN of procedure BUILD_MESSAGE'
819 ,p_level => C_LEVEL_PROCEDURE
820 ,p_module => l_log_module);
821 trace
822 (p_msg => 'p_appli_s_name = '||p_appli_s_name
823 ,p_level => C_LEVEL_PROCEDURE
824 ,p_module => l_log_module);
825 trace
826 (p_msg => 'p_msg_name = '||p_msg_name
827 ,p_level => C_LEVEL_PROCEDURE
828 ,p_module => l_log_module);
829 trace
830 (p_msg => 'p_token_1 = '||p_token_1
831 ,p_level => C_LEVEL_PROCEDURE
832 ,p_module => l_log_module);
833 trace
834 (p_msg => 'p_value_1 = '||p_value_1
835 ,p_level => C_LEVEL_PROCEDURE
836 ,p_module => l_log_module);
837 trace
838 (p_msg => 'p_token_2 = '||p_token_2
839 ,p_level => C_LEVEL_PROCEDURE
840 ,p_module => l_log_module);
841 trace
842 (p_msg => 'p_value_2 = '||p_value_2
843 ,p_level => C_LEVEL_PROCEDURE
844 ,p_module => l_log_module);
845 trace
846 (p_msg => 'p_token_3 = '||p_token_3
847 ,p_level => C_LEVEL_PROCEDURE
848 ,p_module => l_log_module);
849 trace
850 (p_msg => 'p_value_3 = '||p_value_3
851 ,p_level => C_LEVEL_PROCEDURE
852 ,p_module => l_log_module);
853 trace
854 (p_msg => 'p_token_4 = '||p_token_4
855 ,p_level => C_LEVEL_PROCEDURE
856 ,p_module => l_log_module);
857 trace
858 (p_msg => 'p_value_4 = '||p_value_4
859 ,p_level => C_LEVEL_PROCEDURE
860 ,p_module => l_log_module);
861 trace
862 (p_msg => 'p_entity_id = '||p_entity_id
863 ,p_level => C_LEVEL_PROCEDURE
864 ,p_module => l_log_module);
865 trace
866 (p_msg => 'p_event_id = '||p_event_id
867 ,p_level => C_LEVEL_PROCEDURE
868 ,p_module => l_log_module);
869 trace
870 (p_msg => 'p_ledger_id = '||p_ledger_id
871 ,p_level => C_LEVEL_PROCEDURE
872 ,p_module => l_log_module);
873 trace
874 (p_msg => 'p_ae_header_id = '||p_ae_header_id
875 ,p_level => C_LEVEL_PROCEDURE
876 ,p_module => l_log_module);
877 trace
878 (p_msg => 'p_ae_line_num = '||p_ae_line_num
879 ,p_level => C_LEVEL_PROCEDURE
880 ,p_module => l_log_module);
881 trace
882 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
883 ,p_level => C_LEVEL_PROCEDURE
884 ,p_module => l_log_module);
885 END IF;
886
887 xla_messages_pkg.build_message
888 (p_appli_s_name => p_appli_s_name
889 ,p_msg_name => p_msg_name
890 ,p_token_1 => p_token_1
891 ,p_value_1 => p_value_1
892 ,p_token_2 => p_token_2
893 ,p_value_2 => p_value_2
894 ,p_token_3 => p_token_3
895 ,p_value_3 => p_value_3
896 ,p_token_4 => p_token_4
897 ,p_value_4 => p_value_4);
898
899 stack_error
900 (p_appli_s_name => p_appli_s_name
901 ,p_msg_name => p_msg_name
902 ,p_entity_id => p_entity_id
903 ,p_event_id => p_event_id
904 ,p_ledger_id => p_ledger_id
905 ,p_ae_header_id => p_ae_header_id
906 ,p_ae_line_num => p_ae_line_num
907 ,p_accounting_batch_id => p_accounting_batch_id);
908
909 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
910 trace
911 (p_msg => 'END of procedure BUILD_MESSAGE'
912 ,p_level => C_LEVEL_PROCEDURE
913 ,p_module => l_log_module);
914 END IF;
915 EXCEPTION
916 WHEN xla_exceptions_pkg.application_exception THEN
917 RAISE;
918 WHEN OTHERS THEN
919 IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
920 trace
921 (p_msg => 'p_appli_s_name = '||p_appli_s_name
922 ,p_level => C_LEVEL_EXCEPTION
923 ,p_module => l_log_module);
924 trace
925 (p_msg => 'p_msg_name = '||p_msg_name
926 ,p_level => C_LEVEL_EXCEPTION
927 ,p_module => l_log_module);
928 trace
929 (p_msg => 'p_token_1 = '||p_token_1
930 ,p_level => C_LEVEL_EXCEPTION
931 ,p_module => l_log_module);
932 trace
933 (p_msg => 'p_value_1 = '||p_value_1
934 ,p_level => C_LEVEL_EXCEPTION
935 ,p_module => l_log_module);
936 trace
937 (p_msg => 'p_token_2 = '||p_token_2
938 ,p_level => C_LEVEL_EXCEPTION
939 ,p_module => l_log_module);
940 trace
944 trace
941 (p_msg => 'p_value_2 = '||p_value_2
942 ,p_level => C_LEVEL_EXCEPTION
943 ,p_module => l_log_module);
945 (p_msg => 'p_token_3 = '||p_token_3
946 ,p_level => C_LEVEL_EXCEPTION
947 ,p_module => l_log_module);
948 trace
949 (p_msg => 'p_value_3 = '||p_value_3
950 ,p_level => C_LEVEL_EXCEPTION
951 ,p_module => l_log_module);
952 trace
953 (p_msg => 'p_token_4 = '||p_token_4
954 ,p_level => C_LEVEL_EXCEPTION
955 ,p_module => l_log_module);
956 trace
957 (p_msg => 'p_value_4 = '||p_value_4
958 ,p_level => C_LEVEL_EXCEPTION
959 ,p_module => l_log_module);
960 trace
961 (p_msg => 'p_entity_id = '||p_entity_id
962 ,p_level => C_LEVEL_EXCEPTION
963 ,p_module => l_log_module);
964 trace
965 (p_msg => 'p_event_id = '||p_event_id
966 ,p_level => C_LEVEL_EXCEPTION
967 ,p_module => l_log_module);
968 trace
969 (p_msg => 'p_ledger_id = '||p_ledger_id
970 ,p_level => C_LEVEL_EXCEPTION
971 ,p_module => l_log_module);
972 trace
973 (p_msg => 'p_ae_header_id = '||p_ae_header_id
974 ,p_level => C_LEVEL_EXCEPTION
975 ,p_module => l_log_module);
976 trace
977 (p_msg => 'p_ae_line_num = '||p_ae_line_num
978 ,p_level => C_LEVEL_EXCEPTION
979 ,p_module => l_log_module);
980 trace
981 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
982 ,p_level => C_LEVEL_EXCEPTION
983 ,p_module => l_log_module);
984 END IF;
985
986 xla_exceptions_pkg.raise_message
987 (p_location => 'xla_accounting_err_pkg.build_message');
988 END build_message; -- end of procedure
989
990
991 --=============================================================================
992 --
993 --
994 --=============================================================================
995 PROCEDURE build_message
996 (p_appli_s_name IN VARCHAR2
997 ,p_msg_name IN VARCHAR2
998 ,p_token_1 IN VARCHAR2
999 ,p_value_1 IN VARCHAR2
1000 ,p_token_2 IN VARCHAR2
1001 ,p_value_2 IN VARCHAR2
1002 ,p_token_3 IN VARCHAR2
1003 ,p_value_3 IN VARCHAR2
1004 ,p_token_4 IN VARCHAR2
1005 ,p_value_4 IN VARCHAR2
1006 ,p_token_5 IN VARCHAR2
1007 ,p_value_5 IN VARCHAR2
1008 ,p_entity_id IN NUMBER
1009 ,p_event_id IN NUMBER
1010 ,p_ledger_id IN NUMBER DEFAULT NULL
1011 ,p_ae_header_id IN NUMBER DEFAULT NULL
1012 ,p_ae_line_num IN NUMBER DEFAULT NULL
1013 ,p_accounting_batch_id IN NUMBER DEFAULT NULL) IS
1014 l_log_module VARCHAR2(240);
1015 BEGIN
1016 IF g_log_enabled THEN
1017 l_log_module := C_DEFAULT_MODULE||'.build_message';
1018 END IF;
1019 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1020 trace
1021 (p_msg => 'BEGIN of procedure BUILD_MESSAGE'
1022 ,p_level => C_LEVEL_PROCEDURE
1023 ,p_module => l_log_module);
1024 trace
1025 (p_msg => 'p_appli_s_name = '||p_appli_s_name
1026 ,p_level => C_LEVEL_PROCEDURE
1027 ,p_module => l_log_module);
1028 trace
1029 (p_msg => 'p_msg_name = '||p_msg_name
1030 ,p_level => C_LEVEL_PROCEDURE
1031 ,p_module => l_log_module);
1032 trace
1033 (p_msg => 'p_token_1 = '||p_token_1
1034 ,p_level => C_LEVEL_PROCEDURE
1035 ,p_module => l_log_module);
1036 trace
1037 (p_msg => 'p_value_1 = '||p_value_1
1038 ,p_level => C_LEVEL_PROCEDURE
1039 ,p_module => l_log_module);
1040 trace
1041 (p_msg => 'p_token_2 = '||p_token_2
1042 ,p_level => C_LEVEL_PROCEDURE
1043 ,p_module => l_log_module);
1044 trace
1045 (p_msg => 'p_value_2 = '||p_value_2
1046 ,p_level => C_LEVEL_PROCEDURE
1047 ,p_module => l_log_module);
1048 trace
1049 (p_msg => 'p_token_3 = '||p_token_3
1050 ,p_level => C_LEVEL_PROCEDURE
1051 ,p_module => l_log_module);
1052 trace
1053 (p_msg => 'p_value_3 = '||p_value_3
1054 ,p_level => C_LEVEL_PROCEDURE
1055 ,p_module => l_log_module);
1056 trace
1057 (p_msg => 'p_token_4 = '||p_token_4
1058 ,p_level => C_LEVEL_PROCEDURE
1059 ,p_module => l_log_module);
1060 trace
1061 (p_msg => 'p_value_4 = '||p_value_4
1062 ,p_level => C_LEVEL_PROCEDURE
1063 ,p_module => l_log_module);
1064 trace
1065 (p_msg => 'p_token_5 = '||p_token_5
1066 ,p_level => C_LEVEL_PROCEDURE
1067 ,p_module => l_log_module);
1068 trace
1069 (p_msg => 'p_value_5 = '||p_value_5
1070 ,p_level => C_LEVEL_PROCEDURE
1071 ,p_module => l_log_module);
1072 trace
1073 (p_msg => 'p_entity_id = '||p_entity_id
1074 ,p_level => C_LEVEL_PROCEDURE
1075 ,p_module => l_log_module);
1076 trace
1077 (p_msg => 'p_event_id = '||p_event_id
1078 ,p_level => C_LEVEL_PROCEDURE
1082 ,p_level => C_LEVEL_PROCEDURE
1079 ,p_module => l_log_module);
1080 trace
1081 (p_msg => 'p_ledger_id = '||p_ledger_id
1083 ,p_module => l_log_module);
1084 trace
1085 (p_msg => 'p_ae_header_id = '||p_ae_header_id
1086 ,p_level => C_LEVEL_PROCEDURE
1087 ,p_module => l_log_module);
1088 trace
1089 (p_msg => 'p_ae_line_num = '||p_ae_line_num
1090 ,p_level => C_LEVEL_PROCEDURE
1091 ,p_module => l_log_module);
1092 trace
1093 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
1094 ,p_level => C_LEVEL_PROCEDURE
1095 ,p_module => l_log_module);
1096 END IF;
1097
1098 xla_messages_pkg.build_message
1099 (p_appli_s_name => p_appli_s_name
1100 ,p_msg_name => p_msg_name
1101 ,p_token_1 => p_token_1
1102 ,p_value_1 => p_value_1
1103 ,p_token_2 => p_token_2
1104 ,p_value_2 => p_value_2
1105 ,p_token_3 => p_token_3
1106 ,p_value_3 => p_value_3
1107 ,p_token_4 => p_token_4
1108 ,p_value_4 => p_value_4
1109 ,p_token_5 => p_token_5
1110 ,p_value_5 => p_value_5);
1111
1112 stack_error
1113 (p_appli_s_name => p_appli_s_name
1114 ,p_msg_name => p_msg_name
1115 ,p_entity_id => p_entity_id
1116 ,p_event_id => p_event_id
1117 ,p_ledger_id => p_ledger_id
1118 ,p_ae_header_id => p_ae_header_id
1119 ,p_ae_line_num => p_ae_line_num
1120 ,p_accounting_batch_id => p_accounting_batch_id);
1121
1122 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1123 trace
1124 (p_msg => 'END of procedure BUILD_MESSAGE'
1125 ,p_level => C_LEVEL_PROCEDURE
1126 ,p_module => l_log_module);
1127 END IF;
1128 EXCEPTION
1129 WHEN xla_exceptions_pkg.application_exception THEN
1130 RAISE;
1131 WHEN OTHERS THEN
1132 IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
1133 trace
1134 (p_msg => 'p_appli_s_name = '||p_appli_s_name
1135 ,p_level => C_LEVEL_EXCEPTION
1136 ,p_module => l_log_module);
1137 trace
1138 (p_msg => 'p_msg_name = '||p_msg_name
1139 ,p_level => C_LEVEL_EXCEPTION
1140 ,p_module => l_log_module);
1141 trace
1142 (p_msg => 'p_token_1 = '||p_token_1
1143 ,p_level => C_LEVEL_EXCEPTION
1144 ,p_module => l_log_module);
1145 trace
1146 (p_msg => 'p_value_1 = '||p_value_1
1147 ,p_level => C_LEVEL_EXCEPTION
1148 ,p_module => l_log_module);
1149 trace
1150 (p_msg => 'p_token_2 = '||p_token_2
1151 ,p_level => C_LEVEL_EXCEPTION
1152 ,p_module => l_log_module);
1153 trace
1154 (p_msg => 'p_value_2 = '||p_value_2
1155 ,p_level => C_LEVEL_EXCEPTION
1156 ,p_module => l_log_module);
1157 trace
1158 (p_msg => 'p_token_3 = '||p_token_3
1159 ,p_level => C_LEVEL_EXCEPTION
1160 ,p_module => l_log_module);
1161 trace
1162 (p_msg => 'p_value_3 = '||p_value_3
1163 ,p_level => C_LEVEL_EXCEPTION
1164 ,p_module => l_log_module);
1165 trace
1166 (p_msg => 'p_token_4 = '||p_token_4
1167 ,p_level => C_LEVEL_EXCEPTION
1168 ,p_module => l_log_module);
1169 trace
1170 (p_msg => 'p_value_4 = '||p_value_4
1171 ,p_level => C_LEVEL_EXCEPTION
1172 ,p_module => l_log_module);
1173 trace
1174 (p_msg => 'p_token_5 = '||p_token_5
1175 ,p_level => C_LEVEL_EXCEPTION
1176 ,p_module => l_log_module);
1177 trace
1178 (p_msg => 'p_value_5 = '||p_value_5
1179 ,p_level => C_LEVEL_EXCEPTION
1180 ,p_module => l_log_module);
1181 trace
1182 (p_msg => 'p_entity_id = '||p_entity_id
1183 ,p_level => C_LEVEL_EXCEPTION
1184 ,p_module => l_log_module);
1185 trace
1186 (p_msg => 'p_event_id = '||p_event_id
1187 ,p_level => C_LEVEL_EXCEPTION
1188 ,p_module => l_log_module);
1189 trace
1190 (p_msg => 'p_ledger_id = '||p_ledger_id
1191 ,p_level => C_LEVEL_EXCEPTION
1192 ,p_module => l_log_module);
1193 trace
1194 (p_msg => 'p_ae_header_id = '||p_ae_header_id
1195 ,p_level => C_LEVEL_EXCEPTION
1196 ,p_module => l_log_module);
1197 trace
1198 (p_msg => 'p_ae_line_num = '||p_ae_line_num
1199 ,p_level => C_LEVEL_EXCEPTION
1200 ,p_module => l_log_module);
1201 trace
1202 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
1203 ,p_level => C_LEVEL_EXCEPTION
1204 ,p_module => l_log_module);
1205 END IF;
1206
1207 xla_exceptions_pkg.raise_message
1208 (p_location => 'xla_accounting_err_pkg.build_message');
1209 END build_message; -- end of procedure
1210
1211
1212
1213 --=============================================================================
1214 --
1215 --
1216 --=============================================================================
1217 PROCEDURE build_message
1218 (p_appli_s_name IN VARCHAR2
1222 ,p_token_2 IN VARCHAR2
1219 ,p_msg_name IN VARCHAR2
1220 ,p_token_1 IN VARCHAR2
1221 ,p_value_1 IN VARCHAR2
1223 ,p_value_2 IN VARCHAR2
1224 ,p_token_3 IN VARCHAR2
1225 ,p_value_3 IN VARCHAR2
1226 ,p_token_4 IN VARCHAR2
1227 ,p_value_4 IN VARCHAR2
1228 ,p_token_5 IN VARCHAR2
1229 ,p_value_5 IN VARCHAR2
1230 ,p_token_6 IN VARCHAR2
1231 ,p_value_6 IN VARCHAR2
1232 ,p_entity_id IN NUMBER
1236 ,p_ae_line_num IN NUMBER DEFAULT NULL
1233 ,p_event_id IN NUMBER
1234 ,p_ledger_id IN NUMBER DEFAULT NULL
1235 ,p_ae_header_id IN NUMBER DEFAULT NULL
1237 ,p_accounting_batch_id IN NUMBER DEFAULT NULL) IS
1238 l_log_module VARCHAR2(240);
1239 BEGIN
1240 IF g_log_enabled THEN
1241 l_log_module := C_DEFAULT_MODULE||'.build_message';
1242 END IF;
1243 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1244 trace
1245 (p_msg => 'BEGIN of procedure BUILD_MESSAGE'
1246 ,p_level => C_LEVEL_PROCEDURE
1247 ,p_module => l_log_module);
1248 trace
1249 (p_msg => 'p_appli_s_name = '||p_appli_s_name
1250 ,p_level => C_LEVEL_PROCEDURE
1251 ,p_module => l_log_module);
1252 trace
1253 (p_msg => 'p_msg_name = '||p_msg_name
1254 ,p_level => C_LEVEL_PROCEDURE
1255 ,p_module => l_log_module);
1256 trace
1257 (p_msg => 'p_token_1 = '||p_token_1
1258 ,p_level => C_LEVEL_PROCEDURE
1259 ,p_module => l_log_module);
1260 trace
1261 (p_msg => 'p_value_1 = '||p_value_1
1262 ,p_level => C_LEVEL_PROCEDURE
1263 ,p_module => l_log_module);
1264 trace
1265 (p_msg => 'p_token_2 = '||p_token_2
1266 ,p_level => C_LEVEL_PROCEDURE
1267 ,p_module => l_log_module);
1268 trace
1269 (p_msg => 'p_value_2 = '||p_value_2
1270 ,p_level => C_LEVEL_PROCEDURE
1271 ,p_module => l_log_module);
1272 trace
1273 (p_msg => 'p_token_3 = '||p_token_3
1274 ,p_level => C_LEVEL_PROCEDURE
1275 ,p_module => l_log_module);
1276 trace
1277 (p_msg => 'p_value_3 = '||p_value_3
1278 ,p_level => C_LEVEL_PROCEDURE
1279 ,p_module => l_log_module);
1280 trace
1281 (p_msg => 'p_token_4 = '||p_token_4
1282 ,p_level => C_LEVEL_PROCEDURE
1283 ,p_module => l_log_module);
1284 trace
1285 (p_msg => 'p_value_4 = '||p_value_4
1286 ,p_level => C_LEVEL_PROCEDURE
1287 ,p_module => l_log_module);
1288 trace
1289 (p_msg => 'p_token_5 = '||p_token_5
1290 ,p_level => C_LEVEL_PROCEDURE
1291 ,p_module => l_log_module);
1292 trace
1293 (p_msg => 'p_value_5 = '||p_value_5
1294 ,p_level => C_LEVEL_PROCEDURE
1295 ,p_module => l_log_module);
1296 trace
1297 (p_msg => 'p_token_6 = '||p_token_6
1298 ,p_level => C_LEVEL_PROCEDURE
1299 ,p_module => l_log_module);
1300 trace
1301 (p_msg => 'p_value_6 = '||p_value_6
1302 ,p_level => C_LEVEL_PROCEDURE
1303 ,p_module => l_log_module);
1304 trace
1305 (p_msg => 'p_entity_id = '||p_entity_id
1306 ,p_level => C_LEVEL_PROCEDURE
1307 ,p_module => l_log_module);
1308 trace
1309 (p_msg => 'p_event_id = '||p_event_id
1310 ,p_level => C_LEVEL_PROCEDURE
1311 ,p_module => l_log_module);
1312 trace
1313 (p_msg => 'p_ledger_id = '||p_ledger_id
1314 ,p_level => C_LEVEL_PROCEDURE
1315 ,p_module => l_log_module);
1316 trace
1317 (p_msg => 'p_ae_header_id = '||p_ae_header_id
1318 ,p_level => C_LEVEL_PROCEDURE
1319 ,p_module => l_log_module);
1320 trace
1321 (p_msg => 'p_ae_line_num = '||p_ae_line_num
1322 ,p_level => C_LEVEL_PROCEDURE
1323 ,p_module => l_log_module);
1324 trace
1325 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
1326 ,p_level => C_LEVEL_PROCEDURE
1327 ,p_module => l_log_module);
1328 END IF;
1329
1330 xla_messages_pkg.build_message
1334 ,p_value_1 => p_value_1
1331 (p_appli_s_name => p_appli_s_name
1332 ,p_msg_name => p_msg_name
1333 ,p_token_1 => p_token_1
1335 ,p_token_2 => p_token_2
1336 ,p_value_2 => p_value_2
1337 ,p_token_3 => p_token_3
1338 ,p_value_3 => p_value_3
1339 ,p_token_4 => p_token_4
1340 ,p_value_4 => p_value_4
1341 ,p_token_5 => p_token_5
1342 ,p_value_5 => p_value_5
1343 ,p_token_6 => p_token_6
1344 ,p_value_6 => p_value_6);
1345
1346 stack_error
1347 (p_appli_s_name => p_appli_s_name
1348 ,p_msg_name => p_msg_name
1349 ,p_entity_id => p_entity_id
1350 ,p_event_id => p_event_id
1351 ,p_ledger_id => p_ledger_id
1352 ,p_ae_header_id => p_ae_header_id
1353 ,p_ae_line_num => p_ae_line_num
1354 ,p_accounting_batch_id => p_accounting_batch_id);
1355
1356 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1357 trace
1358 (p_msg => 'END of procedure BUILD_MESSAGE'
1359 ,p_level => C_LEVEL_PROCEDURE
1360 ,p_module => l_log_module);
1361 END IF;
1362 EXCEPTION
1363 WHEN xla_exceptions_pkg.application_exception THEN
1364 RAISE;
1365 WHEN OTHERS THEN
1366 IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
1367 trace
1368 (p_msg => 'p_appli_s_name = '||p_appli_s_name
1369 ,p_level => C_LEVEL_EXCEPTION
1370 ,p_module => l_log_module);
1371 trace
1372 (p_msg => 'p_msg_name = '||p_msg_name
1373 ,p_level => C_LEVEL_EXCEPTION
1374 ,p_module => l_log_module);
1375 trace
1376 (p_msg => 'p_token_1 = '||p_token_1
1377 ,p_level => C_LEVEL_EXCEPTION
1378 ,p_module => l_log_module);
1379 trace
1380 (p_msg => 'p_value_1 = '||p_value_1
1381 ,p_level => C_LEVEL_EXCEPTION
1382 ,p_module => l_log_module);
1383 trace
1384 (p_msg => 'p_token_2 = '||p_token_2
1385 ,p_level => C_LEVEL_EXCEPTION
1386 ,p_module => l_log_module);
1387 trace
1388 (p_msg => 'p_value_2 = '||p_value_2
1389 ,p_level => C_LEVEL_EXCEPTION
1390 ,p_module => l_log_module);
1391 trace
1392 (p_msg => 'p_token_3 = '||p_token_3
1393 ,p_level => C_LEVEL_EXCEPTION
1394 ,p_module => l_log_module);
1395 trace
1396 (p_msg => 'p_value_3 = '||p_value_3
1397 ,p_level => C_LEVEL_EXCEPTION
1398 ,p_module => l_log_module);
1399 trace
1400 (p_msg => 'p_token_4 = '||p_token_4
1401 ,p_level => C_LEVEL_EXCEPTION
1402 ,p_module => l_log_module);
1403 trace
1404 (p_msg => 'p_value_4 = '||p_value_4
1405 ,p_level => C_LEVEL_EXCEPTION
1406 ,p_module => l_log_module);
1407 trace
1408 (p_msg => 'p_token_5 = '||p_token_5
1409 ,p_level => C_LEVEL_EXCEPTION
1410 ,p_module => l_log_module);
1411 trace
1412 (p_msg => 'p_value_5 = '||p_value_5
1413 ,p_level => C_LEVEL_EXCEPTION
1414 ,p_module => l_log_module);
1415 trace
1416 (p_msg => 'p_token_6 = '||p_token_6
1417 ,p_level => C_LEVEL_EXCEPTION
1418 ,p_module => l_log_module);
1419 trace
1420 (p_msg => 'p_value_6 = '||p_value_6
1421 ,p_level => C_LEVEL_EXCEPTION
1422 ,p_module => l_log_module);
1423 trace
1424 (p_msg => 'p_entity_id = '||p_entity_id
1425 ,p_level => C_LEVEL_EXCEPTION
1426 ,p_module => l_log_module);
1427 trace
1428 (p_msg => 'p_event_id = '||p_event_id
1429 ,p_level => C_LEVEL_EXCEPTION
1430 ,p_module => l_log_module);
1431 trace
1432 (p_msg => 'p_ledger_id = '||p_ledger_id
1433 ,p_level => C_LEVEL_EXCEPTION
1434 ,p_module => l_log_module);
1435 trace
1436 (p_msg => 'p_ae_header_id = '||p_ae_header_id
1437 ,p_level => C_LEVEL_EXCEPTION
1438 ,p_module => l_log_module);
1439 trace
1440 (p_msg => 'p_ae_line_num = '||p_ae_line_num
1441 ,p_level => C_LEVEL_EXCEPTION
1442 ,p_module => l_log_module);
1443 trace
1444 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
1445 ,p_level => C_LEVEL_EXCEPTION
1446 ,p_module => l_log_module);
1447 END IF;
1448
1449 xla_exceptions_pkg.raise_message
1450 (p_location => 'xla_accounting_err_pkg.build_message');
1451 END build_message; -- end of procedure
1452
1453
1454 --=============================================================================
1455 --
1456 --
1457 --=============================================================================
1458 FUNCTION get_total_error_count
1459 RETURN NUMBER IS
1460 l_total_error_count NUMBER;
1461 l_log_module VARCHAR2(240);
1462 BEGIN
1463 IF g_log_enabled THEN
1464 l_log_module := C_DEFAULT_MODULE||'.get_total_error_count';
1465 END IF;
1466 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1467 trace
1468 (p_msg => 'BEGIN of function GET_TOTAL_ERROR_COUNT'
1469 ,p_level => C_LEVEL_PROCEDURE
1473 l_total_error_count := NVL(xla_context_pkg.get_acct_err_context, 0);
1470 ,p_module => l_log_module);
1471 END IF;
1472
1474
1475 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1476 trace
1477 (p_msg => 'RETURN value l_total_error_count = '||l_total_error_count
1478 ,p_level => C_LEVEL_PROCEDURE
1479 ,p_module => l_log_module);
1480 trace
1481 (p_msg => 'END of function GET_TOTAL_ERROR_COUNT'
1482 ,p_level => C_LEVEL_PROCEDURE
1483 ,p_module => l_log_module);
1484 END IF;
1485
1486 RETURN l_total_error_count;
1487 EXCEPTION
1488 WHEN xla_exceptions_pkg.application_exception THEN
1489 RAISE;
1490 WHEN OTHERS THEN
1491 xla_exceptions_pkg.raise_message
1492 (p_location => 'xla_accounting_err_pkg.get_total_error_count');
1493 END get_total_error_count; -- end of function
1494
1495
1496 --=============================================================================
1497 --
1498 --
1499 --=============================================================================
1500
1501 PROCEDURE initialize
1502 (p_client_id IN VARCHAR2 DEFAULT NULL
1503 ,p_error_limit IN NUMBER DEFAULT NULL
1504 ,p_error_source IN VARCHAR2 DEFAULT NULL
1505 ,p_request_id IN NUMBER DEFAULT NULL
1506 ,p_application_id IN NUMBER DEFAULT NULL) IS
1507 l_log_module VARCHAR2(240);
1508 BEGIN
1509 IF g_log_enabled THEN
1510 l_log_module := C_DEFAULT_MODULE||'.initialize';
1511 END IF;
1512 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1513 trace
1514 (p_msg => 'BEGIN of procedure INITIALIZE'
1515 ,p_level => C_LEVEL_PROCEDURE
1516 ,p_module => l_log_module);
1517 trace
1518 (p_msg => 'p_client_id = '||p_client_id
1519 ,p_level => C_LEVEL_PROCEDURE
1520 ,p_module => l_log_module);
1521 trace
1522 (p_msg => 'p_error_limit = '||p_error_limit
1523 ,p_level => C_LEVEL_PROCEDURE
1524 ,p_module => l_log_module);
1525 trace
1526 (p_msg => 'p_error_source = '||p_error_source
1527 ,p_level => C_LEVEL_PROCEDURE
1528 ,p_module => l_log_module);
1529 trace
1530 (p_msg => 'p_request_id = '||p_request_id
1531 ,p_level => C_LEVEL_PROCEDURE
1532 ,p_module => l_log_module);
1533 trace
1534 (p_msg => 'p_application_id = '||p_application_id
1535 ,p_level => C_LEVEL_PROCEDURE
1536 ,p_module => l_log_module);
1537 END IF;
1538
1539 g_client_id := p_client_id;
1540 g_error_limit := p_error_limit;
1541 g_error_source := p_error_source;
1542 g_request_id := NVL(p_request_id,NVL(g_request_id,xla_environment_pkg.g_req_id));
1543 g_application_id := NVL(p_application_id,NVL(g_application_id,fnd_profile.value('RESP_APPL_ID')));
1544 g_error_count := 0;
1545 g_warning_count := 0;
1546
1547 reset;
1548
1549 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1550 trace
1551 (p_msg => 'END of procedure INITIALIZE'
1552 ,p_level => C_LEVEL_PROCEDURE
1553 ,p_module => l_log_module);
1554 END IF;
1555 EXCEPTION
1556 WHEN xla_exceptions_pkg.application_exception THEN
1557 RAISE;
1558 WHEN OTHERS THEN
1559 xla_exceptions_pkg.raise_message
1560 (p_location => 'xla_accounting_err_pkg.initialize');
1561 END initialize; -- end of procedure
1562
1563
1569 --=============================================================================
1564 --=============================================================================
1565 --
1566 -- Following inserts the stacked errors into the error table in the database.
1567 -- Once the errors have been inserted it calls the "reset"
1568 --
1570
1571 PROCEDURE insert_errors IS
1572 l_log_module VARCHAR2(240);
1573 BEGIN
1574 IF g_log_enabled THEN
1575 l_log_module := C_DEFAULT_MODULE||'.insert_errors';
1576 END IF;
1577 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1578 trace
1579 (p_msg => 'BEGIN of procedure INSERT_ERRORS'
1580 ,p_level => C_LEVEL_PROCEDURE
1581 ,p_module => l_log_module);
1582 END IF;
1583
1584 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
1585 trace
1586 (p_msg => 'Count of Error Messages in the stack = '||g_error_index
1587 ,p_level => C_LEVEL_STATEMENT
1588 ,p_module => l_log_module);
1589 END IF;
1590
1591 IF g_error_index > 0 THEN
1592 FOR i IN g_accounting_errors.FIRST..g_accounting_errors.LAST LOOP
1593 INSERT INTO xla_accounting_errors
1594 (accounting_error_id
1595 ,application_id
1596 ,event_id
1597 ,entity_id
1598 ,ledger_id
1599 ,ae_header_id
1600 ,ae_line_num
1601 ,accounting_batch_id
1602 ,message_number
1603 ,encoded_msg
1604 ,error_source_code
1605 ,created_by
1606 ,creation_date
1607 ,last_update_date
1608 ,last_updated_by
1609 ,last_update_login
1610 ,program_update_date
1611 ,program_application_id
1612 ,program_id
1613 ,request_id)
1614 VALUES (xla_accounting_errors_s.nextval
1615 ,g_accounting_errors(i).application_id
1616 ,g_accounting_errors(i).event_id
1617 ,g_accounting_errors(i).entity_id
1618 ,g_accounting_errors(i).ledger_id
1619 ,g_accounting_errors(i).ae_header_id
1620 ,g_accounting_errors(i).ae_line_num
1621 ,g_accounting_errors(i).accounting_batch_id
1622 ,g_accounting_errors(i).message_number
1623 ,g_accounting_errors(i).encoded_msg
1624 ,g_accounting_errors(i).error_source_code
1625 ,xla_environment_pkg.g_usr_id
1626 ,sysdate
1627 ,sysdate
1628 ,xla_environment_pkg.g_usr_id
1629 ,xla_environment_pkg.g_login_id
1630 ,NULL
1631 ,xla_environment_pkg.g_prog_appl_id
1632 ,xla_environment_pkg.g_prog_id
1633 ,g_accounting_errors(i).request_id);
1634 END LOOP;
1635 END IF;
1636
1637 ----------------------------------------------------------------------------
1638 -- call to reset is made to clear the pl/sql array
1639 ----------------------------------------------------------------------------
1640 reset;
1641
1642 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1643 trace
1644 (p_msg => 'END of procedure INSERT_ERRORS'
1645 ,p_level => C_LEVEL_PROCEDURE
1646 ,p_module => l_log_module);
1647 END IF;
1648 EXCEPTION
1649 WHEN xla_exceptions_pkg.application_exception THEN
1650 RAISE;
1651 WHEN OTHERS THEN
1652 xla_exceptions_pkg.raise_message
1653 (p_location => 'xla_accounting_err_pkg.insert_errors');
1654 END insert_errors; -- end of procedure
1655
1656
1657
1658 --=============================================================================
1659 --
1660 --
1661 --
1662 --=============================================================================
1663
1664 PROCEDURE set_options
1665 (p_error_source IN VARCHAR2 DEFAULT NULL
1666 ,p_request_id IN NUMBER DEFAULT NULL
1667 ,p_application_id IN NUMBER DEFAULT NULL) IS
1668 l_log_module VARCHAR2(240);
1669 BEGIN
1670 IF g_log_enabled THEN
1671 l_log_module := C_DEFAULT_MODULE||'.set_options';
1672 END IF;
1673 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1674 trace
1675 (p_msg => 'BEGIN of procedure SET_OPTIONS'
1676 ,p_level => C_LEVEL_PROCEDURE
1677 ,p_module => l_log_module);
1678 trace
1679 (p_msg => 'p_error_source = '||p_error_source
1680 ,p_level => C_LEVEL_PROCEDURE
1681 ,p_module => l_log_module);
1682 trace
1683 (p_msg => 'p_request_id = '||p_request_id
1684 ,p_level => C_LEVEL_PROCEDURE
1685 ,p_module => l_log_module);
1686 trace
1687 (p_msg => 'p_application_id = '||p_application_id
1688 ,p_level => C_LEVEL_PROCEDURE
1689 ,p_module => l_log_module);
1690 END IF;
1691
1692 g_error_source := NVL(p_error_source, g_error_source);
1693 g_request_id := NVL(p_request_id, g_request_id);
1694 g_application_id := NVL(p_application_id, g_application_id);
1695
1696 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
1697 trace
1698 (p_msg => 'g_error_source = '||g_error_source
1699 ,p_level => C_LEVEL_STATEMENT
1700 ,p_module => l_log_module);
1701 trace
1702 (p_msg => 'g_request_id = '||g_request_id
1706 (p_msg => 'g_application_id = '||g_application_id
1703 ,p_level => C_LEVEL_STATEMENT
1704 ,p_module => l_log_module);
1705 trace
1707 ,p_level => C_LEVEL_STATEMENT
1708 ,p_module => l_log_module);
1709 END IF;
1710
1711 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1712 trace
1713 (p_msg => 'END of procedure SET_OPTIONS'
1714 ,p_level => C_LEVEL_PROCEDURE
1715 ,p_module => l_log_module);
1716 END IF;
1717 EXCEPTION
1718 WHEN xla_exceptions_pkg.application_exception THEN
1719 RAISE;
1720 WHEN OTHERS THEN
1721 xla_exceptions_pkg.raise_message
1722 (p_location => 'xla_accounting_err_pkg.set_options');
1723 END set_options; -- end of procedure
1724
1725
1726
1730 --=============================================================================
1727 --=============================================================================
1728 -- *********** private procedures and functions **********
1729 --=============================================================================
1731 --
1732 --
1733 --
1734 --
1735 --
1736 --
1737 --
1738 --
1739 --
1740 --
1741 -- Following are the private routines:
1742 --
1743 -- 1. stack_error
1744 -- 2. reset
1745 --
1746 --
1747 --
1748 --
1749 --
1750 --
1751 --
1752 --
1753 --
1754 --
1755 --
1756 --=============================================================================
1757
1758 --=============================================================================
1759 --
1760 -- stack_error procedure, when called, reads the message from the fnd's message
1761 -- stack and stores it in a pl/sql array. It assumes that all the errors for
1762 -- an event are stacked before stacking errors for another event.
1763 --
1764 --=============================================================================
1765
1766 PROCEDURE stack_error
1767 (p_appli_s_name IN VARCHAR2
1768 ,p_msg_name IN VARCHAR2
1769 ,p_entity_id IN NUMBER
1770 ,p_event_id IN NUMBER
1771 ,p_ledger_id IN NUMBER DEFAULT NULL
1772 ,p_ae_header_id IN NUMBER DEFAULT NULL
1773 ,p_ae_line_num IN NUMBER DEFAULT NULL
1774 ,p_accounting_batch_id IN NUMBER DEFAULT NULL) IS
1775 l_encoded_msg VARCHAR2(2000);
1776 l_msg_number NUMBER;
1777 l_ntemp NUMBER;
1778 l_log_module VARCHAR2(240);
1779 BEGIN
1780 IF g_log_enabled THEN
1781 l_log_module := C_DEFAULT_MODULE||'.stack_error';
1782 END IF;
1783 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1784 trace
1785 (p_msg => 'BEGIN of procedure STACK_ERROR'
1786 ,p_level => C_LEVEL_PROCEDURE
1787 ,p_module => l_log_module);
1788 trace
1789 (p_msg => 'p_appli_s_name = '||p_appli_s_name
1790 ,p_level => C_LEVEL_PROCEDURE
1791 ,p_module => l_log_module);
1792 trace
1793 (p_msg => 'p_msg_name = '||p_msg_name
1794 ,p_level => C_LEVEL_PROCEDURE
1795 ,p_module => l_log_module);
1796 trace
1797 (p_msg => 'p_entity_id = '||p_entity_id
1798 ,p_level => C_LEVEL_PROCEDURE
1799 ,p_module => l_log_module);
1800 trace
1801 (p_msg => 'p_event_id = '||p_event_id
1802 ,p_level => C_LEVEL_PROCEDURE
1803 ,p_module => l_log_module);
1804 trace
1805 (p_msg => 'p_ledger_id = '||p_ledger_id
1806 ,p_level => C_LEVEL_PROCEDURE
1807 ,p_module => l_log_module);
1808 trace
1809 (p_msg => 'p_ae_header_id = '||p_ae_header_id
1810 ,p_level => C_LEVEL_PROCEDURE
1811 ,p_module => l_log_module);
1812 trace
1813 (p_msg => 'p_ae_line_num = '||p_ae_line_num
1814 ,p_level => C_LEVEL_PROCEDURE
1815 ,p_module => l_log_module);
1816 trace
1817 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
1818 ,p_level => C_LEVEL_PROCEDURE
1819 ,p_module => l_log_module);
1820 END IF;
1821
1822 ----------------------------------------------------------------------------
1823 -- Store error message in plsql array
1824 -- Error messages are stored in 'encoded' form as retrived using fnd_message
1825 -- API.
1826 -- This has changed bug # 3113574. Now, the error message is not stored as
1827 -- encoded but as translated message.
1828 ----------------------------------------------------------------------------
1832 l_msg_number := NVL(l_msg_number, -1);
1829 l_msg_number := fnd_message.get_number
1830 (p_appli_s_name
1831 ,p_msg_name);
1833
1834 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
1835 trace
1836 (p_msg => 'l_msg_number = '||l_msg_number
1837 ,p_level => C_LEVEL_STATEMENT
1838 ,p_module => l_log_module);
1839 END IF;
1840
1841 --l_encoded_msg := fnd_message.get_encoded;
1842 l_encoded_msg := fnd_message.get();
1843
1844 g_error_index := g_error_index + 1;
1845 g_error_count := g_error_count + 1;
1846
1847 IF (p_msg_name IN ('XLA_BC_ADVISORY_HDR', 'XLA_BC_PARTIAL_HDR',
1848 'XLA_BC_ADVISORY_LINE', 'XLA_BC_PARTIAL_LINE')) THEN
1849 g_warning_count := g_warning_count + 1;
1850 END IF;
1851
1852 g_accounting_errors(g_error_index).application_id := g_application_id;
1853 g_accounting_errors(g_error_index).event_id := p_event_id;
1854 g_accounting_errors(g_error_index).entity_id := p_entity_id;
1855 g_accounting_errors(g_error_index).ledger_id := p_ledger_id;
1856 g_accounting_errors(g_error_index).ae_header_id := p_ae_header_id;
1857 g_accounting_errors(g_error_index).ae_line_num := p_ae_line_num;
1858 g_accounting_errors(g_error_index).accounting_batch_id := p_accounting_batch_id;
1859 g_accounting_errors(g_error_index).message_number := l_msg_number;
1860 g_accounting_errors(g_error_index).encoded_msg := l_encoded_msg;
1861 g_accounting_errors(g_error_index).error_source_code := g_error_source;
1862 g_accounting_errors(g_error_index).request_id := g_request_id;
1863
1864 -------------------------------------------------------------------------
1865 -- In batch mode count of errors for a ledger are stored in a
1866 -- global context. Following updates the value in the global context.
1867 -------------------------------------------------------------------------
1868 IF g_client_id IS NOT NULL THEN
1869 l_ntemp := NVL(xla_context_pkg.get_acct_err_context, 0) + 1;
1870
1871 xla_context_pkg.set_acct_err_context
1872 (p_error_count => l_ntemp
1873 ,p_client_id => g_client_id);
1874 END IF;
1875
1876 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1877 trace
1878 (p_msg => 'END of procedure STACK_ERROR'
1879 ,p_level => C_LEVEL_PROCEDURE
1880 ,p_module => l_log_module);
1881 END IF;
1882 EXCEPTION
1883 WHEN xla_exceptions_pkg.application_exception THEN
1884 RAISE;
1885 WHEN OTHERS THEN
1886 IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
1887 trace
1888 (p_msg => 'p_appli_s_name = '||p_appli_s_name
1889 ,p_level => C_LEVEL_EXCEPTION
1890 ,p_module => l_log_module);
1891 trace
1892 (p_msg => 'p_msg_name = '||p_msg_name
1893 ,p_level => C_LEVEL_EXCEPTION
1894 ,p_module => l_log_module);
1895 trace
1896 (p_msg => 'p_entity_id = '||p_entity_id
1897 ,p_level => C_LEVEL_EXCEPTION
1898 ,p_module => l_log_module);
1899 trace
1900 (p_msg => 'p_event_id = '||p_event_id
1901 ,p_level => C_LEVEL_EXCEPTION
1902 ,p_module => l_log_module);
1903 trace
1904 (p_msg => 'p_ledger_id = '||p_ledger_id
1905 ,p_level => C_LEVEL_EXCEPTION
1906 ,p_module => l_log_module);
1907 trace
1908 (p_msg => 'p_ae_header_id = '||p_ae_header_id
1909 ,p_level => C_LEVEL_EXCEPTION
1910 ,p_module => l_log_module);
1911 trace
1912 (p_msg => 'p_ae_line_num = '||p_ae_line_num
1913 ,p_level => C_LEVEL_EXCEPTION
1914 ,p_module => l_log_module);
1915 trace
1916 (p_msg => 'p_accounting_batch_id = '||p_accounting_batch_id
1917 ,p_level => C_LEVEL_EXCEPTION
1918 ,p_module => l_log_module);
1919 trace
1920 (p_msg => 'g_error_count = '||g_error_count
1921 ,p_level => C_LEVEL_EXCEPTION
1922 ,p_module => l_log_module);
1923 trace
1924 (p_msg => 'g_warning_count = '||g_warning_count
1925 ,p_level => C_LEVEL_EXCEPTION
1926 ,p_module => l_log_module);
1927 trace
1928 (p_msg => 'g_client_id = '||g_client_id
1929 ,p_level => C_LEVEL_EXCEPTION
1930 ,p_module => l_log_module);
1931 trace
1932 (p_msg => 'l_msg_number = '||l_msg_number
1933 ,p_level => C_LEVEL_EXCEPTION
1934 ,p_module => l_log_module);
1935 trace
1936 (p_msg => 'g_error_index = '||g_error_index
1937 ,p_level => C_LEVEL_EXCEPTION
1938 ,p_module => l_log_module);
1939 END IF;
1940
1941 xla_exceptions_pkg.raise_message
1942 (p_location => 'xla_accounting_err_pkg.stack_error');
1943 END stack_error; -- end of procedure
1944
1945
1946
1947 --=============================================================================
1948 --
1949 -- reset procedure reinitializes the pl/sql array in which errors are stacked
1950 -- in the memmory.
1951 --
1952 --=============================================================================
1953
1954 PROCEDURE reset IS
1955 l_log_module VARCHAR2(240);
1956 BEGIN
1957 IF g_log_enabled THEN
1958 l_log_module := C_DEFAULT_MODULE||'.reset';
1959 END IF;
1960 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1961 trace
1962 (p_msg => 'BEGIN of procedure RESET'
1963 ,p_level => C_LEVEL_PROCEDURE
1964 ,p_module => l_log_module);
1965 END IF;
1966
1970 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1967 g_error_index := 0;
1968 g_accounting_errors.DELETE;
1969
1971 trace
1972 (p_msg => 'END of procedure RESET'
1973 ,p_level => C_LEVEL_PROCEDURE
1974 ,p_module => l_log_module);
1975 END IF;
1976 EXCEPTION
1977 WHEN xla_exceptions_pkg.application_exception THEN
1978 RAISE;
1979 WHEN OTHERS THEN
1980 xla_exceptions_pkg.raise_message
1981 (p_location => 'xla_accounting_err_pkg.reset');
1982 END reset; -- end of procedure
1983
1984
1985 --=============================================================================
1986 -- *********** Initialization routine **********
1987 --=============================================================================
1988
1989 --=============================================================================
1990 --
1991 --
1992 --
1993 --
1994 --
1995 --
1996 --
1997 --
1998 --
1999 --
2000 -- Following code is executed when the package body is referenced for the first
2001 -- time
2002 --
2003 --
2004 --
2005 --
2006 --
2007 --
2008 --
2009 --
2010 --
2011 --
2012 --
2013 --
2014 --=============================================================================
2015
2016 BEGIN
2017 g_log_level := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
2018 g_log_enabled := fnd_log.test
2019 (log_level => g_log_level
2020 ,module => C_DEFAULT_MODULE);
2021
2022 IF NOT g_log_enabled THEN
2023 g_log_level := C_LEVEL_LOG_DISABLED;
2024 END IF;
2025 initialize;
2026
2027 END xla_accounting_err_pkg;