DBA Data[Home] [Help]

PACKAGE BODY: APPS.XLA_AAD_LOADER_INSTALL_PVT

Source


1 PACKAGE BODY xla_aad_loader_install_pvt AS
2 /* $Header: xlaalins.pkb 120.0 2006/06/29 02:25:00 wychan noship $ */
3 
4 --=============================================================================
5 --           ****************  declaraions  ********************
6 --=============================================================================
7 -------------------------------------------------------------------------------
8 -- declaring global types
9 -------------------------------------------------------------------------------
10 -------------------------------------------------------------------------------
11 -- declaring global constants
12 -------------------------------------------------------------------------------
13 C_FILE_NAME                   CONSTANT VARCHAR2(30):='xlaalupl.pkb';
14 C_CHAR                        CONSTANT VARCHAR2(1) :='
15 ';
16 
17 --=============================================================================
18 --               *********** Local Trace Routine **********
19 --=============================================================================
20 C_LEVEL_STATEMENT     CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
21 C_LEVEL_PROCEDURE     CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
22 C_LEVEL_EVENT         CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
23 C_LEVEL_EXCEPTION     CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
24 C_LEVEL_ERROR         CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
25 C_LEVEL_UNEXPECTED    CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
26 
27 C_LEVEL_LOG_DISABLED  CONSTANT NUMBER := 99;
28 C_DEFAULT_MODULE      CONSTANT VARCHAR2(240) := 'xla.plsql.xla_aad_loader_install_pvt';
29 
30 g_log_level           NUMBER;
31 g_log_enabled         BOOLEAN;
32 
33 PROCEDURE trace
34   (p_msg                        IN VARCHAR2
35   ,p_module                     IN VARCHAR2
36   ,p_level                      IN NUMBER) IS
37 l_time varchar2(300);
38 BEGIN
39   IF (p_msg IS NULL AND p_level >= g_log_level) THEN
40     fnd_log.message(p_level, p_module);
41   ELSIF p_level >= g_log_level THEN
42     fnd_log.string(p_level, p_module, p_msg);
43   END IF;
44 EXCEPTION
45   WHEN xla_exceptions_pkg.application_exception THEN
46     RAISE;
47 
48   WHEN OTHERS THEN
49     xla_exceptions_pkg.raise_message
50       (p_location   => 'xla_aad_loader_install_pvt.trace');
51 END trace;
52 
53 
54 --=============================================================================
55 --          *********** private procedures and functions **********
56 --=============================================================================
57 
58 
59 --=============================================================================
60 --
61 --
62 --
63 --
64 --
65 --          *********** public procedures and functions **********
66 --
67 --
68 --
69 --
70 --
71 --=============================================================================
72 
73 --=============================================================================
74 --
75 -- Name:
76 -- Description:
77 --
78 --=============================================================================
79 PROCEDURE pre_export
80 (p_application_id        IN INTEGER
81 ,p_amb_context_code      IN VARCHAR2
82 ,p_versioning_mode       IN VARCHAR2
83 ,p_user_version          IN VARCHAR2
84 ,p_version_comment       IN VARCHAR2
85 ,x_return_status         IN OUT NOCOPY VARCHAR2
86 )IS
87   l_log_module           VARCHAR2(240);
88 BEGIN
89   IF g_log_enabled THEN
90     l_log_module := C_DEFAULT_MODULE||'.pre_export';
91   END IF;
92 
93   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
94     trace(p_msg    => 'BEGIN of procedure pre_export',
95           p_module => l_log_module,
96           p_level  => C_LEVEL_PROCEDURE);
97   END IF;
98 
99   xla_aad_loader_util_pvt.reset_errors
100              (p_application_id     => p_application_id
101              ,p_amb_context_code   => p_amb_context_code
102              ,p_request_code       => 'EXPORT');
103 
104   x_return_status := xla_aad_export_pvt.pre_export
105                      (p_application_id   => p_application_id
106                      ,p_amb_context_code => p_amb_context_code
107                      ,p_versioning_mode  => CASE p_versioning_mode
108                                                  WHEN 'N' THEN 'STANDARD'
109                                                  WHEN 'Y' THEN 'LEAPFROG'
110                                                  ELSE p_versioning_mode
111                                                  END
112                      ,p_user_version     => CASE WHEN p_user_version = 'NULL'
113                                                  THEN NULL
114                                                  ELSE p_user_version END
115                      ,p_version_comment  => CASE WHEN p_version_comment = 'NULL'
116                                                  THEN NULL
117                                                  ELSE p_version_comment END
118                      ,p_owner_type       => 'C');
119 
120   IF (x_return_status <> 'SUCCESS') THEN
121     ROLLBACK;
122     xla_aad_loader_util_pvt.insert_errors
123              (p_application_id     => p_application_id
124              ,p_amb_context_code   => p_amb_context_code
125              ,p_request_code       => 'EXPORT');
126   END IF;
127 
128   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
129     trace(p_msg    => 'END of procedure pre_export: x_return_status = '||x_return_status,
130           p_module => l_log_module,
131           p_level  => C_LEVEL_PROCEDURE);
132   END IF;
133 EXCEPTION
134 WHEN OTHERS THEN
135   ROLLBACK;
136   x_return_status := 'ERROR';
137   xla_aad_loader_util_pvt.insert_errors
138              (p_application_id     => p_application_id
139              ,p_amb_context_code   => p_amb_context_code
140              ,p_request_code       => 'EXPORT');
141 END pre_export;
142 
143 --=============================================================================
144 --
145 -- Name: get_segment
146 -- Description:
147 --
148 --=============================================================================
149 FUNCTION get_segment
150 (p_chart_of_accounts_id  INTEGER
151 ,p_code_combination_id   INTEGER
152 ,p_segment_num           INTEGER)
153 RETURN VARCHAR2
154 IS
155   l_num_segments             INTEGER;
156   l_ret_segment              VARCHAR2(25);
157   l_seg                      FND_FLEX_EXT.SegmentArray;
158 
159   l_log_module               VARCHAR2(240);
160 BEGIN
161   IF g_log_enabled THEN
162     l_log_module := C_DEFAULT_MODULE||'.get_segment: '||p_segment_num;
163   END IF;
164 
165   IF ( FND_FLEX_EXT.get_segments(
166                 application_short_name  => 'SQLGL',
167                 key_flex_code           => 'GL#',
168                 structure_number        => p_chart_of_accounts_id,
169                 combination_id          => p_code_combination_id,
170                 n_segments              => l_num_segments,
171                 segments                => l_seg) = FALSE) THEN
172     IF (C_LEVEL_ERROR >= g_log_level) THEN
173       trace(p_msg    => 'Cannot get segment: FND_FLEX_EXT.get_segments',
174             p_module => l_log_module,
175             p_level  => C_LEVEL_ERROR);
176     END IF;
177     l_ret_segment := NULL;
178   ELSE
179     BEGIN
180       l_ret_segment := l_seg(p_segment_num);
181     EXCEPTION
182     WHEN OTHERS THEN
183       l_ret_segment := NULL;
184     END;
185   END IF;
186 
187   RETURN l_ret_segment;
188 
189 EXCEPTION
190 WHEN OTHERS THEN
191   xla_aad_loader_util_pvt.stack_error
192                (p_appli_s_name    => 'XLA'
193                ,p_msg_name        => 'XLA_COMMON_ERROR'
194                ,p_token_1         => 'LOCATION'
195                ,p_value_1         => 'xla_aad_loader_util_pvt.get_segment'
196                ,p_token_2         => 'ERROR'
197                ,p_value_2         => 'unhandled exception');
198   RAISE;
199 
200 END get_segment;
201 
202 
203 --=============================================================================
204 --
205 -- Following code is executed when the package body is referenced for the first
206 -- time
207 --
208 --=============================================================================
209 BEGIN
210   g_log_level          := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
211   g_log_enabled        := fnd_log.test
212                          (log_level  => g_log_level
213                          ,module     => C_DEFAULT_MODULE);
214 
215   IF NOT g_log_enabled THEN
216     g_log_level := C_LEVEL_LOG_DISABLED;
217   END IF;
218 
219 END xla_aad_loader_install_pvt;