DBA Data[Home] [Help]

PACKAGE BODY: APPS.JA_CN_PS_GBI_EXPORT_PKG

Source


1 PACKAGE BODY JA_CN_PS_GBI_EXPORT_PKG AS
2 --$Header: JACNPGBB.pls 120.0 2010/09/01 09:57:10 wuwu noship $
3 --+=======================================================================+
4 --|               Copyright (c) 1998 Oracle Corporation                   |
5 --|                       Redwood Shores, CA, USA                         |
6 --|                         All rights reserved.                          |
7 --+=======================================================================+
8 --| FILENAME                                                              |
9 --|     JACNPGBB.pls                                                      |
10 --|                                                                       |
11 --| DESCRIPTION                                                           |
12 --|     Use this package to export GL Basic Information                   |
13 --|                                                                       |
14 --| PROCEDURE LIST                                                        |
15 --|      PROCEDURE Add_GL_Basic_Info                                      |
16 --|                                                                       |
17 --|                                                                       |
18 --| HISTORY                                                               |
19 --|    11-Aug-2010   Chaoqun Wu    created                                |
20 --+======================================================================*/
21 GV_MODULE_PREFIX VARCHAR2(100) := 'JA_CN_PS_GBI_EXPORT_PKG';
22 
23 --==========================================================================
24 --  PROCEDURE NAME:
25 --
26 --    Add_GL_Basic_Info                        Public
27 --
28 --  DESCRIPTION:
29 --
30 --    This procedure is to export GL basic information
31 --
32 --  PARAMETERS:
33 --      In:  pn_coa_id           chart of account id
34 --
35 --  DESIGN REFERENCES:
36 --    TDD_1213_FIN_GL_P_CNAOV2_GL.doc
37 --
38 --  CHANGE HISTORY:
39 --      11-Aug-2010   Chaoqun Wu  created
40 --==========================================================================
41 
42 
43 PROCEDURE Add_GL_Basic_Info
44 (pn_coa_id        NUMBER)
45 IS
46 lv_procedure_name      VARCHAR2(40) := 'Add_GL_Basic_Info';
47 ln_dbg_level           NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
48 ln_proc_level          NUMBER := FND_LOG.LEVEL_PROCEDURE;
49 ln_statement_level     NUMBER := FND_LOG.LEVEL_STATEMENT;
50 NO_DATA                EXCEPTION;
51 lv_separator           VARCHAR2(1);
52 lv_account_structure   VARCHAR2(200);
53 lv_cash_flow_item_rule VARCHAR2(10);
54 
55 -- to get the cash flow items
56 CURSOR gl_basic_info_cur
57 ( pn_coa_id      NUMBER
58 )
59 IS
60 SELECT
61   fifs.concatenated_segment_delimiter separator
62 , jcask.concatenated_segments         account_structure
63 FROM
64   FND_ID_FLEX_STRUCTURES       fifs
65 , ja_cn_account_structures_kfv jcask
66 , ja_cn_sub_acc_sources_all    jcsasa
67 WHERE  fifs.id_flex_num = jcask.structure_id
68   AND  jcask.account_structure_id = jcsasa.accounting_struct_id
69   AND  jcsasa.chart_of_accounts_id = pn_coa_id;
70 
71 BEGIN
72   --logging for debug
73   IF (ln_proc_level >= ln_dbg_level)
74   THEN
75     FND_LOG.STRING(ln_proc_level,
76                    GV_MODULE_PREFIX || '.' || lv_procedure_name ||
77                    '.begin',
78                    'Enter procedure');
79     -- logging the parameters
80     FND_LOG.STRING(ln_proc_level,
81                    lv_procedure_name ||
82                    '.parameters',
83                    'pn_coa_id=' || pn_coa_id);
84   END IF; --(ln_proc_level >= ln_dbg_level)
85 
86   FND_FILE.put_line(FND_FILE.log, lv_procedure_name ||
87                    '.parameters:' ||
88                    'pn_coa_id=' || pn_coa_id);
89 
90   -- retrive the separator, account structure
91   OPEN gl_basic_info_cur(pn_coa_id);
92   FETCH gl_basic_info_cur INTO lv_separator, lv_account_structure;
93   CLOSE gl_basic_info_cur;
94 
95   --logging the variables
96   IF (ln_statement_level >= ln_dbg_level)
97   THEN
98     FND_LOG.STRING(ln_statement_level,
99                    lv_procedure_name,
100                    'lv_separator=' || lv_separator || ',' ||
101                    'lv_account_structure=' || lv_account_structure);
102   END IF;  --(ln_statement_level >= ln_dbg_level)
103 
104   FND_FILE.put_line(FND_FILE.log, lv_procedure_name ||
105                    '.variables:' ||
106                    'lv_separator=' || lv_separator || ',' ||
107                    'lv_account_structure=' || lv_account_structure);
108 
109   IF(lv_separator IS NULL OR lv_account_structure IS NULL)
110   THEN
111     Ja_Cn_Utility.Print_No_Data_Found_For_Log('GL_BASIC_INFORMATION');
112   END IF; --(lv_separator IS NULL OR lv_account_structure IS NULL)
113   -- add to XML document
114   Ja_Cn_Utility.Add_Sub_Root_Node('GL_BASIC_INFORMATION',
115                                   Ja_Cn_Utility.GV_TAG_TYPE_START);
116 
117   -- separator is a fixed length: 1
118   Ja_Cn_Utility.Add_Fixed_Child_Node('SEPARATOR',
119                                      lv_separator,
120                                      1);
121 
122   Ja_Cn_Utility.Add_Child_Node('ACCOUNT_STRUCTURE',
123                                lv_account_structure);
124 
125   -- for the last four elements, always set to NULL;
126   Ja_Cn_Utility.Add_Child_Node('JOURNAL_HEADER_FLEXFIELD',
127                                NULL);
128   Ja_Cn_Utility.Add_Child_Node('RECORDS_OF_JH_FLEXFIELD',
129                                NULL);
130   Ja_Cn_Utility.Add_Child_Node('JOURNAL_LINE_FLEXFIELD',
131                                NULL);
132   Ja_Cn_Utility.Add_Child_Node('RECORDS_OF_JL_FLEXFIELD',
133                                NULL);
134 
135   Ja_Cn_Utility.Add_Sub_Root_Node('GL_BASIC_INFORMATION',
136                                   Ja_Cn_Utility.GV_TAG_TYPE_END);
137 
138   --logging for debug
139   IF (ln_proc_level >= ln_dbg_level)
140   THEN
141     FND_LOG.STRING(ln_proc_level,
142                    GV_MODULE_PREFIX || '.' || lv_procedure_name || '.end',
143                    'Exit procedure');
144   END IF; -- (ln_proc_level>=ln_dbg_level)
145 EXCEPTION
146   WHEN OTHERS THEN
147     IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL)
148     THEN
149       FND_LOG.STRING(FND_LOG.LEVEL_UNEXPECTED,
150                      GV_MODULE_PREFIX || '.' || lv_procedure_name ||
151                      '.Other_Exception ',
152                      SQLCODE || SQLERRM);
153     END IF; -- (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL)
154     FND_FILE.put_line(FND_FILE.log, lv_procedure_name || SQLCODE || SQLERRM);
155     RAISE;
156 END Add_GL_Basic_Info;
157 
158 END JA_CN_PS_GBI_EXPORT_PKG;