[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;