DBA Data[Home] [Help]

PACKAGE BODY: APPS.XLA_AE_SOURCES_PKG

Source


1 PACKAGE BODY xla_ae_sources_pkg AS
2 /* $Header: xlajescs.pkb 120.30 2006/04/07 16:41:40 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_ae_sources_pkg                                                     |
10 |                                                                            |
11 | DESCRIPTION                                                                |
12 |                                                                            |
13 |                                                                            |
14 | HISTORY                                                                    |
15 |     20-NOV-2002 K.Boussema    Created                                      |
16 |     13-MAR-2003 K.Boussema    Made changes for the new bulk approach of the|
17 |                               accounting engine                            |
18 |     19-APR-2003 K.Boussema    Included Error messages                      |
19 |     13-MAI-2003 K.Boussema    Updated Code messages                        |
20 |     16-MAI-2003 K.Boussema    Changed to accept value NULL for some system |
21 |                               sources.                                     |
22 |     19-MAI-2003 K.Boussema    Modified GetTranslatedLookupMeaning          |
23 |                               GetUnTranslatedLookupMeaning                 |
24 |                               and get_flex_value_meaning                   |
25 |                               to fix BUG 2965699                           |
26 |     30-MAI-2003 K.Boussema    Reviewed get_flex_value_meaning, bug2975670  |
27 |     12-JUN-2003 K.Boussema    Reviewed GetSystemSource fcts, bug 2990642   |
28 |     23-JUN-2003 K.Boussema   Updated the call to get_period_name bug3005754|
29 |     30-JUN-2003 K.Boussema   Changed XLA_PERIOD_TYPES by XLA_PERIOD_TYPE   |
30 |     17-JUL-2003 K.Boussema    Updated the call to accounting cache, 3055039|
31 |     21-JUL-2003 K.Boussema   Changed the source name from                  |
32 |                              GL_COA_MAPPINGS_NAME to GL_COA_MAPPING_NAME   |
33 |                              Updated to trap NO_DATA_FOUND exception       |
34 |     24-JUL-2003 K.Boussema    Updated the error messages                   |
35 |     29-JUL-2003 K.Boussema   Included the retrieve of 'Legal entity name'  |
36 |     04-AUG-2003 S.Singhania  corrected a typo in the source code:          |
37 |                               XLA_ACCOUNTING_METHOD_NAME                   |
38 |     01-SEP-2003 K.Boussema   Removed XLA_LEGAL_ENTITY_NAME system source   |
39 |                              Add the update of JE status if system source  |
40 |                              invalid                                       |
41 |     19-SEP-2003 K.Boussema   Added new system source XLA_JE_CATEGORY_NAME  |
42 |     15-DEC-2003 K.Boussema   Removed get_flex_value_meaning function       |
43 |     18-DEC-2003 K.Boussema   Changed to fix bug 3042840,3307761,3268940    |
44 |                               3310291 and 3320689                          |
45 |     05-FEB-2004 K.Boussema   Reviewed get_mapping_flexfield_char/number    |
46 |     16-FEB-2004 K.Boussema   Made changes for the FND_LOG.                 |
47 |     22-MAR-2004 K.Boussema    Added a parameter p_module to the TRACE calls|
48 |                               and the procedure.                           |
49 |     11-MAY-2004 K.Boussema   Removed the call to XLA trace routine from    |
50 |                               trace() procedure                            |
51 |     17-May-2004 W.Shen       change the view name from xla_acctg_sources_tl|
52 |                               to xla_acct_attributes_tl                    |
53 |     22-Sep-2004 S.Singhania  Made minor changes for bulk performance:      |
54 |                                - Changes to calls to build_message.        |
55 |     17-Jan-2006 A.Wan        4731177 Do not error if no value found.       |
56 +===========================================================================*/
57 --
58 --
59 --+==========================================================================+
60 --|                                                                          |
61 --| Global variables                                                         |
62 --|                                                                          |
63 --+==========================================================================+
64 ---
65 -- period type and name cache
66 --
67 g_period_name                        VARCHAR2(15);
68 g_period_type                        VARCHAR2(15);
69 g_period_ledger_id                   NUMBER;
70 g_period_date                        DATE;
71 --
72 --
73 -- Lookup meaning cache
74 --
75 g_meaning_lookup_type                VARCHAR2(30);
76 g_meaning_lookup_code                VARCHAR2(30);
77 g_meaning_lookup_language            VARCHAR2(30);
78 g_meaning_view_appl_id               NUMBER;
79 g_meaning_start_date                 DATE;
80 g_meaning_end_date                   DATE;
81 g_meaning_lookup                     VARCHAR2(80);
82 --
83 --=============================================================================
84 --               *********** Local Trace Routine **********
85 --=============================================================================
86 
87 C_LEVEL_STATEMENT     CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
88 C_LEVEL_PROCEDURE     CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
89 C_LEVEL_EVENT         CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
90 C_LEVEL_EXCEPTION     CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
91 C_LEVEL_ERROR         CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
92 C_LEVEL_UNEXPECTED    CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
93 
94 C_LEVEL_LOG_DISABLED  CONSTANT NUMBER := 99;
95 C_DEFAULT_MODULE      CONSTANT VARCHAR2(240) := 'xla.plsql.xla_ae_sources_pkg';
96 
97 g_log_level           NUMBER;
98 g_log_enabled         BOOLEAN;
99 
100 PROCEDURE trace
101            (p_msg                        IN VARCHAR2
102            ,p_level                      IN NUMBER
103            ,p_module                     IN VARCHAR2 DEFAULT C_DEFAULT_MODULE)
104 IS
105 BEGIN
106        ----------------------------------------------------------------------------
107        -- Following is for FND log.
108        ----------------------------------------------------------------------------
109        IF (p_msg IS NULL AND p_level >= g_log_level) THEN
110           fnd_log.message(p_level, p_module);
111        ELSIF p_level >= g_log_level THEN
112           fnd_log.string(p_level, p_module, p_msg);
113        END IF;
114 
115 EXCEPTION
116    WHEN xla_exceptions_pkg.application_exception THEN
117           RAISE;
118    WHEN OTHERS THEN
119           xla_exceptions_pkg.raise_message
120              (p_location   => 'xla_ae_sources_pkg.trace');
121 END trace;
122 --
123 --+==========================================================================+
124 --|                                                                          |
125 --| OVERVIEW of private procedures and functions                             |
126 --|                                                                          |
127 --+==========================================================================+
128 --
129 --
130 --+==========================================================================+
131 --| PUBLIC and Privates APIs to get the name in the language of teh session  |
132 --|                                                                          |
133 --|                                                                          |
134 --|                                                                          |
135 --|                                                                          |
136 --|                                                                          |
137 --|                                                                          |
138 --|                                                                          |
139 --|                                                                          |
140 --|                                                                          |
141 --|                                                                          |
142 --|                                                                          |
143 --|                                                                          |
144 --|                                                                          |
145 --+==========================================================================+
146 --
147 --+==========================================================================+
148 --|                                                                          |
149 --| PUBLIC   function                                                        |
150 --|                                                                          |
151 --+==========================================================================+
152 --
153 FUNCTION GetApplicationName (p_application_id   IN NUMBER)
154 RETURN VARCHAR2
155 IS
156 l_application_name          VARCHAR2(240);
157 l_log_module                VARCHAR2(240);
158 BEGIN
159 --
160 IF g_log_enabled THEN
161       l_log_module := C_DEFAULT_MODULE||'.GetApplicationName';
162 END IF;
163 --
164 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
165       trace
166          (p_msg      => 'BEGIN of GetApplicationName'
167          ,p_level    => C_LEVEL_PROCEDURE
168          ,p_module   => l_log_module);
169 
170       trace
171           (p_msg      => 'p_application_id = '|| TO_CHAR(p_application_id)
172          ,p_level    => C_LEVEL_PROCEDURE
173          ,p_module   => l_log_module);
174 
175 END IF;
176 --
177 IF p_application_id  IS NOT NULL THEN
178 
179   SELECT  REPLACE(fat.application_name, '''','''''')
180     INTO  l_application_name
181     FROM  fnd_application_tl fat
182    WHERE  fat.application_id = p_application_id
183      AND  fat.language = nvl(USERENV('LANG'),fat.language)
184      ;
185 --
186 ELSE
187   l_application_name:= NULL;
188 END IF;
189 
190 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
191 
192        trace
193          (p_msg      => 'return value. = '||l_application_name
194          ,p_level    => C_LEVEL_PROCEDURE
195          ,p_module   => l_log_module);
196 
197        trace
198          (p_msg      => 'END of GetApplicationName'
199          ,p_level    => C_LEVEL_PROCEDURE
200          ,p_module   => l_log_module);
201 
202 END IF;
203 RETURN l_application_name;
204 EXCEPTION
205  WHEN OTHERS THEN
206     RETURN TO_CHAR(p_application_id);
207 END GetApplicationName;
208 --
209 /*======================================================================+
210 |                                                                       |
211 | Public Function                                                       |
212 |    GetSourceName                                                      |
213 |                                                                       |
214 +======================================================================*/
215 FUNCTION GetSourceName(
216   p_source_code           IN VARCHAR2
217 , p_source_type_code      IN VARCHAR2
218 , p_source_application_id IN NUMBER
219 )
220 RETURN VARCHAR2
221 IS
222   l_source_name        VARCHAR2(240);
223   l_log_module         VARCHAR2(240);
224 BEGIN
225 --
226 IF g_log_enabled THEN
227       l_log_module := C_DEFAULT_MODULE||'.GetSourceName';
228 END IF;
229 --
230 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
231       trace
232          (p_msg      => 'BEGIN of GetSourceName'
233          ,p_level    => C_LEVEL_PROCEDURE
234          ,p_module   => l_log_module);
235 
236       trace
237           (p_msg      => 'p_source_code = '|| p_source_code
238          ,p_level    => C_LEVEL_PROCEDURE
239          ,p_module   => l_log_module);
240 
241       trace
242           (p_msg      => 'p_source_type_code = '|| p_source_type_code
243          ,p_level    => C_LEVEL_PROCEDURE
244          ,p_module   => l_log_module);
245 
246       trace
247           (p_msg      => 'p_source_application_id = '|| TO_CHAR(p_source_application_id)
248          ,p_level    => C_LEVEL_PROCEDURE
249          ,p_module   => l_log_module);
250 END IF;
251 --
252 IF p_source_code IS NOT NULL THEN
253 
254   SELECT  REPLACE(xst.name, '''','''''')
255     INTO  l_source_name
256     FROM  xla_sources_tl   xst
257    WHERE  xst.application_id   = p_source_application_id
258      AND  xst.source_type_code = p_source_type_code
259      AND  xst.source_code      = p_source_code
260      AND  xst.language         = nvl(USERENV('LANG'),xst.language)
261      ;
262 ELSE
263    l_source_name := NULL;
264 END IF;
265 
266 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
267 
268        trace
269          (p_msg      => 'return value. = '||l_source_name
270          ,p_level    => C_LEVEL_PROCEDURE
271          ,p_module   => l_log_module);
272 
273        trace
274          (p_msg      => 'END of GetSourceName'
275          ,p_level    => C_LEVEL_PROCEDURE
276          ,p_module   => l_log_module);
277 
278 END IF;
279 
280 RETURN l_source_name;
281 EXCEPTION
282  WHEN OTHERS THEN
283     RETURN p_source_code;
284 END GetSourceName;
285 --
286 --
287 --+==========================================================================+
288 --|                                                                          |
289 --| PUBLIC  function                                                         |
290 --|                                                                          |
291 --+==========================================================================+
292 --
293 FUNCTION GetAccountingSourceName (p_accounting_source_code   IN VARCHAR2)
294 RETURN VARCHAR2
295 IS
296 l_name               VARCHAR2(80);
297 l_log_module         VARCHAR2(240);
298 BEGIN
299 --
300 IF g_log_enabled THEN
301       l_log_module := C_DEFAULT_MODULE||'.GetAccountingSourceName';
302 END IF;
303 --
304 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
305       trace
306          (p_msg      => 'BEGIN of GetAccountingSourceName'
307          ,p_level    => C_LEVEL_PROCEDURE
308          ,p_module   => l_log_module);
309 
310       trace
311           (p_msg      => 'p_accounting_source_code = '|| p_accounting_source_code
312          ,p_level    => C_LEVEL_PROCEDURE
313          ,p_module   => l_log_module);
314 
315 END IF;
316 --
317 IF p_accounting_source_code IS NOT NULL THEN
318 
319   SELECT  REPLACE(xast.name ,'''','''''')
320     INTO  l_name
321     FROM  xla_acct_attributes_tl xast
322    WHERE  xast.accounting_attribute_code = p_accounting_source_code
323      AND  xast.language = nvl(USERENV('LANG') ,xast.language)
324      ;
325 --
326 ELSE
327    l_name := NULL;
328 END IF;
329 
330 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
331 
332        trace
333          (p_msg      => 'return value. = '||l_name
334          ,p_level    => C_LEVEL_PROCEDURE
335          ,p_module   => l_log_module);
336 
337        trace
338          (p_msg      => 'END of GetAccountingSourceName'
339          ,p_level    => C_LEVEL_PROCEDURE
340          ,p_module   => l_log_module);
341 
342 END IF;
343 RETURN l_name;
344 
345 EXCEPTION
346  WHEN OTHERS THEN
347     RETURN p_accounting_source_code;
348 END GetAccountingSourceName;
349 --
350 --
351 --+==========================================================================+
352 --|                                                                          |
353 --| PRIVATE  function                                                        |
354 --|                                                                          |
355 --+==========================================================================+
356 --
357 FUNCTION GetMappingSetName (
358   p_mapping_set_code   IN VARCHAR2
359 , p_amb_context_code   IN VARCHAR2
360 )
361 RETURN VARCHAR2
362 IS
363 l_mapping_set_name          VARCHAR2(80);
364 l_log_module                VARCHAR2(240);
365 BEGIN
366 --
367 IF g_log_enabled THEN
368       l_log_module := C_DEFAULT_MODULE||'.GetMappingSetName';
369 END IF;
370 --
371 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
372       trace
373          (p_msg      => 'BEGIN of GetMappingSetName'
374          ,p_level    => C_LEVEL_PROCEDURE
375          ,p_module   => l_log_module);
376 
377       trace
378          (p_msg      => 'p_mapping_set_code = '|| p_mapping_set_code
379          ,p_level    => C_LEVEL_PROCEDURE
380          ,p_module   => l_log_module);
381 
382       trace
383           (p_msg      => 'p_amb_context_code = '|| p_amb_context_code
384          ,p_level    => C_LEVEL_PROCEDURE
385          ,p_module   => l_log_module);
386 
387 END IF;
388 --
389 IF p_mapping_set_code  IS NOT NULL THEN
390 
391   SELECT  REPLACE(xmst.name, '''','''''')
392     INTO  l_mapping_set_name
393     FROM  xla_mapping_sets_tl xmst
394    WHERE  xmst.mapping_set_code = p_mapping_set_code
395      AND  xmst.amb_context_code = nvl(p_amb_context_code,xmst.amb_context_code)
396      AND  nvl(xmst.language,USERENV('LANG') ) = USERENV('LANG')
397      ;
398 --
399 ELSE
400   l_mapping_set_name := NULL;
401 END IF;
402 
403 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
404 
405        trace
406          (p_msg      => 'return value. = '||l_mapping_set_name
407          ,p_level    => C_LEVEL_PROCEDURE
408          ,p_module   => l_log_module);
409 
410        trace
411          (p_msg      => 'END of GetMappingSetName'
412          ,p_level    => C_LEVEL_PROCEDURE
413          ,p_module   => l_log_module);
414 
415 END IF;
416 
417 RETURN l_mapping_set_name;
418 EXCEPTION
419  WHEN OTHERS THEN
420     RETURN p_mapping_set_code;
421 END GetMappingSetName;
422 --
423 --
424 --+==========================================================================+
425 --|                                                                          |
426 --| Public  function                                                        |
427 --|                                                                          |
428 --+==========================================================================+
429 --
430 FUNCTION GetADRName (
431   p_component_code        IN VARCHAR2
432 , p_component_type_code   IN VARCHAR2
433 , p_component_appl_id     IN INTEGER
434 , p_amb_context_code      IN VARCHAR2
435 )
436 RETURN VARCHAR2
437 IS
438 l_name               VARCHAR2(80);
439 l_log_module         VARCHAR2(240);
440 BEGIN
441 --
442 IF g_log_enabled THEN
443       l_log_module := C_DEFAULT_MODULE||'.GetADRName';
444 END IF;
445 --
446 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
447 
448       trace
449          (p_msg      => 'BEGIN of GetADRName'
450          ,p_level    => C_LEVEL_PROCEDURE
451          ,p_module   => l_log_module);
452 
453       trace
454          (p_msg      => 'p_component_code = '|| p_component_code
455          ,p_level    => C_LEVEL_PROCEDURE
456          ,p_module   => l_log_module);
457 
458       trace
459           (p_msg      => 'p_component_type_code = '|| p_component_type_code
460          ,p_level    => C_LEVEL_PROCEDURE
461          ,p_module   => l_log_module);
462 
463       trace
464           (p_msg      => 'p_component_application_id = '|| TO_CHAR(p_component_appl_id)
465          ,p_level    => C_LEVEL_PROCEDURE
466          ,p_module   => l_log_module);
467 
468        trace
469           (p_msg      => 'p_amb_context_code = '|| p_amb_context_code
470          ,p_level    => C_LEVEL_PROCEDURE
471          ,p_module   => l_log_module);
472 
473 END IF;
474 
475 --
476 IF p_component_code IS NOT NULL THEN
477 
478   SELECT  REPLACE(xsrt.name, '''','''''')
479     INTO  l_name
480     FROM  xla_seg_rules_tl       xsrt
481    WHERE  xsrt.application_id             =  p_component_appl_id
482      AND  xsrt.amb_context_code           =  p_amb_context_code
483      AND  xsrt.segment_rule_code          =  p_component_code
484      AND  xsrt.segment_rule_type_code     =  p_component_type_code
485      AND  nvl(xsrt.language,USERENV('LANG') ) = USERENV('LANG')
486      ;
487 --
488 ELSE
489  l_name := NULL;
490 END IF;
491 
492 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
493 
494        trace
495          (p_msg      => 'return value. = '||l_name
496          ,p_level    => C_LEVEL_PROCEDURE
497          ,p_module   => l_log_module);
498 
499        trace
500          (p_msg      => 'END of GetADRName'
501          ,p_level    => C_LEVEL_PROCEDURE
502          ,p_module   => l_log_module);
503 
504 END IF;
505 
506 RETURN l_name ;
507 EXCEPTION
508  WHEN OTHERS THEN
509     RETURN p_component_code;
510 END GetADRName;
511 --
512 --
513 --+==========================================================================+
514 --|                                                                          |
515 --| Public  function                                                        |
516 --|                                                                          |
517 --+==========================================================================+
518 --
519 FUNCTION GetDescriptionName (
520   p_component_code        IN VARCHAR2
521 , p_component_type_code   IN VARCHAR2
522 , p_component_appl_id     IN INTEGER
523 , p_amb_context_code      IN VARCHAR2
524 )
525 RETURN VARCHAR2
526 IS
527 l_name               VARCHAR2(80);
528 l_log_module         VARCHAR2(240);
529 BEGIN
530 --
531 IF g_log_enabled THEN
532       l_log_module := C_DEFAULT_MODULE||'.GetDescriptionName';
533 END IF;
534 --
535 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
536       trace
537          (p_msg      => 'BEGIN of GetDescriptionName'
538          ,p_level    => C_LEVEL_PROCEDURE
539          ,p_module   => l_log_module);
540       trace
541          (p_msg      => 'p_component_code = '|| p_component_code
542          ,p_level    => C_LEVEL_PROCEDURE
543          ,p_module   => l_log_module);
544 
545       trace
546           (p_msg      => 'p_component_type_code = '|| p_component_type_code
547          ,p_level    => C_LEVEL_PROCEDURE
548          ,p_module   => l_log_module);
549 
550       trace
551           (p_msg      => 'p_component_application_id = '|| TO_CHAR(p_component_appl_id)
552          ,p_level    => C_LEVEL_PROCEDURE
553          ,p_module   => l_log_module);
554 
555        trace
556           (p_msg      => 'p_amb_context_code = '|| p_amb_context_code
557          ,p_level    => C_LEVEL_PROCEDURE
558          ,p_module   => l_log_module);
559 
560 END IF;
561 --
562 --
563 IF p_component_code IS NOT NULL THEN
564 
565   SELECT  REPLACE(xdtl.name, '''','''''')
566     INTO  l_name
567     FROM  xla_descriptions_tl       xdtl
568    WHERE  xdtl.application_id             =  p_component_appl_id
569      AND  xdtl.amb_context_code           =  p_amb_context_code
570      AND  xdtl.description_code           =  p_component_code
571      AND  xdtl.description_type_code      =  p_component_type_code
572      AND  nvl(xdtl.language,USERENV('LANG') ) = USERENV('LANG')
573      ;
574 --
575 ELSE
576  l_name := NULL;
577 END IF;
578 
579 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
580 
581        trace
582          (p_msg      => 'return value. = '||l_name
583          ,p_level    => C_LEVEL_PROCEDURE
584          ,p_module   => l_log_module);
585 
586        trace
587          (p_msg      => 'END of GetDescriptionName'
588          ,p_level    => C_LEVEL_PROCEDURE
589          ,p_module   => l_log_module);
590 
591 END IF;
592 RETURN l_name ;
593 EXCEPTION
594  WHEN OTHERS THEN
595     RETURN p_component_code;
596 END GetDescriptionName;
597 --
598 --
599 --+==========================================================================+
600 --|                                                                          |
601 --| Public  function                                                        |
602 --|                                                                          |
603 --+==========================================================================+
604 --
605 FUNCTION GetJLTName (
606   p_component_code        IN VARCHAR2
607 , p_component_type_code   IN VARCHAR2
608 , p_component_appl_id     IN INTEGER
609 , p_amb_context_code      IN VARCHAR2
610 , p_entity_code           IN VARCHAR2
611 , p_event_class_code      IN VARCHAR2
612 )
613 RETURN VARCHAR2
614 IS
615 l_name               VARCHAR2(80);
616 l_log_module         VARCHAR2(240);
617 BEGIN
618 --
619 IF g_log_enabled THEN
620       l_log_module := C_DEFAULT_MODULE||'.GetJLTName';
621 END IF;
622 --
623 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
624       trace
625          (p_msg      => 'BEGIN of GetJLTName'
626          ,p_level    => C_LEVEL_PROCEDURE
627          ,p_module   => l_log_module);
628       trace
629          (p_msg      => 'p_component_code = '|| p_component_code
630          ,p_level    => C_LEVEL_PROCEDURE
631          ,p_module   => l_log_module);
632 
633       trace
634          (p_msg      => 'p_component_type_code = '|| p_component_type_code
635          ,p_level    => C_LEVEL_PROCEDURE
636          ,p_module   => l_log_module);
637 
638       trace
639          (p_msg      => 'p_component_application_id = '|| TO_CHAR(p_component_appl_id)
640          ,p_level    => C_LEVEL_PROCEDURE
641          ,p_module   => l_log_module);
642 
643        trace
644          (p_msg      => 'p_amb_context_code = '|| p_amb_context_code
645          ,p_level    => C_LEVEL_PROCEDURE
646          ,p_module   => l_log_module);
647 
648       trace
649           (p_msg      => 'p_entity_code  = '|| p_entity_code
650           ,p_level    => C_LEVEL_PROCEDURE
651           ,p_module   => l_log_module);
652 
653       trace
654          (p_msg      => 'p_event_class_code  = '|| p_event_class_code
655          ,p_level    => C_LEVEL_PROCEDURE
656          ,p_module   => l_log_module);
657 
658 END IF;
659 --
660 IF p_component_code IS NOT NULL THEN
661 
662   SELECT  REPLACE(xaltt.name, '''','''''')
663     INTO  l_name
664     FROM  xla_acct_line_types_tl       xaltt
665    WHERE  xaltt.application_id                 =  p_component_appl_id
666      AND  xaltt.amb_context_code               =  p_amb_context_code
667      AND  xaltt.entity_code                    =  p_entity_code
668      AND  xaltt.event_class_code               =  p_event_class_code
669      AND  xaltt.accounting_line_code           =  p_component_code
670      AND  xaltt.accounting_line_type_code      =  p_component_type_code
671      AND  nvl(xaltt.language,USERENV('LANG') ) = USERENV('LANG')
672      ;
673 --
674 ELSE
675  l_name := NULL;
676 END IF;
677 
678 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
679 
680        trace
681          (p_msg      => 'return value. = '||l_name
682          ,p_level    => C_LEVEL_PROCEDURE
683          ,p_module   => l_log_module);
684 
685        trace
686          (p_msg      => 'END of GetJLTName'
687          ,p_level    => C_LEVEL_PROCEDURE
688          ,p_module   => l_log_module);
689 
690 END IF;
691 
692 RETURN l_name ;
693 EXCEPTION
694  WHEN OTHERS THEN
695     RETURN p_component_code;
696 END GetJLTName;
697 --
698 --
699 --+==========================================================================+
700 --|                                                                          |
701 --| Public  function                                                        |
702 --|                                                                          |
703 --+==========================================================================+
704 --
705 FUNCTION GetComponentName  (
706   p_component_type        IN VARCHAR2
707 , p_component_code        IN VARCHAR2
708 , p_component_type_code   IN VARCHAR2
709 , p_component_appl_id     IN INTEGER
710 , p_amb_context_code      IN VARCHAR2
711 , p_entity_code           IN VARCHAR2
712 , p_event_class_code      IN VARCHAR2
713 )
714 RETURN VARCHAR2
715 IS
716 l_name               VARCHAR2(80):=NULL;
717 l_log_module         VARCHAR2(240);
718 BEGIN
719 --
720 IF g_log_enabled THEN
721       l_log_module := C_DEFAULT_MODULE||'.GetComponentName';
722 END IF;
723 --
724 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
725       trace
726          (p_msg      => 'BEGIN of GetComponentName'
727          ,p_level    => C_LEVEL_PROCEDURE
728          ,p_module   => l_log_module);
729 
730 END IF;
731 --
732 --
733 IF p_component_code IS NOT NULL THEN
734 --
735 CASE p_component_type
736 --
737 WHEN 'AMB_ADR' THEN
738 --
739     l_name:= GetADRName (
740       p_component_code
741     , p_component_type_code
742     , p_component_appl_id
743     , p_amb_context_code
744     );
745 --
746 WHEN 'AMB_JLT' THEN
747 
748     l_name:= GetJLTName (
749          p_component_code
750        , p_component_type_code
751        , p_component_appl_id
752        , p_amb_context_code
753        , p_entity_code
754        , p_event_class_code
755      );
756 
757 
758 WHEN 'AMB_DESCRIPTION' THEN
759 
760     l_name:= GetADRName (
761       p_component_code
762     , p_component_type_code
763     , p_component_appl_id
764     , p_amb_context_code
765     );
766 --
767 ELSE  null;
768 END CASE;
769 --
770 END IF;
771 
772 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
773 
774        trace
775          (p_msg      => 'END of GetComponentName'
776          ,p_level    => C_LEVEL_PROCEDURE
777          ,p_module   => l_log_module);
778 
779 END IF;
780 RETURN l_name ;
781 EXCEPTION
782  WHEN OTHERS THEN
783     RETURN p_component_code;
784 END GetComponentName ;
785 --
786 --
787 /*======================================================================+
788 |                                                                       |
789 | Public Function                                                       |
790 |    GetSystemSourceNum                                                 |
791 |                                                                       |
792 +======================================================================*/
793 FUNCTION GetSystemSourceNum(
794   p_source_code           IN VARCHAR2
795 , p_source_type_code      IN VARCHAR2
796 , p_source_application_id IN NUMBER
797 )
798 RETURN NUMBER
799 IS
800   l_system_value       NUMBER;
801   l_log_module         VARCHAR2(240);
802 BEGIN
803 --
804 IF g_log_enabled THEN
805       l_log_module := C_DEFAULT_MODULE||'.GetSystemSourceNum';
806 END IF;
807 --
808 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
809       trace
810          (p_msg      => 'BEGIN of GetSystemSourceNum'
811          ,p_level    => C_LEVEL_PROCEDURE
812          ,p_module   => l_log_module);
813 
814       trace
815          (p_msg      => 'p_source_code = '|| p_source_code
816          ,p_level    => C_LEVEL_PROCEDURE
817          ,p_module   => l_log_module);
818 
819       trace
820          (p_msg      => 'p_source_type_code = '|| p_source_type_code
821          ,p_level    => C_LEVEL_PROCEDURE
822          ,p_module   => l_log_module);
823 
824       trace
825          (p_msg      => 'p_source_application_id = '|| TO_CHAR(p_source_application_id)
826          ,p_level    => C_LEVEL_PROCEDURE
827          ,p_module   => l_log_module);
828 
829       trace
830          (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueNum API'
831          ,p_level    => C_LEVEL_PROCEDURE
832          ,p_module   => l_log_module);
833 
834       trace
835         (p_msg      => 'END of GetSystemSourceNum'
836          ,p_level    => C_LEVEL_PROCEDURE
837          ,p_module   => l_log_module);
838 END IF;
839 --
840 CASE  p_source_code
841 
842 WHEN 'XLA_LEGAL_ENTITY_ID'        THEN
843 
844   RETURN xla_ae_journal_entry_pkg.g_cache_event.legal_entity_id;
845 
846 WHEN 'XLA_REFERENCE_NUM_1'    THEN
847 
848     RETURN xla_ae_journal_entry_pkg.g_cache_event.reference_num_1;
849 
850 WHEN 'XLA_REFERENCE_NUM_2'    THEN
851 
852    RETURN  xla_ae_journal_entry_pkg.g_cache_event.reference_num_2;
853 
854 WHEN 'XLA_REFERENCE_NUM_3'    THEN
855 
856    RETURN xla_ae_journal_entry_pkg.g_cache_event.reference_num_3;
857 
858 WHEN 'XLA_REFERENCE_NUM_4'    THEN
859 
860    RETURN xla_ae_journal_entry_pkg.g_cache_event.reference_num_4;
861 
862 WHEN 'LATEST_ENCUMBRANCE_YEAR'    THEN
863 
864    RETURN  xla_accounting_cache_pkg.GetValueNum
865           (
866             p_source_code       => p_source_code
867           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
868           );
869 WHEN 'SL_COA_MAPPING_ID' THEN
870 
871    RETURN  xla_accounting_cache_pkg.GetValueNum
872           (
873             p_source_code       => p_source_code
874           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
875           );
876 
877 WHEN 'SLA_LEDGER_ID' THEN
878 
879    RETURN  xla_accounting_cache_pkg.GetValueNum
880           (
881             p_source_code       => p_source_code
882           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
883           );
884 
885 WHEN 'XLA_COA_ID' THEN
886 
887    RETURN  xla_accounting_cache_pkg.GetValueNum
888           (
889             p_source_code       => p_source_code
890           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
891           );
892 
893 WHEN 'XLA_CURRENCY_PRECISION' THEN
894 
895    RETURN  xla_accounting_cache_pkg.GetValueNum
896           (
897             p_source_code       => p_source_code
898           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
899           );
900 
901 WHEN 'XLA_ENTERED_CUR_BAL_SUS_CCID' THEN
902 
903    RETURN  xla_accounting_cache_pkg.GetValueNum
904           (
905             p_source_code       => p_source_code
906           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
907           );
908 
909 WHEN 'XLA_ENTRY_CREATED_BY' THEN
910 
911    RETURN  xla_accounting_cache_pkg.GetValueNum
912           (
913             p_source_code       => p_source_code
914           );
915 
916 WHEN 'XLA_EVENT_APPL_ID' THEN
917 
918    RETURN  xla_accounting_cache_pkg.GetValueNum
919           (
920             p_source_code       => p_source_code
921           );
922 
923 WHEN 'XLA_LEDGER_CUR_BAL_SUS_CCID' THEN
924 
925    RETURN  xla_accounting_cache_pkg.GetValueNum
926           (
927             p_source_code       => p_source_code
928           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
929           );
930   --
931 ELSE
932 
933    xla_ae_journal_entry_pkg.g_global_status      :=  xla_ae_journal_entry_pkg.C_INVALID;
934    xla_accounting_err_pkg.build_message
935                              (p_appli_s_name            => 'XLA'
936                              ,p_msg_name                => 'XLA_AP_INVALID_SYSTEM_SOURCE'
937                              ,p_token_1                 => 'SOURCE_NAME'
938                              ,p_value_1                 => GetSourceName(
939                                                            p_source_code
940                                                          , p_source_type_code
941                                                          , p_source_application_id
942                                                          )
943                              ,p_entity_id               => xla_ae_journal_entry_pkg.g_cache_event.entity_id
944                              ,p_event_id                => xla_ae_journal_entry_pkg.g_cache_event.event_id
945                              ,p_ledger_id               => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
946          );
947 
948     IF (C_LEVEL_ERROR >= g_log_level) THEN
949               trace
950                    (p_msg      => 'ERROR: XLA_AP_INVALID_SYSTEM_SOURCE'
951                    ,p_level    => C_LEVEL_ERROR
952                    ,p_module   => l_log_module);
953     END IF;
954     RETURN NULL;
955 
956 END CASE;
957 --
958 EXCEPTION
959 WHEN xla_exceptions_pkg.application_exception THEN
960    xla_ae_journal_entry_pkg.g_global_status      :=  xla_ae_journal_entry_pkg.C_INVALID;
961    xla_accounting_err_pkg.build_message
962                                (p_appli_s_name            => 'XLA'
963                                ,p_msg_name                => 'XLA_AP_INVALID_SYSTEM_SOURCE'
964                                ,p_token_1                 => 'SOURCE_NAME'
965                                ,p_value_1                 =>GetSourceName(
966                                                            p_source_code
967                                                          , p_source_type_code
968                                                          , p_source_application_id
969                                                          )
970                                ,p_entity_id               => xla_ae_journal_entry_pkg.g_cache_event.entity_id
971                                ,p_event_id                => xla_ae_journal_entry_pkg.g_cache_event.event_id
972                                ,p_ledger_id               => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
973            );
974 
975     IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
976               trace
977                    (p_msg      => 'ERROR: XLA_AP_INVALID_SYSTEM_SOURCE'
978                    ,p_level    => C_LEVEL_EXCEPTION
979                    ,p_module   => l_log_module);
980     END IF;
981 
982     RETURN NULL;
983 WHEN OTHERS  THEN
984    xla_exceptions_pkg.raise_message
985            (p_location => 'xla_ae_sources_pkg.GetSystemSourceNum');
986        --
987 END GetSystemSourceNum;
988 --
989 /*======================================================================+
990 |                                                                       |
991 | Public Function                                                       |
992 |                                                                       |
993 |                                                                       |
994 +======================================================================*/
995 FUNCTION GetSystemSourceDate(
996   p_source_code           IN VARCHAR2
997 , p_source_type_code      IN VARCHAR2
998 , p_source_application_id IN NUMBER
999 )
1000 RETURN DATE
1001 IS
1002 l_system_value       DATE;
1003 l_log_module         VARCHAR2(240);
1004 BEGIN
1005 --
1006 IF g_log_enabled THEN
1007       l_log_module := C_DEFAULT_MODULE||'.GetSystemSourceDate';
1008 END IF;
1009 --
1010 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1011       trace
1012          (p_msg      => 'BEGIN of GetSystemSourceDate'
1013          ,p_level    => C_LEVEL_PROCEDURE
1014          ,p_module   => l_log_module);
1015 
1016       trace
1017          (p_msg      => 'p_source_code = '|| p_source_code
1018          ,p_level    => C_LEVEL_PROCEDURE
1019          ,p_module   => l_log_module);
1020 
1021       trace
1022          (p_msg      => 'p_source_type_code = '|| p_source_type_code
1023          ,p_level    => C_LEVEL_PROCEDURE
1024          ,p_module   => l_log_module);
1025 
1026       trace
1027          (p_msg      => 'p_source_application_id = '|| TO_CHAR(p_source_application_id)
1028          ,p_level    => C_LEVEL_PROCEDURE
1029          ,p_module   => l_log_module);
1030 
1031       trace
1032         (p_msg      => 'END of GetSystemSourceDate'
1033          ,p_level    => C_LEVEL_PROCEDURE
1034          ,p_module   => l_log_module);
1035 END IF;
1036 --
1037 CASE  p_source_code
1038 
1039 WHEN 'XLA_EVENT_DATE'          THEN
1040 
1041    RETURN  xla_ae_journal_entry_pkg.g_cache_event.event_date;
1042 
1043 WHEN 'XLA_TRANSACTION_DATE'          THEN
1044 
1045    RETURN  xla_ae_journal_entry_pkg.g_cache_event.transaction_date;
1046 
1047 WHEN 'XLA_REFERENCE_DATE_1'    THEN
1048 
1049    RETURN xla_ae_journal_entry_pkg.g_cache_event.reference_date_1;
1050 
1051 WHEN 'XLA_REFERENCE_DATE_2'    THEN
1052 
1053    RETURN  xla_ae_journal_entry_pkg.g_cache_event.reference_date_2;
1054 
1055 WHEN 'XLA_REFERENCE_DATE_3'    THEN
1056 
1057    RETURN  xla_ae_journal_entry_pkg.g_cache_event.reference_date_3;
1058 
1059 WHEN 'XLA_REFERENCE_DATE_4'    THEN
1060 
1061   RETURN xla_ae_journal_entry_pkg.g_cache_event.reference_date_4;
1062 
1063 WHEN 'XLA_CREATION_DATE'    THEN
1064 
1065   RETURN xla_accounting_cache_pkg.GetValueDate
1066           (
1067             p_source_code     => p_source_code
1068           );
1069 ELSE
1070 
1071   xla_ae_journal_entry_pkg.g_global_status      :=  xla_ae_journal_entry_pkg.C_INVALID;
1072   xla_accounting_err_pkg.build_message
1073                              (p_appli_s_name            => 'XLA'
1074                              ,p_msg_name                => 'XLA_AP_INVALID_SYSTEM_SOURCE'
1075                              ,p_token_1                 => 'SOURCE_NAME'
1076                              ,p_value_1                 => GetSourceName(
1077                                                            p_source_code
1078                                                          , p_source_type_code
1079                                                          , p_source_application_id
1080                                                          )
1081                              ,p_entity_id               => xla_ae_journal_entry_pkg.g_cache_event.entity_id
1082                              ,p_event_id                => xla_ae_journal_entry_pkg.g_cache_event.event_id
1083                              ,p_ledger_id               => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1084            );
1085 
1086     IF (C_LEVEL_ERROR >= g_log_level) THEN
1087               trace
1088                    (p_msg      => 'ERROR: XLA_AP_INVALID_SYSTEM_SOURCE'
1089                    ,p_level    => C_LEVEL_ERROR
1090                    ,p_module   => l_log_module);
1091     END IF;
1092 
1093    RETURN NULL;
1094 
1095 END CASE;
1096 
1097 EXCEPTION
1098 WHEN xla_exceptions_pkg.application_exception THEN
1099    xla_ae_journal_entry_pkg.g_global_status      :=  xla_ae_journal_entry_pkg.C_INVALID;
1100    xla_accounting_err_pkg.build_message
1101                                (p_appli_s_name            => 'XLA'
1102                                ,p_msg_name                => 'XLA_AP_INVALID_SYSTEM_SOURCE'
1103                                ,p_token_1                 => 'SOURCE_NAME'
1104                                ,p_value_1                 => GetSourceName(
1105                                                            p_source_code
1106                                                          , p_source_type_code
1107                                                          , p_source_application_id
1108                                                          )
1109                                ,p_entity_id               => xla_ae_journal_entry_pkg.g_cache_event.entity_id
1110                                ,p_event_id                => xla_ae_journal_entry_pkg.g_cache_event.event_id
1111                                ,p_ledger_id               => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1112            );
1113 
1114     IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
1115               trace
1116                    (p_msg      => 'ERROR: XLA_AP_INVALID_SYSTEM_SOURCE'
1117                    ,p_level    => C_LEVEL_EXCEPTION
1118                    ,p_module   => l_log_module);
1119     END IF;
1120 
1121     RETURN NULL;
1122 WHEN OTHERS  THEN
1123    xla_exceptions_pkg.raise_message
1124            (p_location => 'xla_ae_sources_pkg.GetSystemSourceDate');
1125        --
1126 END GetSystemSourceDate;
1127 --
1128 /*======================================================================+
1129 |                                                                       |
1130 | Public Function                                                       |
1131 |    GetSystemSourceChar                                                |
1132 |                                                                       |
1133 +======================================================================*/
1134 FUNCTION GetSystemSourceChar(
1135   p_source_code           IN VARCHAR2
1136 , p_source_type_code      IN VARCHAR2
1137 , p_source_application_id IN NUMBER
1138                            )
1139 RETURN VARCHAR2
1140 IS
1141 l_closing_status       VARCHAR2(1);
1142 l_system_value         VARCHAR2(4000);
1143 l_log_module           VARCHAR2(240);
1144 BEGIN
1145 --
1146 IF g_log_enabled THEN
1147       l_log_module := C_DEFAULT_MODULE||'.GetSystemSourceChar';
1148 END IF;
1149 --
1150 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1151       trace
1152          (p_msg      => 'BEGIN of GetSystemSourceChar'
1153          ,p_level    => C_LEVEL_PROCEDURE
1154          ,p_module   => l_log_module);
1155 
1156       trace
1157          (p_msg      => 'p_source_code = '|| p_source_code
1158          ,p_level    => C_LEVEL_PROCEDURE
1159          ,p_module   => l_log_module);
1160 
1161       trace
1162          (p_msg      => 'p_source_type_code = '|| p_source_type_code
1163          ,p_level    => C_LEVEL_PROCEDURE
1164          ,p_module   => l_log_module);
1165 
1166       trace
1167          (p_msg      => 'p_source_application_id = '|| TO_CHAR(p_source_application_id)
1168          ,p_level    => C_LEVEL_PROCEDURE
1169          ,p_module   => l_log_module);
1170 
1171 END IF;
1172 --
1173 CASE  p_source_code
1174 
1175 WHEN 'XLA_JE_CATEGORY_NAME'                THEN
1176 
1177   l_system_value := xla_accounting_cache_pkg.get_je_category(
1178                p_ledger_id        => xla_ae_journal_entry_pkg.g_cache_event.base_ledger_id
1179               ,p_event_class_code => xla_ae_journal_entry_pkg.g_cache_event.event_class
1180              );
1181 
1182   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1183 
1184         trace
1185          (p_msg      => '-> CALL xla_accounting_cache_pkg.get_je_category API'
1186          ,p_level    => C_LEVEL_PROCEDURE
1187          ,p_module   => l_log_module);
1188 
1189         trace
1190            (p_msg      => 'return value. = '||l_system_value
1191            ,p_level    => C_LEVEL_PROCEDURE
1192            ,p_module   => l_log_module);
1193 
1194         trace
1195           (p_msg      => 'END of GetSystemSourceChar'
1196           ,p_level    => C_LEVEL_PROCEDURE
1197           ,p_module   => l_log_module);
1198   END IF;
1199   RETURN l_system_value ;
1200 
1201 WHEN 'ALLOW_INTERCOMPANY_POST_FLAG'        THEN
1202 
1203   l_system_value := xla_accounting_cache_pkg.GetValueChar
1204           (
1205             p_source_code       => p_source_code
1206           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1207           );
1208 
1209   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1210 
1211         trace
1212            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1213            ,p_level    => C_LEVEL_PROCEDURE
1214            ,p_module   => l_log_module);
1215 
1216         trace
1217            (p_msg      => 'return value. = '||l_system_value
1218            ,p_level    => C_LEVEL_PROCEDURE
1219            ,p_module   => l_log_module);
1220 
1221         trace
1222           (p_msg      => 'END of GetSystemSourceChar'
1223           ,p_level    => C_LEVEL_PROCEDURE
1224           ,p_module   => l_log_module);
1225   END IF;
1226   RETURN l_system_value ;
1227 
1228 WHEN 'BAL_SEG_COLUMN_NAME '        THEN
1229 
1230   l_system_value := xla_accounting_cache_pkg.GetValueChar
1231           (
1232             p_source_code       => p_source_code
1233           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1234           );
1235 
1236   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1237 
1238         trace
1239            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1240            ,p_level    => C_LEVEL_PROCEDURE
1241            ,p_module   => l_log_module);
1242 
1243         trace
1244            (p_msg      => 'return value. = '||l_system_value
1245            ,p_level    => C_LEVEL_PROCEDURE
1246            ,p_module   => l_log_module);
1247 
1248         trace
1249           (p_msg      => 'END of GetSystemSourceChar'
1250           ,p_level    => C_LEVEL_PROCEDURE
1251           ,p_module   => l_log_module);
1252   END IF;
1253   RETURN l_system_value ;
1254 
1255 WHEN 'BAL_SEG_VALUE_OPTION_CODE'        THEN
1256 
1257   l_system_value := xla_accounting_cache_pkg.GetValueChar
1258           (
1259             p_source_code       => p_source_code
1260           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1261           );
1262 
1263   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1264 
1265         trace
1266            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1267            ,p_level    => C_LEVEL_PROCEDURE
1268            ,p_module   => l_log_module);
1269 
1270         trace
1271            (p_msg      => 'return value. = '||l_system_value
1272            ,p_level    => C_LEVEL_PROCEDURE
1273            ,p_module   => l_log_module);
1274 
1275         trace
1276           (p_msg      => 'END of GetSystemSourceChar'
1277           ,p_level    => C_LEVEL_PROCEDURE
1278           ,p_module   => l_log_module);
1279   END IF;
1280   RETURN l_system_value ;
1281 
1282 WHEN 'CONTROL_ACCOUNT_ENABLED_FLAG'        THEN
1283 
1284   l_system_value := xla_accounting_cache_pkg.GetValueChar
1285           (
1286             p_source_code       => p_source_code
1287           );
1288 
1289   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1290 
1291         trace
1292            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1293            ,p_level    => C_LEVEL_PROCEDURE
1294            ,p_module   => l_log_module);
1295 
1296         trace
1297            (p_msg      => 'return value. = '||l_system_value
1298            ,p_level    => C_LEVEL_PROCEDURE
1299            ,p_module   => l_log_module);
1300 
1301         trace
1302           (p_msg      => 'END of GetSystemSourceChar'
1303           ,p_level    => C_LEVEL_PROCEDURE
1304           ,p_module   => l_log_module);
1305   END IF;
1306   RETURN l_system_value ;
1307 
1308 WHEN 'GL_COA_MAPPING_NAME'        THEN
1309 
1310   l_system_value := xla_accounting_cache_pkg.GetValueChar
1311           (
1312             p_source_code       => p_source_code
1313           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1314            );
1315 
1316   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1317 
1318         trace
1319            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1320            ,p_level    => C_LEVEL_PROCEDURE
1321            ,p_module   => l_log_module);
1322 
1323         trace
1324            (p_msg      => 'return value. = '||l_system_value
1325            ,p_level    => C_LEVEL_PROCEDURE
1326            ,p_module   => l_log_module);
1327 
1328         trace
1329           (p_msg      => 'END of GetSystemSourceChar'
1330           ,p_level    => C_LEVEL_PROCEDURE
1331           ,p_module   => l_log_module);
1332   END IF;
1333   RETURN l_system_value ;
1334 
1335 WHEN 'LEDGER_CATEGORY_CODE'        THEN
1336 
1337   l_system_value := xla_accounting_cache_pkg.GetValueChar
1338           (
1339             p_source_code       => p_source_code
1340           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1341            );
1342 
1343   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1344 
1345         trace
1346            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1347            ,p_level    => C_LEVEL_PROCEDURE
1348            ,p_module   => l_log_module);
1349 
1350         trace
1351            (p_msg      => 'return value. = '||l_system_value
1352            ,p_level    => C_LEVEL_PROCEDURE
1353            ,p_module   => l_log_module);
1354 
1355         trace
1356           (p_msg      => 'END of GetSystemSourceChar'
1357           ,p_level    => C_LEVEL_PROCEDURE
1358           ,p_module   => l_log_module);
1359   END IF;
1360   RETURN l_system_value ;
1361 
1362 WHEN 'MGT_SEG_COLUMN_NAME'        THEN
1363 
1364   l_system_value := xla_accounting_cache_pkg.GetValueChar
1365           (
1366             p_source_code       => p_source_code
1367           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1368            );
1369 
1370   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1371 
1372         trace
1373            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1374            ,p_level    => C_LEVEL_PROCEDURE
1375            ,p_module   => l_log_module);
1376 
1377         trace
1378            (p_msg      => 'return value. = '||l_system_value
1379            ,p_level    => C_LEVEL_PROCEDURE
1380            ,p_module   => l_log_module);
1381 
1382         trace
1383           (p_msg      => 'END of GetSystemSourceChar'
1384           ,p_level    => C_LEVEL_PROCEDURE
1385           ,p_module   => l_log_module);
1386   END IF;
1387   RETURN l_system_value ;
1388 
1389 WHEN 'MGT_SEG_VALUE_OPTION_CODE'        THEN
1390 
1391   l_system_value := xla_accounting_cache_pkg.GetValueChar
1392           (
1393             p_source_code       => p_source_code
1394           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1395            );
1396 
1397   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1398 
1399         trace
1400            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1401            ,p_level    => C_LEVEL_PROCEDURE
1402            ,p_module   => l_log_module);
1403 
1404         trace
1405            (p_msg      => 'return value. = '||l_system_value
1406            ,p_level    => C_LEVEL_PROCEDURE
1407            ,p_module   => l_log_module);
1408 
1409         trace
1410           (p_msg      => 'END of GetSystemSourceChar'
1411           ,p_level    => C_LEVEL_PROCEDURE
1412           ,p_module   => l_log_module);
1413   END IF;
1414   RETURN l_system_value ;
1415 
1416 WHEN 'SLA_BAL_BY_LEDGER_CURR_FLAG'        THEN
1417 
1418   l_system_value := xla_accounting_cache_pkg.GetValueChar
1419           (
1420             p_source_code       => p_source_code
1421           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1422            );
1423 
1424   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1425 
1426         trace
1427            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1428            ,p_level    => C_LEVEL_PROCEDURE
1429            ,p_module   => l_log_module);
1430 
1431         trace
1432            (p_msg      => 'return value. = '||l_system_value
1433            ,p_level    => C_LEVEL_PROCEDURE
1434            ,p_module   => l_log_module);
1435 
1436         trace
1437           (p_msg      => 'END of GetSystemSourceChar'
1438           ,p_level    => C_LEVEL_PROCEDURE
1439           ,p_module   => l_log_module);
1440   END IF;
1441   RETURN l_system_value ;
1442 
1443 WHEN 'VALUATION_METHOD_FLAG'        THEN
1444 
1445   l_system_value := xla_accounting_cache_pkg.GetValueChar
1446           (
1447             p_source_code       => p_source_code
1448            );
1449 
1450   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1451 
1452         trace
1453            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1454            ,p_level    => C_LEVEL_PROCEDURE
1455            ,p_module   => l_log_module);
1456 
1457         trace
1458            (p_msg      => 'return value. = '||l_system_value
1459            ,p_level    => C_LEVEL_PROCEDURE
1460            ,p_module   => l_log_module);
1461 
1462         trace
1463           (p_msg      => 'END of GetSystemSourceChar'
1464           ,p_level    => C_LEVEL_PROCEDURE
1465           ,p_module   => l_log_module);
1466   END IF;
1467   RETURN l_system_value ;
1468 
1469 WHEN 'XLA_ACCOUNTING_METHOD_NAME'        THEN
1470 
1471   l_system_value := xla_accounting_cache_pkg.GetValueChar
1472           (
1473             p_source_code       => p_source_code
1474           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1475            );
1476 
1477   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1478 
1479         trace
1480            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1481            ,p_level    => C_LEVEL_PROCEDURE
1482            ,p_module   => l_log_module);
1483 
1484         trace
1485            (p_msg      => 'return value. = '||l_system_value
1486            ,p_level    => C_LEVEL_PROCEDURE
1487            ,p_module   => l_log_module);
1488 
1489         trace
1490           (p_msg      => 'END of GetSystemSourceChar'
1491           ,p_level    => C_LEVEL_PROCEDURE
1492           ,p_module   => l_log_module);
1493   END IF;
1494   RETURN l_system_value ;
1495 
1496 WHEN 'XLA_ACCOUNTING_METHOD_OWNER'        THEN
1497 
1498   l_system_value := xla_accounting_cache_pkg.GetValueChar
1499           (
1500             p_source_code       => p_source_code
1501           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1502            );
1503 
1504   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1505 
1506         trace
1507            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1508            ,p_level    => C_LEVEL_PROCEDURE
1509            ,p_module   => l_log_module);
1510 
1511         trace
1512            (p_msg      => 'return value. = '||l_system_value
1513            ,p_level    => C_LEVEL_PROCEDURE
1514            ,p_module   => l_log_module);
1515 
1516         trace
1517           (p_msg      => 'END of GetSystemSourceChar'
1518           ,p_level    => C_LEVEL_PROCEDURE
1519           ,p_module   => l_log_module);
1520   END IF;
1521   RETURN l_system_value ;
1522 
1523 WHEN 'XLA_ACCT_REVERSAL_OPTION'        THEN
1524 
1525   l_system_value := xla_accounting_cache_pkg.GetValueChar
1526           (
1527             p_source_code       => p_source_code
1528           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1529            );
1530 
1531   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1532 
1533         trace
1534            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1535            ,p_level    => C_LEVEL_PROCEDURE
1536            ,p_module   => l_log_module);
1537 
1538         trace
1539            (p_msg      => 'return value. = '||l_system_value
1540            ,p_level    => C_LEVEL_PROCEDURE
1541            ,p_module   => l_log_module);
1542 
1543         trace
1544           (p_msg      => 'END of GetSystemSourceChar'
1545           ,p_level    => C_LEVEL_PROCEDURE
1546           ,p_module   => l_log_module);
1547   END IF;
1548   RETURN l_system_value ;
1549 
1550 WHEN 'XLA_COA_NAME'        THEN
1551 
1552   l_system_value := xla_accounting_cache_pkg.GetValueChar
1553           (
1554             p_source_code       => p_source_code
1555           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1556            );
1557 
1558   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1559 
1560         trace
1561            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1562            ,p_level    => C_LEVEL_PROCEDURE
1563            ,p_module   => l_log_module);
1564 
1565         trace
1566            (p_msg      => 'return value. = '||l_system_value
1567            ,p_level    => C_LEVEL_PROCEDURE
1568            ,p_module   => l_log_module);
1569 
1570         trace
1571           (p_msg      => 'END of GetSystemSourceChar'
1572           ,p_level    => C_LEVEL_PROCEDURE
1573           ,p_module   => l_log_module);
1574   END IF;
1575   RETURN l_system_value ;
1576 
1577 WHEN 'XLA_CURRENCY_CODE'        THEN
1578 
1579   l_system_value := xla_accounting_cache_pkg.GetValueChar
1580           (
1581             p_source_code       => p_source_code
1582           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1583            );
1584 
1585   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1586 
1587         trace
1588            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1589            ,p_level    => C_LEVEL_PROCEDURE
1590            ,p_module   => l_log_module);
1591 
1592         trace
1593            (p_msg      => 'return value. = '||l_system_value
1594            ,p_level    => C_LEVEL_PROCEDURE
1595            ,p_module   => l_log_module);
1596 
1597         trace
1598           (p_msg      => 'END of GetSystemSourceChar'
1599           ,p_level    => C_LEVEL_PROCEDURE
1600           ,p_module   => l_log_module);
1601   END IF;
1602   RETURN l_system_value ;
1603 
1604 WHEN 'XLA_DESCRIPTION_LANGUAGE'        THEN
1605 
1606   l_system_value := xla_accounting_cache_pkg.GetValueChar
1607           (
1608             p_source_code       => p_source_code
1609           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1610            );
1611 
1612   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1613 
1614         trace
1615            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1616            ,p_level    => C_LEVEL_PROCEDURE
1617            ,p_module   => l_log_module);
1618 
1619         trace
1620            (p_msg      => 'return value. = '||l_system_value
1621            ,p_level    => C_LEVEL_PROCEDURE
1622            ,p_module   => l_log_module);
1623 
1624         trace
1625           (p_msg      => 'END of GetSystemSourceChar'
1626           ,p_level    => C_LEVEL_PROCEDURE
1627           ,p_module   => l_log_module);
1628   END IF;
1629   RETURN l_system_value ;
1630 
1631 WHEN 'XLA_ENTITY_CODE' THEN
1632 
1633   l_system_value := xla_ae_journal_entry_pkg.g_cache_event.entity_code;
1634 
1635   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1636 
1637         trace
1638            (p_msg      => 'return value. = '||l_system_value
1639            ,p_level    => C_LEVEL_PROCEDURE
1640            ,p_module   => l_log_module);
1641 
1642         trace
1643           (p_msg      => 'END of GetSystemSourceChar'
1644           ,p_level    => C_LEVEL_PROCEDURE
1645           ,p_module   => l_log_module);
1646   END IF;
1647   RETURN l_system_value ;
1648 
1649 WHEN 'XLA_EVENT_APPL_NAME'        THEN
1650 
1651   l_system_value := xla_accounting_cache_pkg.GetValueChar
1652           (
1653             p_source_code       => p_source_code
1654           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1655            );
1656 
1657   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1658 
1659         trace
1660            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1661            ,p_level    => C_LEVEL_PROCEDURE
1662            ,p_module   => l_log_module);
1663 
1664         trace
1665            (p_msg      => 'return value. = '||l_system_value
1666            ,p_level    => C_LEVEL_PROCEDURE
1667            ,p_module   => l_log_module);
1668 
1669         trace
1670           (p_msg      => 'END of GetSystemSourceChar'
1671           ,p_level    => C_LEVEL_PROCEDURE
1672           ,p_module   => l_log_module);
1673   END IF;
1674   RETURN l_system_value ;
1675 
1676 WHEN 'XLA_EVENT_APPL_SHORT_NAME'        THEN
1677 
1678   l_system_value := xla_accounting_cache_pkg.GetValueChar
1679           (
1680             p_source_code       => p_source_code
1681            );
1682 
1683   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1684 
1685         trace
1686            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1687            ,p_level    => C_LEVEL_PROCEDURE
1688            ,p_module   => l_log_module);
1689 
1690         trace
1691            (p_msg      => 'return value. = '||l_system_value
1692            ,p_level    => C_LEVEL_PROCEDURE
1693            ,p_module   => l_log_module);
1694 
1695         trace
1696           (p_msg      => 'END of GetSystemSourceChar'
1697           ,p_level    => C_LEVEL_PROCEDURE
1698           ,p_module   => l_log_module);
1699   END IF;
1700   RETURN l_system_value ;
1701 
1702 WHEN 'XLA_EVENT_CLASS_CODE' THEN
1703 
1704   l_system_value := xla_ae_journal_entry_pkg.g_cache_event.event_class;
1705 
1706   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1707 
1708         trace
1709            (p_msg      => 'return value. = '||l_system_value
1710            ,p_level    => C_LEVEL_PROCEDURE
1711            ,p_module   => l_log_module);
1712 
1713         trace
1714           (p_msg      => 'END of GetSystemSourceChar'
1715           ,p_level    => C_LEVEL_PROCEDURE
1716           ,p_module   => l_log_module);
1717   END IF;
1718   RETURN l_system_value ;
1719 
1720 WHEN 'XLA_EVENT_CLASS_NAME' THEN
1721 
1722   l_system_value :=xla_ae_journal_entry_pkg.g_cache_event_tl.event_class_name;
1723   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1724 
1725         trace
1726            (p_msg      => 'return value. = '||l_system_value
1727            ,p_level    => C_LEVEL_PROCEDURE
1728            ,p_module   => l_log_module);
1729 
1730         trace
1731           (p_msg      => 'END of GetSystemSourceChar'
1732           ,p_level    => C_LEVEL_PROCEDURE
1733           ,p_module   => l_log_module);
1734   END IF;
1735   RETURN l_system_value ;
1736 
1737 
1738 WHEN 'XLA_EVENT_CREATED_BY'        THEN
1739 
1740   l_system_value := xla_ae_journal_entry_pkg.g_cache_event.event_created_by;
1741   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1742 
1743         trace
1744            (p_msg      => 'return value. = '||l_system_value
1745            ,p_level    => C_LEVEL_PROCEDURE
1746            ,p_module   => l_log_module);
1747 
1748         trace
1749           (p_msg      => 'END of GetSystemSourceChar'
1750           ,p_level    => C_LEVEL_PROCEDURE
1751           ,p_module   => l_log_module);
1752   END IF;
1753   RETURN l_system_value ;
1754 
1755 WHEN 'XLA_EVENT_TYPE_CODE'        THEN
1756 
1757   l_system_value := xla_ae_journal_entry_pkg.g_cache_event.event_type;
1758   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1759 
1760         trace
1761            (p_msg      => 'return value. = '||l_system_value
1762            ,p_level    => C_LEVEL_PROCEDURE
1763            ,p_module   => l_log_module);
1764 
1765         trace
1766           (p_msg      => 'END of GetSystemSourceChar'
1767           ,p_level    => C_LEVEL_PROCEDURE
1768           ,p_module   => l_log_module);
1769   END IF;
1770   RETURN l_system_value ;
1771 --
1772 WHEN 'XLA_EVENT_TYPE_NAME'        THEN
1773 
1774   l_system_value := xla_ae_journal_entry_pkg.g_cache_event_tl.event_type_name;
1775   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1776 
1777         trace
1778            (p_msg      => 'return value. = '||l_system_value
1779            ,p_level    => C_LEVEL_PROCEDURE
1780            ,p_module   => l_log_module);
1781 
1782         trace
1783           (p_msg      => 'END of GetSystemSourceChar'
1784           ,p_level    => C_LEVEL_PROCEDURE
1785           ,p_module   => l_log_module);
1786   END IF;
1787   RETURN l_system_value ;
1788 
1789 WHEN 'XLA_JE_SOURCE_NAME'        THEN
1790 
1791   l_system_value := xla_accounting_cache_pkg.GetValueChar
1792           (
1793             p_source_code       => p_source_code
1794            );
1795 
1796   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1797 
1798         trace
1799            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1800            ,p_level    => C_LEVEL_PROCEDURE
1801            ,p_module   => l_log_module);
1802 
1803         trace
1804            (p_msg      => 'return value. = '||l_system_value
1805            ,p_level    => C_LEVEL_PROCEDURE
1806            ,p_module   => l_log_module);
1807 
1808         trace
1809           (p_msg      => 'END of GetSystemSourceChar'
1810           ,p_level    => C_LEVEL_PROCEDURE
1811           ,p_module   => l_log_module);
1812   END IF;
1813   RETURN l_system_value ;
1814 
1815 WHEN 'XLA_LEDGER_NAME'        THEN
1816 
1817   l_system_value := xla_accounting_cache_pkg.GetValueChar
1818           (
1819             p_source_code       => p_source_code
1820           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1821            );
1822 
1823   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1824 
1825         trace
1826            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1827            ,p_level    => C_LEVEL_PROCEDURE
1828            ,p_module   => l_log_module);
1829 
1830         trace
1831            (p_msg      => 'return value. = '||l_system_value
1832            ,p_level    => C_LEVEL_PROCEDURE
1833            ,p_module   => l_log_module);
1834 
1835         trace
1836           (p_msg      => 'END of GetSystemSourceChar'
1837           ,p_level    => C_LEVEL_PROCEDURE
1838           ,p_module   => l_log_module);
1839   END IF;
1840   RETURN l_system_value ;
1841 
1842 WHEN 'XLA_NLS_DESC_LANGUAGE'        THEN
1843 
1844   l_system_value := xla_accounting_cache_pkg.GetValueChar
1845           (
1846             p_source_code       => p_source_code
1847           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1848            );
1849 
1850   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1851 
1852         trace
1853            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
1854            ,p_level    => C_LEVEL_PROCEDURE
1855            ,p_module   => l_log_module);
1856 
1857         trace
1858            (p_msg      => 'return value. = '||l_system_value
1859            ,p_level    => C_LEVEL_PROCEDURE
1860            ,p_module   => l_log_module);
1861 
1862         trace
1863           (p_msg      => 'END of GetSystemSourceChar'
1864           ,p_level    => C_LEVEL_PROCEDURE
1865           ,p_module   => l_log_module);
1866   END IF;
1867   RETURN l_system_value ;
1868 
1869 WHEN 'XLA_PAD_CODE'        THEN
1870 
1871   l_system_value := xla_ae_journal_entry_pkg.g_cache_pad.product_rule_code;
1872 
1873   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1874 
1875         trace
1876            (p_msg      => 'return value. = '||l_system_value
1877            ,p_level    => C_LEVEL_PROCEDURE
1878            ,p_module   => l_log_module);
1879 
1880         trace
1881           (p_msg      => 'END of GetSystemSourceChar'
1882           ,p_level    => C_LEVEL_PROCEDURE
1883           ,p_module   => l_log_module);
1884   END IF;
1885   RETURN l_system_value ;
1886 
1887 WHEN 'XLA_PAD_COMPILE_STATUS'        THEN
1888 
1889   l_system_value := xla_ae_journal_entry_pkg.g_cache_pad.pad_compile_status;
1890 
1891   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1892 
1893         trace
1894            (p_msg      => 'return value. = '||l_system_value
1895            ,p_level    => C_LEVEL_PROCEDURE
1896            ,p_module   => l_log_module);
1897 
1898         trace
1899           (p_msg      => 'END of GetSystemSourceChar'
1900           ,p_level    => C_LEVEL_PROCEDURE
1901           ,p_module   => l_log_module);
1902   END IF;
1903   RETURN l_system_value ;
1904 
1905 
1906 WHEN 'XLA_PAD_NAME'        THEN
1907 
1908   l_system_value :=xla_ae_journal_entry_pkg.g_cache_pad.product_rule_name;
1909   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1910 
1911         trace
1912            (p_msg      => 'return value. = '||l_system_value
1913            ,p_level    => C_LEVEL_PROCEDURE
1914            ,p_module   => l_log_module);
1915 
1916         trace
1917           (p_msg      => 'END of GetSystemSourceChar'
1918           ,p_level    => C_LEVEL_PROCEDURE
1919           ,p_module   => l_log_module);
1920   END IF;
1921   RETURN l_system_value ;
1922 
1923 
1924 WHEN 'XLA_PAD_OWNER'        THEN
1925 
1926   l_system_value := xla_ae_journal_entry_pkg.g_cache_pad.product_rule_type_code;
1927   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1928 
1929         trace
1930            (p_msg      => 'return value. = '||l_system_value
1931            ,p_level    => C_LEVEL_PROCEDURE
1932            ,p_module   => l_log_module);
1933 
1934         trace
1935           (p_msg      => 'END of GetSystemSourceChar'
1936           ,p_level    => C_LEVEL_PROCEDURE
1937           ,p_module   => l_log_module);
1938   END IF;
1939   RETURN l_system_value ;
1940 
1941 WHEN 'XLA_PAD_PACKAGE_NAME'        THEN
1942 
1943   l_system_value := xla_ae_journal_entry_pkg.g_cache_pad.pad_package_name;
1944   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1945 
1946         trace
1947            (p_msg      => 'return value. = '||l_system_value
1948            ,p_level    => C_LEVEL_PROCEDURE
1949            ,p_module   => l_log_module);
1950 
1951         trace
1952           (p_msg      => 'END of GetSystemSourceChar'
1953           ,p_level    => C_LEVEL_PROCEDURE
1954           ,p_module   => l_log_module);
1955   END IF;
1956   RETURN l_system_value ;
1957 
1958 WHEN 'XLA_PAD_VERSION'        THEN
1959 
1960   l_system_value := xla_ae_journal_entry_pkg.g_cache_pad.product_rule_version;
1961   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1962 
1963         trace
1964            (p_msg      => 'return value. = '||l_system_value
1965            ,p_level    => C_LEVEL_PROCEDURE
1966            ,p_module   => l_log_module);
1967 
1968         trace
1969           (p_msg      => 'END of GetSystemSourceChar'
1970           ,p_level    => C_LEVEL_PROCEDURE
1971           ,p_module   => l_log_module);
1972   END IF;
1973   RETURN l_system_value ;
1974 
1975 
1976 WHEN 'XLA_PERIOD_NAME'        THEN
1977 --
1978   IF g_period_ledger_id = xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id AND
1979      g_period_date      = xla_ae_journal_entry_pkg.g_cache_event.event_date
1980   THEN
1981      NULL;
1982   ELSE
1983     g_period_name   := xla_je_validation_pkg.get_period_name
1984                  (p_ledger_id          => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
1985                  ,p_accounting_date    => xla_ae_journal_entry_pkg.g_cache_event.event_date
1986                  ,p_closing_status     => l_closing_status
1987                  ,p_period_type        => g_period_type
1988                  );
1989      --
1990     g_period_ledger_id     := xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id;
1991     g_period_date          := xla_ae_journal_entry_pkg.g_cache_event.event_date;
1992   END IF;
1993 
1994   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
1995 
1996         trace
1997            (p_msg      => '-> CALL xla_je_validation_pkg.get_period_name API'
1998            ,p_level    => C_LEVEL_PROCEDURE
1999            ,p_module   => l_log_module);
2000 
2001         trace
2002            (p_msg      => 'return value. = '||g_period_name
2003            ,p_level    => C_LEVEL_PROCEDURE
2004            ,p_module   => l_log_module);
2005 
2006         trace
2007           (p_msg      => 'END of GetSystemSourceChar'
2008           ,p_level    => C_LEVEL_PROCEDURE
2009           ,p_module   => l_log_module);
2010   END IF;
2011   RETURN g_period_name;
2012 --
2013 WHEN 'XLA_PERIOD_TYPE'   THEN
2014 --
2015 --
2016   IF g_period_ledger_id = xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id AND
2017      g_period_date      = xla_ae_journal_entry_pkg.g_cache_event.event_date
2018   THEN
2019        NULL;
2020   ELSE
2021     g_period_name   := xla_je_validation_pkg.get_period_name
2022                  (p_ledger_id          => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
2023                  ,p_accounting_date    => xla_ae_journal_entry_pkg.g_cache_event.event_date
2024                  ,p_closing_status     => l_closing_status
2025                  ,p_period_type        => g_period_type
2026                  );
2027      --
2028     g_period_ledger_id     := xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id;
2029     g_period_date          := xla_ae_journal_entry_pkg.g_cache_event.event_date;
2030   END IF;
2031   --
2032  IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2033         trace
2034            (p_msg      => '-> CALL xla_je_validation_pkg.get_period_name API'
2035            ,p_level    => C_LEVEL_PROCEDURE
2036            ,p_module   => l_log_module);
2037 
2038         trace
2039            (p_msg      => 'return value. = '||g_period_type
2040            ,p_level    => C_LEVEL_PROCEDURE
2041            ,p_module   => l_log_module);
2042 
2043         trace
2044           (p_msg      => 'END of GetSystemSourceChar'
2045           ,p_level    => C_LEVEL_PROCEDURE
2046           ,p_module   => l_log_module);
2047   END IF;
2048   RETURN g_period_type;
2049 --
2050 
2051 WHEN 'XLA_REFERENCE_CHAR_1'    THEN
2052 
2053   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2054 
2055         trace
2056            (p_msg      => 'return value. = '||xla_ae_journal_entry_pkg.g_cache_event.reference_char_1
2057            ,p_level    => C_LEVEL_PROCEDURE
2058            ,p_module   => l_log_module);
2059 
2060         trace
2061           (p_msg      => 'END of GetSystemSourceChar'
2062           ,p_level    => C_LEVEL_PROCEDURE
2063           ,p_module   => l_log_module);
2064   END IF;
2065   RETURN xla_ae_journal_entry_pkg.g_cache_event.reference_char_1;
2066 
2067 WHEN 'XLA_REFERENCE_CHAR_2'    THEN
2068 
2069   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2070 
2071         trace
2072            (p_msg      => 'return value. = '||xla_ae_journal_entry_pkg.g_cache_event.reference_char_2
2073            ,p_level    => C_LEVEL_PROCEDURE
2074            ,p_module   => l_log_module);
2075 
2076         trace
2077           (p_msg      => 'END of GetSystemSourceChar'
2078           ,p_level    => C_LEVEL_PROCEDURE
2079           ,p_module   => l_log_module);
2080   END IF;
2081   RETURN xla_ae_journal_entry_pkg.g_cache_event.reference_char_2;
2082 
2083 WHEN 'XLA_REFERENCE_CHAR_3'    THEN
2084 
2085   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2086 
2087         trace
2088            (p_msg      => 'return value. = '||xla_ae_journal_entry_pkg.g_cache_event.reference_char_3
2089            ,p_level    => C_LEVEL_PROCEDURE
2090            ,p_module   => l_log_module);
2091 
2092         trace
2093           (p_msg      => 'END of GetSystemSourceChar'
2094           ,p_level    => C_LEVEL_PROCEDURE
2095           ,p_module   => l_log_module);
2096   END IF;
2097   RETURN xla_ae_journal_entry_pkg.g_cache_event.reference_char_3;
2098 
2099 WHEN 'XLA_REFERENCE_CHAR_4'    THEN
2100 
2101   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2102 
2103         trace
2104            (p_msg      => 'return value. = '||xla_ae_journal_entry_pkg.g_cache_event.reference_char_4
2105            ,p_level    => C_LEVEL_PROCEDURE
2106            ,p_module   => l_log_module);
2107 
2108         trace
2109           (p_msg      => 'END of GetSystemSourceChar'
2110           ,p_level    => C_LEVEL_PROCEDURE
2111           ,p_module   => l_log_module);
2112  END IF;
2113  RETURN  xla_ae_journal_entry_pkg.g_cache_event.reference_char_4;
2114 
2115 WHEN 'XLA_USER_JE_SOURCE_NAME'        THEN
2116 
2117   l_system_value := xla_accounting_cache_pkg.GetValueChar
2118           (
2119             p_source_code       => p_source_code
2120           , p_target_ledger_id  => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
2121            );
2122 
2123   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2124 
2125         trace
2126            (p_msg      => '-> CALL xla_accounting_cache_pkg.GetValueChar API'
2127            ,p_level    => C_LEVEL_PROCEDURE
2128            ,p_module   => l_log_module);
2129 
2130         trace
2131            (p_msg      => 'return value. = '|| l_system_value
2132            ,p_level    => C_LEVEL_PROCEDURE
2133            ,p_module   => l_log_module);
2134 
2135         trace
2136           (p_msg      => 'END of GetSystemSourceChar'
2137           ,p_level    => C_LEVEL_PROCEDURE
2138           ,p_module   => l_log_module);
2139   END IF;
2140   RETURN l_system_value ;
2141 ELSE
2142 
2143   xla_ae_journal_entry_pkg.g_global_status      :=  xla_ae_journal_entry_pkg.C_INVALID;
2144   xla_accounting_err_pkg.build_message
2145                              (p_appli_s_name            => 'XLA'
2146                              ,p_msg_name                => 'XLA_AP_INVALID_SYSTEM_SOURCE'
2147                              ,p_token_1                 => 'SOURCE_NAME'
2148                              ,p_value_1                 => GetSourceName(
2149                                                            p_source_code
2150                                                          , p_source_type_code
2151                                                          , p_source_application_id
2152                                                          )
2153                              ,p_entity_id               => xla_ae_journal_entry_pkg.g_cache_event.entity_id
2154                              ,p_event_id                => xla_ae_journal_entry_pkg.g_cache_event.event_id
2155                              ,p_ledger_id               => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
2156            );
2157 
2158   IF (C_LEVEL_ERROR >= g_log_level) THEN
2159               trace
2160                    (p_msg      => 'ERROR: XLA_AP_INVALID_SYSTEM_SOURCE'
2161                    ,p_level    => C_LEVEL_ERROR
2162                    ,p_module   => l_log_module);
2163   END IF;
2164   RETURN NULL;
2165 
2166 END CASE;
2167 --
2168 EXCEPTION
2169 WHEN xla_exceptions_pkg.application_exception THEN
2170    xla_ae_journal_entry_pkg.g_global_status      :=  xla_ae_journal_entry_pkg.C_INVALID;
2171    xla_accounting_err_pkg.build_message
2172                                (p_appli_s_name            => 'XLA'
2173                                ,p_msg_name                => 'XLA_AP_INVALID_SYSTEM_SOURCE'
2174                                ,p_token_1                 => 'SOURCE_NAME'
2175                                ,p_value_1                 => GetSourceName(
2176                                                            p_source_code
2177                                                          , p_source_type_code
2178                                                          , p_source_application_id
2179                                                          )
2180                                ,p_entity_id               => xla_ae_journal_entry_pkg.g_cache_event.entity_id
2181                                ,p_event_id                => xla_ae_journal_entry_pkg.g_cache_event.event_id
2182                                ,p_ledger_id               => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
2183            );
2184 
2185     IF (C_LEVEL_EXCEPTION >= g_log_level) THEN
2186               trace
2187                    (p_msg      => 'ERROR: XLA_AP_INVALID_SYSTEM_SOURCE'
2188                    ,p_level    => C_LEVEL_EXCEPTION
2189                    ,p_module   => l_log_module);
2190     END IF;
2191 
2192     RETURN NULL;
2193 WHEN OTHERS  THEN
2194    xla_exceptions_pkg.raise_message
2195            (p_location => 'xla_ae_sources_pkg.GetSystemSourceChar');
2196        --
2197 END GetSystemSourceChar;
2198 --
2199 --
2200 --+==========================================================================+
2201 --| PUBLIC  procedures and functions                                         |
2202 --|                                                                          |
2203 --|                                                                          |
2204 --|   GetTranslatedLookupMeaning                                             |
2205 --|                                                                          |
2206 --|   GetUnTranslatedLookupMeaning                                           |
2207 --|                                                                          |
2208 --|                                                                          |
2209 --|                                                                          |
2210 --|                                                                          |
2211 --|                                                                          |
2212 --|                                                                          |
2213 --|                                                                          |
2214 --|                                                                          |
2215 --|                                                                          |
2216 --+==========================================================================+
2217 --
2218 /*======================================================================+
2219 |                                                                       |
2220 | Public Function                                                       |
2221 |                                                                       |
2222 |                                                                       |
2223 +======================================================================*/
2224 FUNCTION GetLookupMeaning(
2225   p_lookup_code            IN VARCHAR2
2226 , p_lookup_type            IN VARCHAR2
2227 , p_view_application_id    IN NUMBER
2228 , p_source_code            IN VARCHAR2
2229 , p_source_type_code       IN VARCHAR2
2230 , p_source_application_id  IN INTEGER
2231 )
2232 RETURN VARCHAR2
2233 
2234 IS
2235 
2236 l_language          VARCHAR2(30):=xla_ae_journal_entry_pkg.g_cache_ledgers_info.description_language;
2237 l_event_date        DATE        :=xla_ae_journal_entry_pkg.g_cache_event.event_date;
2238 l_log_module        VARCHAR2(240);
2239 
2240 BEGIN
2241 --
2242 IF g_log_enabled THEN
2243       l_log_module := C_DEFAULT_MODULE||'.GetLookupMeaning';
2244 END IF;
2245 --
2246 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2247 
2248       trace
2249          (p_msg      => 'BEGIN of GetLookupMeaning'
2250          ,p_level    => C_LEVEL_PROCEDURE
2251          ,p_module   => l_log_module);
2252 
2253       trace
2254          (p_msg      => 'p_lookup_code = '|| p_lookup_code
2255          ,p_level    => C_LEVEL_PROCEDURE
2256          ,p_module   => l_log_module);
2257 
2258       trace
2259           (p_msg      => 'p_lookup_type = '|| p_lookup_type
2260          ,p_level    => C_LEVEL_PROCEDURE
2261          ,p_module   => l_log_module);
2262 
2263      trace
2264           (p_msg      => 'p_view_application_id = '|| p_view_application_id
2265          ,p_level    => C_LEVEL_PROCEDURE
2266          ,p_module   => l_log_module);
2267 
2268 END IF;
2269 --
2270 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
2271 
2272     trace
2273          (p_msg      => 'p_source_code = '|| p_source_code
2274          ,p_level    => C_LEVEL_STATEMENT
2275          ,p_module   => l_log_module);
2276 
2277     trace
2278          (p_msg      => 'p_source_type_code = '|| p_source_type_code
2279          ,p_level    => C_LEVEL_STATEMENT
2280          ,p_module   => l_log_module);
2281 
2282     trace
2283          (p_msg      => 'p_source_application_id = '|| p_source_application_id
2284          ,p_level    => C_LEVEL_STATEMENT
2285          ,p_module   => l_log_module);
2286 
2287 END IF;
2288 --
2289 
2290 IF g_meaning_lookup_type     = p_lookup_type                     AND
2291    g_meaning_lookup_code     = p_lookup_code                     AND
2292    g_meaning_lookup_language = NVL(l_language , USERENV('LANG')) AND
2293    g_meaning_view_appl_id    = p_view_application_id             AND
2294    l_event_date BETWEEN g_meaning_start_date AND g_meaning_end_date
2295 THEN
2296 
2297    NULL;
2298 
2299 ELSIF p_lookup_code IS NOT NULL AND p_lookup_type IS NOT NULL THEN
2300 
2301 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
2302     trace
2303          (p_msg      => 'SQL - Select from fnd_lookup_values'
2304          ,p_level    => C_LEVEL_STATEMENT
2305          ,p_module   => l_log_module);
2306 
2307 END IF;
2308 
2309 SELECT meaning,
2310        start_date_active,
2311        end_date_active
2312   INTO g_meaning_lookup
2313       ,g_meaning_start_date
2314       ,g_meaning_end_date
2315   FROM fnd_lookup_values
2316  WHERE  lookup_type         = p_lookup_type
2317    AND  lookup_code         = p_lookup_code
2318    AND  view_application_id = p_view_application_id
2319    AND  language            = NVL(l_language , USERENV('LANG'))
2320    AND  enabled_flag        = 'Y'
2321    AND  l_event_date BETWEEN nvl(start_date_active,l_event_date)  AND nvl (end_date_active, l_event_date)
2322 ;
2323 
2324 g_meaning_lookup_type                := p_lookup_type;
2325 g_meaning_lookup_code                := p_lookup_code;
2326 g_meaning_lookup_language            := NVL(l_language , USERENV('LANG'));
2327 g_meaning_view_appl_id               := p_view_application_id;
2328 
2329 ELSE
2330 
2331   g_meaning_lookup:= NULL;
2332 
2333 END IF;
2334 
2335 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2336 
2337         trace
2338            (p_msg      => 'return value. = '|| g_meaning_lookup
2339            ,p_level    => C_LEVEL_PROCEDURE
2340            ,p_module   => l_log_module);
2341 
2342         trace
2343           (p_msg      => 'END of GetLookupMeaning'
2344           ,p_level    => C_LEVEL_PROCEDURE
2345           ,p_module   => l_log_module);
2346 END IF;
2347 
2348 RETURN g_meaning_lookup;
2349 
2350 EXCEPTION
2351 WHEN NO_DATA_FOUND OR TOO_MANY_ROWS THEN
2352 
2353    xla_ae_journal_entry_pkg.g_global_status      :=  xla_ae_journal_entry_pkg.C_INVALID;
2354    xla_accounting_err_pkg. build_message
2355                (p_appli_s_name            => 'XLA'
2356                ,p_msg_name                => 'XLA_AP_NO_LOOKUP_MEANING'
2357                ,p_token_1                 => 'SOURCE_NAME'
2358                ,p_value_1                 =>  GetSourceName(
2359                                                            p_source_code
2360                                                          , p_source_type_code
2361                                                          , p_source_application_id
2362                                                          )
2363                ,p_token_2                 => 'LOOKUP_CODE'
2364                ,p_value_2                 =>  p_lookup_code
2365                ,p_token_3                 => 'LOOKUP_TYPE'
2366                ,p_value_3                 =>  p_lookup_type
2367                ,p_token_4                 => 'PRODUCT_NAME'
2368                ,p_value_4                 => xla_ae_journal_entry_pkg.g_cache_event.application_name
2369                ,p_entity_id               => xla_ae_journal_entry_pkg.g_cache_event.entity_id
2370                ,p_event_id                => xla_ae_journal_entry_pkg.g_cache_event.event_id
2371                ,p_ledger_id               => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
2372        );
2373 
2374     IF (C_LEVEL_ERROR >= g_log_level) THEN
2375               trace
2376                    (p_msg      => 'ERROR: XLA_AP_NO_LOOKUP_MEANING'
2377                    ,p_level    => C_LEVEL_ERROR
2378                    ,p_module   => l_log_module);
2379     END IF;
2380 
2381    RETURN NULL;
2382 WHEN xla_exceptions_pkg.application_exception THEN
2383   RAISE;
2384 WHEN OTHERS  THEN
2385    xla_exceptions_pkg.raise_message
2386            (p_location => 'xla_ae_sources_pkg.GetLookupMeaning');
2387        --
2388 END GetLookupMeaning;
2389 --
2390 --
2391 --+==========================================================================+
2392 --| PUBLIC  procedures and functions                                         |
2393 --|                                                                          |
2394 --|                                                                          |
2395 --|   mapping set                                                            |
2396 --|                                                                          |
2397 --|                                                                          |
2398 --|                                                                          |
2399 --|                                                                          |
2400 --|                                                                          |
2401 --|                                                                          |
2402 --|                                                                          |
2403 --|                                                                          |
2404 --|                                                                          |
2405 --|                                                                          |
2406 --|                                                                          |
2407 --+==========================================================================+
2408 --
2409 --
2410 /*======================================================================+
2411 |                                                                       |
2412 | Public Procedure                                                      |
2413 |                                                                       |
2414 |                                                                       |
2415 +======================================================================*/
2416 FUNCTION get_mapping_flexfield_number (
2417    p_component_type      IN VARCHAR2
2418  , p_component_code      IN VARCHAR2
2419  , p_component_type_code IN VARCHAR2
2420  , p_component_appl_id   IN INTEGER
2421  , p_amb_context_code    IN VARCHAR2
2422  , p_mapping_set_code    IN VARCHAR2
2423  , p_input_constant      IN VARCHAR2
2424  , p_ae_header_id        IN NUMBER
2425  )
2426  RETURN NUMBER
2427  IS
2428  --
2429  l_result               NUMBER;
2430  l_default              NUMBER;
2431  l_event_date           DATE := xla_ae_journal_entry_pkg.g_cache_event.event_date;
2432  l_exists               BOOLEAN:= FALSE;
2433  --
2434  --
2435  CURSOR value_cur( p_mapping_set_code   VARCHAR2
2436                  , p_input_constant     VARCHAR2
2437                  , p_event_date         DATE
2438                 )
2439  IS
2440  --
2441  SELECT   xmsv.value_code_combination_id
2442        ,  xmsv.input_value_type_code
2443     FROM  xla_mapping_set_values  xmsv
2444    WHERE  xmsv.mapping_set_code    = p_mapping_set_code
2445      AND  ( p_event_date  BETWEEN NVL(xmsv.effective_date_from,p_event_date)
2446                               AND NVL(xmsv.effective_date_to,p_event_date) )
2447      AND ( ( xmsv.input_value_type_code  ='I'
2448            AND nvl(xmsv.input_value_constant,p_input_constant) = p_input_constant
2449            )
2450            OR
2451            ( xmsv.input_value_type_code = 'D'
2452             )
2453          )
2454      AND enabled_flag = 'Y'
2455   ;
2456  --
2457  l_log_module         VARCHAR2(240);
2458  BEGIN
2459  --
2460  IF g_log_enabled THEN
2461        l_log_module := C_DEFAULT_MODULE||'.get_mapping_flexfield_number';
2462  END IF;
2463 --
2464  IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2465 
2466        trace
2467           (p_msg      => 'BEGIN of get_mapping_flexfield_number'
2468           ,p_level    => C_LEVEL_PROCEDURE
2469           ,p_module   => l_log_module);
2470 
2471        trace
2472           (p_msg      => 'p_mapping_set_code = '|| p_mapping_set_code
2473           ,p_level    => C_LEVEL_PROCEDURE
2474           ,p_module   => l_log_module);
2475 
2476        trace
2477            (p_msg      => 'p_input_constant = '|| p_input_constant
2478           ,p_level    => C_LEVEL_PROCEDURE
2479           ,p_module   => l_log_module);
2480 
2481       trace
2482            (p_msg      => 'l_event_date = '|| TO_CHAR(l_event_date)
2483           ,p_level    => C_LEVEL_PROCEDURE
2484           ,p_module   => l_log_module);
2485 
2486  END IF;
2487  --
2488  l_result              := NULL;
2489  l_default             := NULL;
2490  --
2491  l_exists               := FALSE;
2492  --
2493  --
2494  IF (C_LEVEL_STATEMENT >= g_log_level) THEN
2495 
2496      trace
2497           (p_msg      => 'p_component_type = '|| p_component_type
2498           ,p_level    => C_LEVEL_STATEMENT
2499           ,p_module   => l_log_module);
2500 
2501      trace
2502           (p_msg      => 'p_component_code = '|| p_component_code
2503           ,p_level    => C_LEVEL_STATEMENT
2504           ,p_module   => l_log_module);
2505 
2506      trace
2507           (p_msg      => 'p_component_type_code = '|| p_component_type_code
2508           ,p_level    => C_LEVEL_STATEMENT
2509           ,p_module   => l_log_module);
2510 
2511      trace
2512           (p_msg      => 'p_component_appl_id = '|| p_component_appl_id
2513           ,p_level    => C_LEVEL_STATEMENT
2514           ,p_module   => l_log_module);
2515 
2516      trace
2517           (p_msg      => 'p_amb_context_code = '|| p_amb_context_code
2518           ,p_level    => C_LEVEL_STATEMENT
2519           ,p_module   => l_log_module);
2520 
2521       trace
2522            (p_msg      => 'SQL- Select from xla_mapping_set_values '
2523           ,p_level    => C_LEVEL_STATEMENT
2524           ,p_module   => l_log_module);
2525  END IF;
2526 --
2527   FOR value_rec IN value_cur(  p_mapping_set_code   => p_mapping_set_code
2528                              , p_input_constant     => p_input_constant
2529                              , p_event_date         => l_event_date
2530                             )
2531   LOOP
2532   --
2533 
2534    IF value_rec.input_value_type_code = 'I' THEN
2535        --
2536        l_result := value_rec.value_code_combination_id;
2537        l_exists := TRUE;
2538        --
2539     ELSIF value_rec.input_value_type_code = 'D' THEN
2540        --
2541        l_default := value_rec.value_code_combination_id;
2542        l_exists := TRUE;
2543        --
2544    END IF;
2545   --
2546   END LOOP;
2547   --
2548  l_result := NVL(l_result,l_default);
2549 
2550 /* 4731177 Do not error if no value found
2551  IF NOT l_exists THEN
2552     l_result:= NULL;
2553     xla_ae_journal_entry_pkg.g_global_status      :=  xla_ae_journal_entry_pkg.C_INVALID;
2554     xla_accounting_err_pkg.build_message
2555                     (p_appli_s_name            => 'XLA'
2556                     ,p_msg_name                => 'XLA_AP_MAPPING_SET'
2557                     ,p_token_1                 => 'SOURCE_VALUE'
2558                     ,p_value_1                 => p_input_constant
2559                     ,p_token_2                 => 'MAPPING_SET_NAME'
2560                     ,p_value_2                 => GetMappingSetName(
2561                                                    p_mapping_set_code
2562                                                  , p_amb_context_code
2563                                                   )
2564                     ,p_token_3                 => 'COMPONENT_NAME'
2565                     ,p_value_3                 =>   GetComponentName  (
2566                                                             p_component_type
2567                                                           , p_component_code
2568                                                           , p_component_type_code
2569                                                           , p_component_appl_id
2570                                                           , p_amb_context_code
2571                                                           )
2572                     ,p_token_4                 => 'OWNER'
2573                     ,p_value_4                 => xla_lookups_pkg.get_meaning(
2574                                                             'XLA_OWNER_TYPE'
2575                                                            , p_component_type_code)
2576                     ,p_token_5                 => 'PAD_NAME'
2577                     ,p_value_5                 => xla_ae_journal_entry_pkg.g_cache_pad.pad_session_name
2578                     ,p_token_6                 => 'PAD_OWNER'
2579                     ,p_value_6                 =>  xla_lookups_pkg.get_meaning(
2580                                                           'XLA_OWNER_TYPE'
2581                                                           ,xla_ae_journal_entry_pkg.g_cache_pad.product_rule_type_code
2582                                                          )
2583                     ,p_entity_id               => xla_ae_journal_entry_pkg.g_cache_event.entity_id
2584                     ,p_event_id                => xla_ae_journal_entry_pkg.g_cache_event.event_id
2585                     ,p_ledger_id               => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
2586                     ,p_ae_header_id            => NULL -- p_ae_header_id
2587                       );
2588 
2589     IF (C_LEVEL_ERROR >= g_log_level) THEN
2590               trace
2591                    (p_msg      => 'ERROR: XLA_AP_MAPPING_SET'
2592                    ,p_level    => C_LEVEL_ERROR
2593                    ,p_module   => l_log_module);
2594     END IF;
2595 
2596  END IF;
2597 */
2598 
2599 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2600 
2601          trace
2602             (p_msg      => 'return value. = '|| l_result
2603             ,p_level    => C_LEVEL_PROCEDURE
2604             ,p_module   => l_log_module);
2605 
2606          trace
2607            (p_msg      => 'END of get_mapping_flexfield_number'
2608            ,p_level    => C_LEVEL_PROCEDURE
2609            ,p_module   => l_log_module);
2610 END IF;
2611 --
2612 RETURN l_result;
2613 --
2614 EXCEPTION
2615 WHEN xla_exceptions_pkg.application_exception THEN
2616   RAISE;
2617 WHEN OTHERS  THEN
2618    xla_exceptions_pkg.raise_message
2619            (p_location => 'xla_ae_sources_pkg.get_mapping_flexfield_number');
2620 END get_mapping_flexfield_number;
2621 --
2622 --
2623 /*======================================================================+
2624 |                                                                       |
2625 | Public Procedure                                                      |
2626 |                                                                       |
2627 |                                                                       |
2628 +======================================================================*/
2629 FUNCTION get_mapping_flexfield_char (
2630    p_component_type      IN VARCHAR2
2631  , p_component_code      IN VARCHAR2
2632  , p_component_type_code IN VARCHAR2
2633  , p_component_appl_id   IN INTEGER
2634  , p_amb_context_code    IN VARCHAR2
2635  , p_mapping_set_code    IN VARCHAR2
2636  , p_input_constant      IN VARCHAR2
2637  , p_ae_header_id        IN NUMBER
2638  )
2639  RETURN VARCHAR2
2640  IS
2641  --
2642  l_event_date           DATE := xla_ae_journal_entry_pkg.g_cache_event.event_date;
2643  --
2644  CURSOR value_cur(  p_mapping_set_code   VARCHAR2
2645                   , p_input_constant     VARCHAR2
2646                   , p_event_date         DATE
2647                 )
2648  IS
2649  --
2650  SELECT   xmsv.value_constant
2651        ,  xmsv.input_value_type_code
2652     FROM  xla_mapping_set_values  xmsv
2653    WHERE  xmsv.mapping_set_code    = p_mapping_set_code
2654      AND  ( p_event_date  BETWEEN NVL(xmsv.effective_date_from,p_event_date)
2655                               AND NVL(xmsv.effective_date_to,p_event_date) )
2656      AND ( ( xmsv.input_value_type_code ='I'
2657            AND nvl(xmsv.input_value_constant,p_input_constant) = p_input_constant )
2658            OR   xmsv.input_value_type_code = 'D'
2659          )
2660      AND enabled_flag = 'Y'
2661   ;
2662  --
2663  l_result               VARCHAR2(240);
2664  l_default              VARCHAR2(240);
2665  l_exists               BOOLEAN:= FALSE;
2666  l_log_module           VARCHAR2(240);
2667  BEGIN
2668   --
2669   IF g_log_enabled THEN
2670         l_log_module := C_DEFAULT_MODULE||'.get_mapping_flexfield_char';
2671   END IF;
2672 --
2673  IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2674 
2675        trace
2676           (p_msg      => 'BEGIN of get_mapping_flexfield_char'
2677           ,p_level    => C_LEVEL_PROCEDURE
2678           ,p_module   => l_log_module);
2679 
2680        trace
2681           (p_msg      => 'p_mapping_set_code = '|| p_mapping_set_code
2682           ,p_level    => C_LEVEL_PROCEDURE
2683           ,p_module   => l_log_module);
2684 
2685        trace
2686            (p_msg      => 'p_input_constant = '|| p_input_constant
2687           ,p_level    => C_LEVEL_PROCEDURE
2688           ,p_module   => l_log_module);
2689 
2690       trace
2691            (p_msg      => 'l_event_date = '|| TO_CHAR(l_event_date)
2692           ,p_level    => C_LEVEL_PROCEDURE
2693           ,p_module   => l_log_module);
2694 
2695  END IF;
2696  --
2697 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
2698 
2699       trace
2700            (p_msg      => 'p_component_type = '|| p_component_type
2701            ,p_level    => C_LEVEL_STATEMENT
2702            ,p_module   => l_log_module);
2703 
2704       trace
2705            (p_msg      => 'p_component_code = '|| p_component_code
2706            ,p_level    => C_LEVEL_STATEMENT
2707            ,p_module   => l_log_module);
2708 
2709       trace
2710            (p_msg      => 'p_component_type_code = '|| p_component_type_code
2711            ,p_level    => C_LEVEL_STATEMENT
2712            ,p_module   => l_log_module);
2713 
2714       trace
2715            (p_msg      => 'p_component_appl_id = '|| p_component_appl_id
2716            ,p_level    => C_LEVEL_STATEMENT
2717            ,p_module   => l_log_module);
2718 
2719       trace
2720            (p_msg      => 'p_amb_context_code = '|| p_amb_context_code
2721            ,p_level    => C_LEVEL_STATEMENT
2722            ,p_module   => l_log_module);
2723 
2724        trace
2725             (p_msg      => 'SQL- Select from xla_mapping_set_values '
2726            ,p_level    => C_LEVEL_STATEMENT
2727            ,p_module   => l_log_module);
2728  END IF;
2729 --
2730  l_result              := NULL;
2731  l_default             := NULL;
2732  l_exists              := FALSE;
2733  --
2734  FOR value_rec IN value_cur(  p_mapping_set_code   => p_mapping_set_code
2735                             , p_input_constant     => p_input_constant
2736                             , p_event_date         => l_event_date
2737                            )
2738   LOOP
2739   --
2740     IF value_rec.input_value_type_code = 'I' THEN
2741        --
2742        l_result := value_rec.value_constant;
2743        l_exists := TRUE;
2744        --
2745     ELSIF value_rec.input_value_type_code = 'D' THEN
2746        --
2747        l_default := value_rec.value_constant;
2748        l_exists := TRUE;
2749        --
2750     END IF;
2751   --
2752   END LOOP;
2753   --
2754  l_result := NVL(l_result,l_default);
2755  --
2756 /* 4731177 Do not error if no value found
2757  IF  NOT l_exists THEN
2758     l_result:= NULL;
2759     xla_ae_journal_entry_pkg.g_global_status      :=  xla_ae_journal_entry_pkg.C_INVALID;
2760     xla_accounting_err_pkg.build_message
2761                     (p_appli_s_name            => 'XLA'
2762                     ,p_msg_name                => 'XLA_AP_MAPPING_SET'
2763                     ,p_token_1                 => 'SOURCE_VALUE'
2764                     ,p_value_1                 => p_input_constant
2765                     ,p_token_2                 => 'MAPPING_SET_NAME'
2766                     ,p_value_2                 => GetMappingSetName(
2767                                                    p_mapping_set_code
2768                                                  , p_amb_context_code
2769                                                   )
2770                     ,p_token_3                 => 'COMPONENT_NAME'
2771                     ,p_value_3                 =>    GetComponentName  (
2772                                                             p_component_type
2773                                                           , p_component_code
2774                                                           , p_component_type_code
2775                                                           , p_component_appl_id
2776                                                           , p_amb_context_code
2777                                                           )
2778                     ,p_token_4                 => 'OWNER'
2779                     ,p_value_4                 =>  xla_lookups_pkg.get_meaning(
2780                                                             'XLA_OWNER_TYPE'
2781                                                            , p_component_type_code)
2782                     ,p_token_5                 => 'PAD_NAME'
2783                     ,p_value_5                 => xla_ae_journal_entry_pkg.g_cache_pad.pad_session_name
2784                     ,p_token_6                 => 'PAD_OWNER'
2785                     ,p_value_6                 =>  xla_lookups_pkg.get_meaning(
2786                                                                 'XLA_OWNER_TYPE'
2787                                                                 ,xla_ae_journal_entry_pkg.g_cache_pad.product_rule_type_code
2788                                                                 )
2789                     ,p_entity_id               => xla_ae_journal_entry_pkg.g_cache_event.entity_id
2790                     ,p_event_id                => xla_ae_journal_entry_pkg.g_cache_event.event_id
2791                     ,p_ledger_id               => xla_ae_journal_entry_pkg.g_cache_event.target_ledger_id
2792                     ,p_ae_header_id            => NULL -- p_ae_header_id
2793                       );
2794 
2795     IF (C_LEVEL_ERROR >= g_log_level) THEN
2796               trace
2797                    (p_msg      => 'ERROR: XLA_AP_MAPPING_SET'
2798                    ,p_level    => C_LEVEL_ERROR
2799                    ,p_module   => l_log_module);
2800     END IF;
2801 
2802  END IF;
2803 */
2804 
2805 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2806 
2807          trace
2808             (p_msg      => 'return value. = '|| l_result
2809             ,p_level    => C_LEVEL_PROCEDURE
2810             ,p_module   => l_log_module);
2811 
2812          trace
2813            (p_msg      => 'END of get_mapping_flexfield_char'
2814            ,p_level    => C_LEVEL_PROCEDURE
2815            ,p_module   => l_log_module);
2816 END IF;
2817 --
2818  --
2819  RETURN l_result;
2820  --
2821 EXCEPTION
2822 WHEN xla_exceptions_pkg.application_exception THEN
2823   RAISE;
2824 WHEN OTHERS  THEN
2825    xla_exceptions_pkg.raise_message
2826            (p_location => 'xla_ae_sources_pkg.get_mapping_flexfield_char');
2827  END get_mapping_flexfield_char;
2828 --
2829 --
2830 /*======================================================================+
2831 |                                                                       |
2832 | Public Function                                                       |
2833 |      Convert date into varchar according to the description language  |
2834 |                                                                       |
2835 +======================================================================*/
2836 FUNCTION DATE_TO_CHAR (
2837    p_date               IN DATE
2838   ,p_nls_desc_language  IN VARCHAR2
2839  )
2840 RETURN VARCHAR2
2841 IS
2842 l_date_language     VARCHAR2(200);
2843 l_date_format       VARCHAR2(200);
2844 l_log_module        VARCHAR2(240);
2845 BEGIN
2846 --
2847 IF g_log_enabled THEN
2848         l_log_module := C_DEFAULT_MODULE||'.DATE_TO_CHAR';
2849 END IF;
2850 --
2851 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2852 
2853        trace
2854           (p_msg      => 'BEGIN of DATE_TO_CHAR'
2855           ,p_level    => C_LEVEL_PROCEDURE
2856           ,p_module   => l_log_module);
2857 
2858        trace
2859           (p_msg      => 'p_date = '|| p_date
2860           ,p_level    => C_LEVEL_PROCEDURE
2861           ,p_module   => l_log_module);
2862 
2863        trace
2864            (p_msg      => 'p_nls_desc_language = '|| p_nls_desc_language
2865           ,p_level    => C_LEVEL_PROCEDURE
2866           ,p_module   => l_log_module);
2867 
2868  END IF;
2869  --
2870 
2871 l_date_language := 'nls_date_language= '''||p_nls_desc_language||'''';
2872 l_date_format   := SYS_CONTEXT('USERENV','NLS_DATE_FORMAT');
2873 --
2874 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
2875 
2876          trace
2877             (p_msg      => 'return value. = '|| TO_CHAR(p_date,l_date_format,l_date_language)
2878             ,p_level    => C_LEVEL_PROCEDURE
2879             ,p_module   => l_log_module);
2880 
2881          trace
2882            (p_msg      => 'END of DATE_TO_CHAR'
2883            ,p_level    => C_LEVEL_PROCEDURE
2884            ,p_module   => l_log_module);
2885 END IF;
2886 
2887 RETURN TO_CHAR(p_date,l_date_format,l_date_language);
2888 --
2889 EXCEPTION
2890 WHEN xla_exceptions_pkg.application_exception THEN
2891   RAISE;
2892 WHEN OTHERS  THEN
2893    xla_exceptions_pkg.raise_message
2894            (p_location => 'xla_ae_sources_pkg.DATE_TO_CHAR');
2895 END DATE_TO_CHAR;
2896 --
2897 --
2898 --=============================================================================
2899 --
2900 --
2901 --
2902 --
2903 --
2904 --
2905 --
2906 --
2907 --
2908 --
2909 --
2910 --
2911 --
2912 --
2913 --
2914 --
2915 --
2916 --
2917 --
2918 --
2919 --
2920 --
2921 --=============================================================================
2922 --=============================================================================
2923 --          *********** Initialization routine **********
2924 --=============================================================================
2925 
2926 BEGIN
2927 
2928    g_log_level      := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
2929    g_log_enabled    := fnd_log.test
2930                           (log_level  => g_log_level
2931                           ,module     => C_DEFAULT_MODULE);
2932 
2933    IF NOT g_log_enabled  THEN
2934       g_log_level := C_LEVEL_LOG_DISABLED;
2935    END IF;
2936 
2937 END xla_ae_sources_pkg; --