[Home] [Help]
PACKAGE BODY: APPS.XLA_POST_ACCT_PROGS_PKG
Source
1 PACKAGE BODY xla_post_acct_progs_pkg AS
2 /* $Header: xlaamprg.pkb 120.0 2005/05/24 21:39:07 dcshah noship $ */
3 /*======================================================================+
4 | Copyright (c) 1995-2002 Oracle Corporation |
5 | Redwood Shores, CA, USA |
6 | All rights reserved. |
7 +=======================================================================+
8 | PACKAGE NAME |
9 | xla_post_acct_progs_pkg |
10 | |
11 | DESCRIPTION |
12 | XLA Post Accounting Programs Package |
13 | |
14 | HISTORY |
15 | 01-May-01 Dimple Shah Created |
16 | |
17 +======================================================================*/
18
19 --=============================================================================
20 -- *********** Local Trace Routine **********
21 --=============================================================================
22 C_LEVEL_STATEMENT CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
23 C_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
24 C_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
25 C_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
26 C_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
27 C_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
28
29 C_LEVEL_LOG_DISABLED CONSTANT NUMBER := 99;
30 C_DEFAULT_MODULE CONSTANT VARCHAR2(240) := 'xla.plsql.xla_post_acct_progs_pkg';
31
32 g_log_level NUMBER;
33 g_log_enabled BOOLEAN;
34
35 PROCEDURE trace
36 (p_msg IN VARCHAR2
37 ,p_module IN VARCHAR2
38 ,p_level IN NUMBER) IS
39 BEGIN
40 ----------------------------------------------------------------------------
41 -- Following is for FND log.
42 ----------------------------------------------------------------------------
43 IF (p_msg IS NULL AND p_level >= g_log_level) THEN
44 fnd_log.message(p_level, p_module);
45 ELSIF p_level >= g_log_level THEN
46 fnd_log.string(p_level, p_module, p_msg);
47 END IF;
48
49 EXCEPTION
50 WHEN xla_exceptions_pkg.application_exception THEN
51 RAISE;
52
53 WHEN OTHERS THEN
54 xla_exceptions_pkg.raise_message
55 (p_location => 'xla_post_acct_progs_pkg.trace');
56 END trace;
57
58
59
60 /*======================================================================+
61 | |
62 | Public Procedure |
63 | |
64 | delete_program_details |
65 | |
66 | Deletes all details of the Post Accounting Program |
67 | |
68 +======================================================================*/
69
70 PROCEDURE delete_program_details
71 (p_program_code IN VARCHAR2
72 ,p_program_owner_code IN VARCHAR2)
73 IS
74
75 l_log_module VARCHAR2(240);
76 BEGIN
77 IF g_log_enabled THEN
78 l_log_module := C_DEFAULT_MODULE||'.delete_program_details';
79 END IF;
80
81 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
82 trace(p_msg => 'BEGIN of procedure delete_program_details'
83 ,p_module => l_log_module
84 ,p_level => C_LEVEL_PROCEDURE);
85 END IF;
86
87 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
88 trace(p_msg => 'program_code = '||p_program_code||
89 ',program_owner_code = '||p_program_owner_code
90 ,p_module => l_log_module
91 ,p_level => C_LEVEL_STATEMENT);
92 END IF;
93
94 DELETE
95 FROM xla_acct_class_assgns
96 WHERE program_code = p_program_code
97 AND program_owner_code = p_program_owner_code;
98
99 DELETE
100 FROM xla_assignment_defns_tl
101 WHERE program_code = p_program_code
102 AND program_owner_code = p_program_owner_code;
103
104 DELETE
105 FROM xla_assignment_defns_b
106 WHERE program_code = p_program_code
107 AND program_owner_code = p_program_owner_code;
108
109 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
110 trace(p_msg => 'END of procedure delete_program_details'
111 ,p_module => l_log_module
112 ,p_level => C_LEVEL_PROCEDURE);
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_post_acct_progs_pkg.delete_program_details');
121
122 END delete_program_details;
123
124 /*======================================================================+
125 | |
126 | Public Procedure |
127 | |
128 | delete_assignment_details |
129 | |
130 | Deletes all details of the Assignment Definition |
131 | |
132 +======================================================================*/
133
134 PROCEDURE delete_assignment_details
135 (p_program_code IN VARCHAR2
136 ,p_program_owner_code IN VARCHAR2
137 ,p_assignment_code IN VARCHAR2
138 ,p_assignment_owner_code IN VARCHAR2)
139
140 IS
141
142 l_log_module VARCHAR2(240);
143 BEGIN
144 IF g_log_enabled THEN
145 l_log_module := C_DEFAULT_MODULE||'.delete_assignment_details';
146 END IF;
147
148 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
149 trace(p_msg => 'BEGIN of procedure delete_assignment_details'
150 ,p_module => l_log_module
151 ,p_level => C_LEVEL_PROCEDURE);
152 END IF;
153
154 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
155 trace(p_msg => 'program_code = '||p_program_code||
156 ',program_owner_code = '||p_program_owner_code||
157 ',assignment_code = '||p_assignment_code||
158 ',assignment_owner_code = '||p_assignment_owner_code
159 ,p_module => l_log_module
160 ,p_level => C_LEVEL_STATEMENT);
161 END IF;
162
163 DELETE
164 FROM xla_acct_class_assgns
165 WHERE program_code = p_program_code
166 AND program_owner_code = p_program_owner_code
167 AND assignment_code = p_assignment_code
168 AND assignment_owner_code = p_assignment_owner_code;
169
170 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
171 trace(p_msg => 'END of procedure delete_assignment_details'
172 ,p_module => l_log_module
173 ,p_level => C_LEVEL_PROCEDURE);
174 END IF;
175
176 EXCEPTION
177 WHEN xla_exceptions_pkg.application_exception THEN
178 RAISE;
179 WHEN OTHERS THEN
180 xla_exceptions_pkg.raise_message
181 (p_location => 'xla_post_acct_progs_pkg.delete_ssignment_details');
182
183 END delete_assignment_details;
184
185 /*======================================================================+
186 | |
187 | Public Procedure |
188 | |
189 | copy_assignment_details |
190 | |
191 | Copies all details of the Assignment Definition |
192 | |
193 +======================================================================*/
194
195 PROCEDURE copy_assignment_details
196 (p_program_code IN VARCHAR2
197 ,p_program_owner_code IN VARCHAR2
198 ,p_old_assignment_code IN VARCHAR2
199 ,p_old_assignment_owner_code IN VARCHAR2
200 ,p_new_assignment_code IN VARCHAR2
201 ,p_new_assignment_owner_code IN VARCHAR2)
202
203 IS
204 l_creation_date DATE;
205 l_last_update_date DATE;
206 l_created_by INTEGER;
207 l_last_update_login INTEGER;
208 l_last_updated_by INTEGER;
209 l_accounting_class_code VARCHAR2(30);
210
211 CURSOR c_acct_class
212 IS
213 SELECT accounting_class_code
214 FROM xla_acct_class_assgns
215 WHERE program_code = p_program_code
216 AND program_owner_code = p_program_owner_code
217 AND assignment_code = p_old_assignment_code
218 AND assignment_owner_code = p_old_assignment_owner_code;
219
220 l_log_module VARCHAR2(240);
221 BEGIN
222 IF g_log_enabled THEN
223 l_log_module := C_DEFAULT_MODULE||'.copy_assignment_details';
224 END IF;
225
226 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
227 trace(p_msg => 'BEGIN of procedure copy_assignment_details'
228 ,p_module => l_log_module
229 ,p_level => C_LEVEL_PROCEDURE);
230 END IF;
231
232 IF (C_LEVEL_STATEMENT >= g_log_level) THEN
233 trace(p_msg => 'program_code = '||p_program_code||
234 ',program_owner_code = '||p_program_owner_code||
235 ',old_assignment_code = '||p_old_assignment_code||
236 ',old_assignment_owner_code = '||p_old_assignment_owner_code||
237 ',new_assignment_code = '||p_new_assignment_code||
238 ',new_assignment_owner_code = '||p_new_assignment_owner_code
239 ,p_module => l_log_module
240 ,p_level => C_LEVEL_STATEMENT);
241 END IF;
242
243 l_creation_date := sysdate;
244 l_last_update_date := sysdate;
245 l_created_by := xla_environment_pkg.g_usr_id;
246 l_last_update_login := xla_environment_pkg.g_login_id;
247 l_last_updated_by := xla_environment_pkg.g_usr_id;
248
249 OPEN c_acct_class;
250 LOOP
251 FETCH c_acct_class
252 INTO l_accounting_class_code;
253 EXIT WHEN c_acct_class%notfound;
254
255
256 INSERT INTO xla_acct_class_assgns
257 (program_code
258 ,program_owner_code
259 ,assignment_code
260 ,assignment_owner_code
261 ,accounting_class_code
262 ,creation_date
263 ,created_by
264 ,last_update_date
265 ,last_updated_by
266 ,last_update_login)
267 VALUES
268 (p_program_code
269 ,p_program_owner_code
270 ,p_new_assignment_code
271 ,p_new_assignment_owner_code
272 ,l_accounting_class_code
273 ,l_creation_date
274 ,l_created_by
275 ,l_last_update_date
276 ,l_last_updated_by
277 ,l_last_update_login);
278
279 END LOOP;
280 CLOSE c_acct_class;
281
282 IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
283 trace(p_msg => 'END of procedure copy_assignment_details'
284 ,p_module => l_log_module
285 ,p_level => C_LEVEL_PROCEDURE);
286 END IF;
287
288 EXCEPTION
289 WHEN xla_exceptions_pkg.application_exception THEN
290 RAISE;
291 WHEN OTHERS THEN
292 xla_exceptions_pkg.raise_message
293 (p_location => 'xla_post_acct_progs_pkg.copy_ssignment_details');
294
295 END copy_assignment_details;
296
297 END xla_post_acct_progs_pkg;