[Home] [Help]
PACKAGE BODY: APPS.ICX_CAT_POPULATE_CATG_GRP
Source
1 PACKAGE BODY ICX_CAT_POPULATE_CATG_GRP AS
2 /* $Header: ICXGPPCB.pls 120.2 2005/12/13 15:29:13 sbgeorge noship $*/
3
4 -- Constants
5 G_PKG_NAME CONSTANT VARCHAR2(30):='ICX_CAT_POPULATE_CATG_GRP';
6
7 -- Called from inventory category forms / html interface for the following actions:
8 -- 1. Create a category
9 -- 2. Update a category
10 -- 3. Translation of a category is updated
11 -- Note: These informations are provided by Inventory team in 2005
12 -- 1. Deleting a category is not allowed from category forms / html interface
13 -- 2. No bulk operations (i.e loading data from an interface table) are allowed on category
14 PROCEDURE populateCategoryChange
15 ( p_api_version IN NUMBER ,
16 p_commit IN VARCHAR2 := FND_API.G_FALSE ,
17 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
18 p_validation_level IN VARCHAR2 := FND_API.G_VALID_LEVEL_FULL ,
19 x_return_status OUT NOCOPY VARCHAR2 ,
20 p_dml_type IN VARCHAR2 ,
21 p_structure_id IN NUMBER ,
22 p_category_name IN VARCHAR2 ,
23 p_category_id IN NUMBER
24 )
25 IS
26 l_api_name CONSTANT VARCHAR2(30) := 'populateCategoryChange';
27 l_api_version CONSTANT NUMBER := 1.0;
28 l_err_loc PLS_INTEGER;
29 l_start_date DATE;
30 l_end_date DATE;
31 l_log_string VARCHAR2(2000);
32 BEGIN
33 l_err_loc := 100;
34 x_return_status := FND_API.G_RET_STS_SUCCESS;
35
36 l_err_loc := 200;
37 -- Standard Start of API savepoint
38 SAVEPOINT populateCategoryChange_sp;
39
40 l_err_loc := 300;
41 l_start_date := sysdate;
42
43 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
44 l_log_string := 'Started at:' || TO_CHAR(l_start_date, 'DD-MON-YYYY HH24:MI:SS') ||
45 ', p_api_version:' || p_api_version ||
46 ', p_commit:' || p_commit ||
47 ', p_dml_type:' || p_dml_type ||
48 ', p_structure_id:' || p_structure_id ||
49 ', p_category_name:' || p_category_name ||
50 ', p_category_id:' || p_category_id;
51 ICX_CAT_UTIL_PVT.logProcBegin(g_pkg_name, l_api_name, l_log_string);
52 END IF;
53
54 l_err_loc := 400;
55 -- Standard call to check for call compatibility.
56 IF NOT FND_API.Compatible_API_Call ( l_api_version ,
57 p_api_version ,
58 l_api_name ,
59 G_PKG_NAME )
60 THEN
61 l_err_loc := 500;
62 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
63 END IF;
64
65 l_err_loc := 600;
66 --Initialize the purchasing category set info.
67 ICX_CAT_UTIL_PVT.getPurchasingCategorySetInfo;
68
69 l_err_loc := 700;
70 IF (ICX_CAT_UTIL_PVT.g_structure_id <> P_STRUCTURE_ID OR
71 (P_DML_TYPE = 'CREATE' AND ICX_CAT_UTIL_PVT.g_validate_flag = 'Y')) THEN
72 -- If ICX_CAT_UTIL_PVT.g_validate_flag is 'Y'
73 -- Then ip does not have to process the category added to mtl_categories_b
74 -- This category will be processed when it is added to the valid cats
75 -- in the call to populateValidCategorySetInsert
76 IF (FND_LOG.LEVEL_EVENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
77 FND_LOG.string(FND_LOG.LEVEL_EVENT,
78 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
79 'returning; g_structure_id:' || ICX_CAT_UTIL_PVT.g_structure_id ||
80 ', P_DML_TYPE:' || P_DML_TYPE ||
81 ', g_validate_flag:' || ICX_CAT_UTIL_PVT.g_validate_flag );
82 END IF;
83 RETURN;
84 END IF;
85
86
87 l_err_loc := 800;
88 ICX_CAT_UTIL_PVT.setCommitParameter(P_COMMIT);
89 l_err_loc := 900;
90 ICX_CAT_POPULATE_CATG_PVT.g_DML_TYPE := P_DML_TYPE;
91
92 l_err_loc := 1000;
93 ICX_CAT_POPULATE_CATG_PVT.populateCategoryChange(P_CATEGORY_NAME, P_CATEGORY_ID);
94
95 l_err_loc := 1100;
96 -- Standard check of p_commit
97 IF FND_API.To_Boolean( p_commit ) THEN
98 l_err_loc := 1200;
99 COMMIT;
100 l_err_loc := 1300;
101 -- Call the rebuild index
102 ICX_CAT_INTERMEDIA_INDEX_PVT.rebuild_index;
103 IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
104 FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
105 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
106 'Rebuild indexes called.');
107 END IF;
108 ELSE
109 l_err_loc := 1400;
110 IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
111 FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
112 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
113 'p_commit is false, so Rebuild indexes is not called.');
114 END IF;
115 END IF;
116
117 l_err_loc := 1500;
118 l_end_date := sysdate;
119 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
120 ICX_CAT_UTIL_PVT.logProcEnd(g_pkg_name, l_api_name,
121 ' done in:' || ICX_CAT_UTIL_PVT.getTimeStats(l_start_date, l_end_date));
122 END IF;
123 EXCEPTION
124 WHEN OTHERS THEN
125 BEGIN
126 ROLLBACK TO populateCategoryChange_sp;
127 EXCEPTION
128 WHEN OTHERS THEN
129 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
130 FND_LOG.string(FND_LOG.LEVEL_EXCEPTION,
131 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
132 'ROLLBACK TO the savepoint caused the exception -->'
133 || SQLERRM);
134 END IF;
135 NULL;
136 END;
137 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
138 END populateCategoryChange;
139
140 -- Called from inventory category forms / html interface for the following actions:
141 -- 1. A category is added to valid cat sets
142 -- Note: These informations are provided by Inventory team in 2005
143 -- 1. No bulk operations (i.e loading data from an interface table) allowed on valid cat sets
144 PROCEDURE populateValidCategorySetInsert
145 ( p_api_version IN NUMBER ,
146 p_commit IN VARCHAR2 := FND_API.G_FALSE ,
147 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
148 p_validation_level IN VARCHAR2 := FND_API.G_VALID_LEVEL_FULL ,
149 x_return_status OUT NOCOPY VARCHAR2 ,
150 p_category_set_id IN NUMBER ,
151 p_category_id IN NUMBER
152 )
153 IS
154 l_api_name CONSTANT VARCHAR2(30) := 'populateValidCategorySetInsert';
155 l_api_version CONSTANT NUMBER := 1.0;
156 l_err_loc PLS_INTEGER;
157 l_start_date DATE;
158 l_end_date DATE;
159 l_log_string VARCHAR2(2000);
160 BEGIN
161 l_err_loc := 100;
162 x_return_status := FND_API.G_RET_STS_SUCCESS;
163
164 l_err_loc := 200;
165 -- Standard Start of API savepoint
166 SAVEPOINT popValidCatgSetInsert_sp;
167
168 l_err_loc := 300;
169 l_start_date := sysdate;
170
171 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
172 l_log_string := 'Started at:' || TO_CHAR(l_start_date, 'DD-MON-YYYY HH24:MI:SS') ||
173 ', p_api_version:' || p_api_version ||
174 ', p_commit:' || p_commit ||
175 ', p_category_set_id:' || p_category_set_id ||
176 ', p_category_id:' || p_category_id;
177 ICX_CAT_UTIL_PVT.logProcBegin(g_pkg_name, l_api_name, l_log_string);
178 END IF;
179
180 l_err_loc := 400;
181 -- Standard call to check for call compatibility.
182 IF NOT FND_API.Compatible_API_Call ( l_api_version ,
183 p_api_version ,
184 l_api_name ,
185 G_PKG_NAME )
186 THEN
187 l_err_loc := 500;
188 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
189 END IF;
190
191 l_err_loc := 600;
192 --Initialize the purchasing category set info.
193 ICX_CAT_UTIL_PVT.getPurchasingCategorySetInfo;
194
195 l_err_loc := 700;
196 IF (ICX_CAT_UTIL_PVT.g_category_set_id <> P_CATEGORY_SET_ID OR
197 ICX_CAT_UTIL_PVT.g_validate_flag = 'N') THEN
198 IF (FND_LOG.LEVEL_EVENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
199 FND_LOG.string(FND_LOG.LEVEL_EVENT,
200 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
201 'returning; g_category_set_id:' || ICX_CAT_UTIL_PVT.g_category_set_id ||
202 ', g_validate_flag:' || ICX_CAT_UTIL_PVT.g_validate_flag );
203 END IF;
204 RETURN;
205 END IF;
206
207 l_err_loc := 800;
208 ICX_CAT_UTIL_PVT.setCommitParameter(P_COMMIT);
209 l_err_loc := 900;
210 ICX_CAT_POPULATE_CATG_PVT.g_DML_TYPE := ICX_CAT_POPULATE_CATG_PVT.g_DML_INSERT_TYPE;
211
212 l_err_loc := 1000;
213 ICX_CAT_POPULATE_CATG_PVT.populateValidCategorySetInsert(P_CATEGORY_ID);
214
215 l_err_loc := 1100;
216 -- Standard check of p_commit
217 IF FND_API.To_Boolean( p_commit ) THEN
218 l_err_loc := 1200;
219 COMMIT;
220 l_err_loc := 1300;
221 -- Call the rebuild index
222 ICX_CAT_INTERMEDIA_INDEX_PVT.rebuild_index;
223 IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
224 FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
225 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
226 'Rebuild indexes called.');
227 END IF;
228 ELSE
229 l_err_loc := 1400;
230 IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
231 FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
232 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
233 'p_commit is false, so Rebuild indexes is not called.');
234 END IF;
235 END IF;
236
237 l_err_loc := 1500;
238 l_end_date := sysdate;
239 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
240 ICX_CAT_UTIL_PVT.logProcEnd(g_pkg_name, l_api_name,
241 ' done in:' || ICX_CAT_UTIL_PVT.getTimeStats(l_start_date, l_end_date));
242 END IF;
243 EXCEPTION
244 WHEN OTHERS THEN
245 BEGIN
246 ROLLBACK TO popValidCatgSetInsert_sp;
247 EXCEPTION
248 WHEN OTHERS THEN
249 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
250 FND_LOG.string(FND_LOG.LEVEL_EXCEPTION,
251 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
252 'ROLLBACK TO the savepoint caused the exception -->'
253 || SQLERRM);
254 END IF;
255 NULL;
256 END;
257 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
258 END populateValidCategorySetInsert;
259
260 -- Called from inventory category forms / html interface for the following actions:
261 -- 1. A category is updated in valid cat sets
262 -- Note: These informations are provided by Inventory team in 2005
263 -- 1. No bulk operations (i.e loading data from an interface table) allowed on valid cat sets
264 PROCEDURE populateValidCategorySetUpdate
265 ( p_api_version IN NUMBER ,
266 p_commit IN VARCHAR2 := FND_API.G_FALSE ,
267 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
268 p_validation_level IN VARCHAR2 := FND_API.G_VALID_LEVEL_FULL ,
269 x_return_status OUT NOCOPY VARCHAR2 ,
270 p_category_set_id IN NUMBER ,
271 p_old_category_id IN NUMBER ,
272 p_new_category_id IN NUMBER
273 )
274 IS
275 l_api_name CONSTANT VARCHAR2(30) := 'populateValidCategorySetUpdate';
276 l_api_version CONSTANT NUMBER := 1.0;
277 l_err_loc PLS_INTEGER;
278 l_start_date DATE;
279 l_end_date DATE;
280 l_log_string VARCHAR2(2000);
281 BEGIN
282 l_err_loc := 100;
283 x_return_status := FND_API.G_RET_STS_SUCCESS;
284
285 l_err_loc := 200;
286 -- Standard Start of API savepoint
287 SAVEPOINT popValidCatgSetUpdate_sp;
288
289 l_err_loc := 300;
290 l_start_date := sysdate;
291
292 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
293 l_log_string := 'Started at:' || TO_CHAR(l_start_date, 'DD-MON-YYYY HH24:MI:SS') ||
294 ', p_api_version:' || p_api_version ||
295 ', p_commit:' || p_commit ||
296 ', p_category_set_id:' || p_category_set_id ||
297 ', p_old_category_id:' || p_old_category_id ||
298 ', p_new_category_id:' || p_new_category_id ;
299 ICX_CAT_UTIL_PVT.logProcBegin(g_pkg_name, l_api_name, l_log_string);
300 END IF;
301
302 l_err_loc := 400;
303 -- Standard call to check for call compatibility.
304 IF NOT FND_API.Compatible_API_Call ( l_api_version ,
305 p_api_version ,
306 l_api_name ,
307 G_PKG_NAME )
308 THEN
309 l_err_loc := 500;
310 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
311 END IF;
312
313 l_err_loc := 600;
314 --Initialize the purchasing category set info.
315 ICX_CAT_UTIL_PVT.getPurchasingCategorySetInfo;
316
317 l_err_loc := 700;
318 IF (ICX_CAT_UTIL_PVT.g_category_set_id <> P_CATEGORY_SET_ID OR
319 ICX_CAT_UTIL_PVT.g_validate_flag = 'N') THEN
320 IF (FND_LOG.LEVEL_EVENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
321 FND_LOG.string(FND_LOG.LEVEL_EVENT,
322 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
323 'returning; g_category_set_id:' || ICX_CAT_UTIL_PVT.g_category_set_id ||
324 ', g_validate_flag:' || ICX_CAT_UTIL_PVT.g_validate_flag );
325 END IF;
326 RETURN;
327 END IF;
328
329 l_err_loc := 800;
330 ICX_CAT_UTIL_PVT.setCommitParameter(P_COMMIT);
331 l_err_loc := 900;
332 ICX_CAT_POPULATE_CATG_PVT.g_DML_TYPE := ICX_CAT_POPULATE_CATG_PVT.g_DML_UPDATE_TYPE;
333
334 l_err_loc := 1000;
335 ICX_CAT_POPULATE_CATG_PVT.populateValidCategorySetUpdate(P_OLD_CATEGORY_ID, P_NEW_CATEGORY_ID);
336
337 l_err_loc := 1100;
338 -- Standard check of p_commit
339 IF FND_API.To_Boolean( p_commit ) THEN
340 l_err_loc := 1200;
341 COMMIT;
342 l_err_loc := 1300;
343 -- Call the rebuild index
344 ICX_CAT_INTERMEDIA_INDEX_PVT.rebuild_index;
345 IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
346 FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
347 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
348 'Rebuild indexes called.');
349 END IF;
350 ELSE
351 l_err_loc := 1400;
352 IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
353 FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
354 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
355 'p_commit is false, so Rebuild indexes is not called.');
356 END IF;
357 END IF;
358
359 l_err_loc := 1500;
360 l_end_date := sysdate;
361 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
362 ICX_CAT_UTIL_PVT.logProcEnd(g_pkg_name, l_api_name,
363 ' done in:' || ICX_CAT_UTIL_PVT.getTimeStats(l_start_date, l_end_date));
364 END IF;
365 EXCEPTION
366 WHEN OTHERS THEN
367 BEGIN
368 ROLLBACK TO popValidCatgSetUpdate_sp;
369 EXCEPTION
370 WHEN OTHERS THEN
371 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
372 FND_LOG.string(FND_LOG.LEVEL_EXCEPTION,
373 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
374 'ROLLBACK TO the savepoint caused the exception -->'
375 || SQLERRM);
376 END IF;
377 NULL;
378 END;
379 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
380 END populateValidCategorySetUpdate;
381
382 -- Called from inventory category forms / html interface for the following actions:
383 -- 1. A category is deleted from valid cat sets
384 -- Note: These informations are provided by Inventory team in 2005
385 -- 1. No bulk operations (i.e loading data from an interface table) allowed on valid cat sets
386 PROCEDURE populateValidCategorySetDelete
387 ( p_api_version IN NUMBER ,
388 p_commit IN VARCHAR2 := FND_API.G_FALSE ,
389 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
390 p_validation_level IN VARCHAR2 := FND_API.G_VALID_LEVEL_FULL ,
391 x_return_status OUT NOCOPY VARCHAR2 ,
392 p_category_set_id IN NUMBER ,
393 p_category_id IN NUMBER
394 )
395 IS
396 l_api_name CONSTANT VARCHAR2(30) := 'populateValidCategorySetDelete';
397 l_api_version CONSTANT NUMBER := 1.0;
398 l_err_loc PLS_INTEGER;
399 l_start_date DATE;
400 l_end_date DATE;
401 l_log_string VARCHAR2(2000);
402 BEGIN
403 l_err_loc := 100;
404 x_return_status := FND_API.G_RET_STS_SUCCESS;
405
406 l_err_loc := 200;
407 -- Standard Start of API savepoint
408 SAVEPOINT popValidCatgSetDelete_sp;
409
410 l_err_loc := 300;
411 l_start_date := sysdate;
412
413 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
414 l_log_string := 'Started at:' || TO_CHAR(l_start_date, 'DD-MON-YYYY HH24:MI:SS') ||
415 ', p_api_version:' || p_api_version ||
416 ', p_commit:' || p_commit ||
417 ', p_category_set_id:' || p_category_set_id ||
418 ', p_category_id:' || p_category_id;
419 ICX_CAT_UTIL_PVT.logProcBegin(g_pkg_name, l_api_name, l_log_string);
420 END IF;
421
422 l_err_loc := 400;
423 -- Standard call to check for call compatibility.
424 IF NOT FND_API.Compatible_API_Call ( l_api_version ,
425 p_api_version ,
426 l_api_name ,
427 G_PKG_NAME )
428 THEN
429 l_err_loc := 500;
430 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
431 END IF;
432
433 l_err_loc := 600;
434 --Initialize the purchasing category set info.
435 ICX_CAT_UTIL_PVT.getPurchasingCategorySetInfo;
436
437 l_err_loc := 700;
438 IF (ICX_CAT_UTIL_PVT.g_category_set_id <> P_CATEGORY_SET_ID OR
439 ICX_CAT_UTIL_PVT.g_validate_flag = 'N') THEN
440 IF (FND_LOG.LEVEL_EVENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
441 FND_LOG.string(FND_LOG.LEVEL_EVENT,
442 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
443 'returning; g_category_set_id:' || ICX_CAT_UTIL_PVT.g_category_set_id ||
444 ', g_validate_flag:' || ICX_CAT_UTIL_PVT.g_validate_flag );
445 END IF;
446 RETURN;
447 END IF;
448
449 l_err_loc := 800;
450 ICX_CAT_UTIL_PVT.setCommitParameter(P_COMMIT);
451
452 l_err_loc := 900;
453 ICX_CAT_POPULATE_CATG_PVT.g_DML_TYPE := ICX_CAT_POPULATE_CATG_PVT.g_DML_DELETE_TYPE;
454
455 l_err_loc := 1000;
456 ICX_CAT_POPULATE_CATG_PVT.populateValidCategorySetDelete(P_CATEGORY_ID);
457
458 l_err_loc := 1100;
459 -- Standard check of p_commit
460 IF FND_API.To_Boolean( p_commit ) THEN
461 l_err_loc := 1200;
462 COMMIT;
463 l_err_loc := 1300;
464 -- Call the rebuild index
465 ICX_CAT_INTERMEDIA_INDEX_PVT.rebuild_index;
466 IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
467 FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
468 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
469 'Rebuild indexes called.');
470 END IF;
471 ELSE
472 l_err_loc := 1400;
473 IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
474 FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
475 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
476 'p_commit is false, so Rebuild indexes is not called.');
477 END IF;
478 END IF;
479
480 l_err_loc := 1500;
481 l_end_date := sysdate;
482 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
483 ICX_CAT_UTIL_PVT.logProcEnd(g_pkg_name, l_api_name,
484 ' done in:' || ICX_CAT_UTIL_PVT.getTimeStats(l_start_date, l_end_date));
485 END IF;
486 EXCEPTION
487 WHEN OTHERS THEN
488 BEGIN
489 ROLLBACK TO popValidCatgSetDelete_sp;
490 EXCEPTION
491 WHEN OTHERS THEN
492 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
493 FND_LOG.string(FND_LOG.LEVEL_EXCEPTION,
494 ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
495 'ROLLBACK TO the savepoint caused the exception -->'
496 || SQLERRM);
497 END IF;
498 NULL;
499 END;
500 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
501 END populateValidCategorySetDelete;
502
503 END ICX_CAT_POPULATE_CATG_GRP;