145: l_err_loc PLS_INTEGER;
146: l_module_name VARCHAR2(80);
147: BEGIN
148: l_err_loc := 100;
149: IF (p_log_level >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
150: l_err_loc := 200;
151: l_module_name := ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, p_api_name);
152:
153: l_err_loc := 300;
151: l_module_name := ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, p_api_name);
152:
153: l_err_loc := 300;
154: l_log_string := 'logPLSQLTableRow('||p_action_mode||')['||p_index||']--';
155: FND_LOG.string(p_log_level, l_module_name, l_log_string);
156:
157: l_err_loc := 400;
158: IF (p_action_mode = 'INSERT_MAPPING') THEN
159: l_err_loc := 500;
159: l_err_loc := 500;
160: -- Insert into icx_por_category_data_sources and icx_por_category_order_map
161: l_log_string := ' gInsMapRtCategoryIdTbl['||p_index||']: ' ||
162: ICX_CAT_UTIL_PVT.getTableElement(gInsMapRtCategoryIdTbl, p_index) || ', ';
163: FND_LOG.string(p_log_level, l_module_name, l_log_string);
164:
165: l_log_string := ' gInsMapCategoryKeyTbl['||p_index||']: ' ||
166: ICX_CAT_UTIL_PVT.getTableElement(gInsMapCategoryKeyTbl, p_index) || ', ';
167: FND_LOG.string(p_log_level, l_module_name, l_log_string);
163: FND_LOG.string(p_log_level, l_module_name, l_log_string);
164:
165: l_log_string := ' gInsMapCategoryKeyTbl['||p_index||']: ' ||
166: ICX_CAT_UTIL_PVT.getTableElement(gInsMapCategoryKeyTbl, p_index) || ', ';
167: FND_LOG.string(p_log_level, l_module_name, l_log_string);
168:
169: l_log_string := ' gInsMapLanguageTbl['||p_index||']: ' ||
170: ICX_CAT_UTIL_PVT.getTableElement(gInsMapLanguageTbl, p_index) || ', ';
171: FND_LOG.string(p_log_level, l_module_name, l_log_string);
167: FND_LOG.string(p_log_level, l_module_name, l_log_string);
168:
169: l_log_string := ' gInsMapLanguageTbl['||p_index||']: ' ||
170: ICX_CAT_UTIL_PVT.getTableElement(gInsMapLanguageTbl, p_index) || ', ';
171: FND_LOG.string(p_log_level, l_module_name, l_log_string);
172: END IF;
173:
174: l_err_loc := 600;
175:
175:
176: IF (p_action_mode = 'INSERT_CATEGORY') THEN
177: l_err_loc := 700;
178: -- Insert into icx_cat_categories_tl
179: FND_LOG.string(p_log_level, l_module_name, l_log_string);
180:
181: l_log_string := ' gInsRtCategoryIdTbl['||p_index||']: ' ||
182: ICX_CAT_UTIL_PVT.getTableElement(gInsRtCategoryIdTbl, p_index) || ', ';
183: FND_LOG.string(p_log_level, l_module_name, l_log_string);
179: FND_LOG.string(p_log_level, l_module_name, l_log_string);
180:
181: l_log_string := ' gInsRtCategoryIdTbl['||p_index||']: ' ||
182: ICX_CAT_UTIL_PVT.getTableElement(gInsRtCategoryIdTbl, p_index) || ', ';
183: FND_LOG.string(p_log_level, l_module_name, l_log_string);
184:
185: l_log_string := ' gInsCategoryKeyTbl['||p_index||']: ' ||
186: ICX_CAT_UTIL_PVT.getTableElement(gInsCategoryKeyTbl, p_index) || ', ';
187: FND_LOG.string(p_log_level, l_module_name, l_log_string);
183: FND_LOG.string(p_log_level, l_module_name, l_log_string);
184:
185: l_log_string := ' gInsCategoryKeyTbl['||p_index||']: ' ||
186: ICX_CAT_UTIL_PVT.getTableElement(gInsCategoryKeyTbl, p_index) || ', ';
187: FND_LOG.string(p_log_level, l_module_name, l_log_string);
188:
189: l_log_string := ' gInsCategoryNameTbl['||p_index||']: ' ||
190: ICX_CAT_UTIL_PVT.getTableElement(gInsCategoryNameTbl, p_index) || ', ';
191: FND_LOG.string(p_log_level, l_module_name, l_log_string);
187: FND_LOG.string(p_log_level, l_module_name, l_log_string);
188:
189: l_log_string := ' gInsCategoryNameTbl['||p_index||']: ' ||
190: ICX_CAT_UTIL_PVT.getTableElement(gInsCategoryNameTbl, p_index) || ', ';
191: FND_LOG.string(p_log_level, l_module_name, l_log_string);
192:
193: l_log_string := ' gInsLanguageTbl['||p_index||']: ' ||
194: ICX_CAT_UTIL_PVT.getTableElement(gInsLanguageTbl, p_index) || ', ';
195: FND_LOG.string(p_log_level, l_module_name, l_log_string);
191: FND_LOG.string(p_log_level, l_module_name, l_log_string);
192:
193: l_log_string := ' gInsLanguageTbl['||p_index||']: ' ||
194: ICX_CAT_UTIL_PVT.getTableElement(gInsLanguageTbl, p_index) || ', ';
195: FND_LOG.string(p_log_level, l_module_name, l_log_string);
196:
197: l_log_string := ' gInsSourceLangTbl['||p_index||']: ' ||
198: ICX_CAT_UTIL_PVT.getTableElement(gInsSourceLangTbl, p_index) || ', ';
199: FND_LOG.string(p_log_level, l_module_name, l_log_string);
195: FND_LOG.string(p_log_level, l_module_name, l_log_string);
196:
197: l_log_string := ' gInsSourceLangTbl['||p_index||']: ' ||
198: ICX_CAT_UTIL_PVT.getTableElement(gInsSourceLangTbl, p_index) || ', ';
199: FND_LOG.string(p_log_level, l_module_name, l_log_string);
200: END IF;
201:
202: l_err_loc := 800;
203:
203:
204: IF (p_action_mode = 'INSERT_ITEM_CATEGORY') THEN
205: l_err_loc := 900;
206: -- Insert items into icx_cat_items_ctx_hdrs_tlp and icx_cat_items_ctx_dtls_tlp tables
207: FND_LOG.string(p_log_level, l_module_name, l_log_string);
208:
209: l_log_string := ' gInsPOCategoryIdTbl['||p_index||']: ' ||
210: ICX_CAT_UTIL_PVT.getTableElement(gInsPOCategoryIdTbl, p_index) || ', ';
211: FND_LOG.string(p_log_level, l_module_name, l_log_string);
207: FND_LOG.string(p_log_level, l_module_name, l_log_string);
208:
209: l_log_string := ' gInsPOCategoryIdTbl['||p_index||']: ' ||
210: ICX_CAT_UTIL_PVT.getTableElement(gInsPOCategoryIdTbl, p_index) || ', ';
211: FND_LOG.string(p_log_level, l_module_name, l_log_string);
212: END IF;
213:
214: l_err_loc := 900;
215:
215:
216: IF (p_action_mode = 'UPDATE_CATEGORY') THEN
217: l_err_loc := 1000;
218: -- Update icx_cat_categories_tl
219: FND_LOG.string(p_log_level, l_module_name, l_log_string);
220:
221: l_log_string := ' gUpdRtCategoryIdTbl['||p_index||']: ' ||
222: ICX_CAT_UTIL_PVT.getTableElement(gUpdRtCategoryIdTbl, p_index) || ', ';
223: FND_LOG.string(p_log_level, l_module_name, l_log_string);
219: FND_LOG.string(p_log_level, l_module_name, l_log_string);
220:
221: l_log_string := ' gUpdRtCategoryIdTbl['||p_index||']: ' ||
222: ICX_CAT_UTIL_PVT.getTableElement(gUpdRtCategoryIdTbl, p_index) || ', ';
223: FND_LOG.string(p_log_level, l_module_name, l_log_string);
224:
225: l_log_string := ' gUpdCategoryNameTbl['||p_index||']: ' ||
226: ICX_CAT_UTIL_PVT.getTableElement(gUpdCategoryNameTbl, p_index) || ', ';
227: FND_LOG.string(p_log_level, l_module_name, l_log_string);
223: FND_LOG.string(p_log_level, l_module_name, l_log_string);
224:
225: l_log_string := ' gUpdCategoryNameTbl['||p_index||']: ' ||
226: ICX_CAT_UTIL_PVT.getTableElement(gUpdCategoryNameTbl, p_index) || ', ';
227: FND_LOG.string(p_log_level, l_module_name, l_log_string);
228:
229: l_log_string := ' gUpdLanguageTbl['||p_index||']: ' ||
230: ICX_CAT_UTIL_PVT.getTableElement(gUpdLanguageTbl, p_index) || ', ';
231: FND_LOG.string(p_log_level, l_module_name, l_log_string);
227: FND_LOG.string(p_log_level, l_module_name, l_log_string);
228:
229: l_log_string := ' gUpdLanguageTbl['||p_index||']: ' ||
230: ICX_CAT_UTIL_PVT.getTableElement(gUpdLanguageTbl, p_index) || ', ';
231: FND_LOG.string(p_log_level, l_module_name, l_log_string);
232:
233: l_log_string := ' gUpdSourceLangTbl['||p_index||']: ' ||
234: ICX_CAT_UTIL_PVT.getTableElement(gUpdSourceLangTbl, p_index) || ', ';
235: FND_LOG.string(p_log_level, l_module_name, l_log_string);
231: FND_LOG.string(p_log_level, l_module_name, l_log_string);
232:
233: l_log_string := ' gUpdSourceLangTbl['||p_index||']: ' ||
234: ICX_CAT_UTIL_PVT.getTableElement(gUpdSourceLangTbl, p_index) || ', ';
235: FND_LOG.string(p_log_level, l_module_name, l_log_string);
236: END IF;
237:
238: l_err_loc := 1100;
239:
239:
240: IF (p_action_mode = 'DELETE_CATEGORY') THEN
241: l_err_loc := 1200;
242: -- Delete from icx_cat_items_ctx_hdrs_tlp and icx_cat_items_ctx_dtls_tlp tables
243: FND_LOG.string(p_log_level, l_module_name, l_log_string);
244:
245: l_log_string := ' gDelPoCategoryIdTbl['||p_index||']: ' ||
246: ICX_CAT_UTIL_PVT.getTableElement(gDelPoCategoryIdTbl, p_index) || ', ';
247: FND_LOG.string(p_log_level, l_module_name, l_log_string);
243: FND_LOG.string(p_log_level, l_module_name, l_log_string);
244:
245: l_log_string := ' gDelPoCategoryIdTbl['||p_index||']: ' ||
246: ICX_CAT_UTIL_PVT.getTableElement(gDelPoCategoryIdTbl, p_index) || ', ';
247: FND_LOG.string(p_log_level, l_module_name, l_log_string);
248: END IF;
249:
250: l_err_loc := 1300;
251: END IF;
278: ICX_CAT_UTIL_PVT.g_who_columns_rec.program_application_id, ICX_CAT_UTIL_PVT.g_who_columns_rec.program_id, ICX_CAT_UTIL_PVT.g_who_columns_rec.program_login_id);
279:
280: l_err_loc := 200;
281: IF (gInsRtCategoryIdTbl.COUNT > 0) THEN
282: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
283: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
284: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
285: 'Num. of rows inserted into categories_tl:' ||SQL%ROWCOUNT);
286: END IF;
279:
280: l_err_loc := 200;
281: IF (gInsRtCategoryIdTbl.COUNT > 0) THEN
282: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
283: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
284: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
285: 'Num. of rows inserted into categories_tl:' ||SQL%ROWCOUNT);
286: END IF;
287: END IF;
311: AND external_source_key = key);
312:
313: l_err_loc := 500;
314: IF (gInsMapRtCategoryIdTbl.COUNT > 0) THEN
315: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
316: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
317: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
318: 'Num. of rows inserted into category_data_sources:' ||SQL%ROWCOUNT);
319: END IF;
312:
313: l_err_loc := 500;
314: IF (gInsMapRtCategoryIdTbl.COUNT > 0) THEN
315: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
316: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
317: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
318: 'Num. of rows inserted into category_data_sources:' ||SQL%ROWCOUNT);
319: END IF;
320: END IF;
331: ICX_CAT_UTIL_PVT.g_who_columns_rec.user_id, sysdate);
332:
333: l_err_loc := 700;
334: IF (gInsMapRtCategoryIdTbl.COUNT > 0) THEN
335: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
336: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
337: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
338: 'Num. of rows inserted into category_order_map:' ||SQL%ROWCOUNT);
339: END IF;
332:
333: l_err_loc := 700;
334: IF (gInsMapRtCategoryIdTbl.COUNT > 0) THEN
335: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
336: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
337: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
338: 'Num. of rows inserted into category_order_map:' ||SQL%ROWCOUNT);
339: END IF;
340: END IF;
344:
345: l_err_loc := 900;
346: EXCEPTION
347: WHEN OTHERS THEN
348: logPLSQLTableRow(l_api_name, FND_LOG.LEVEL_UNEXPECTED, SQL%ROWCOUNT+1, l_action_mode);
349: ICX_CAT_UTIL_PVT.logUnexpectedException(
350: G_PKG_NAME, l_api_name,
351: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
352: RAISE;
374:
375: l_err_loc := 400;
376: EXCEPTION
377: WHEN OTHERS THEN
378: logPLSQLTableRow(l_api_name, FND_LOG.LEVEL_UNEXPECTED, SQL%ROWCOUNT+1, l_action_mode);
379: ICX_CAT_UTIL_PVT.logUnexpectedException(
380: G_PKG_NAME, l_api_name,
381: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
382: RAISE;
426:
427: l_err_loc := 600;
428: l_row_count := SQL%ROWCOUNT;
429: IF (l_row_count = 0) THEN
430: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
431: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
432: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
433: 'No rows updated in icx_cat_ctx_hdrs_tlp for category rename');
434: END IF;
427: l_err_loc := 600;
428: l_row_count := SQL%ROWCOUNT;
429: IF (l_row_count = 0) THEN
430: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
431: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
432: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
433: 'No rows updated in icx_cat_ctx_hdrs_tlp for category rename');
434: END IF;
435: EXIT;
433: 'No rows updated in icx_cat_ctx_hdrs_tlp for category rename');
434: END IF;
435: EXIT;
436: ELSIF (l_row_count < ICX_CAT_UTIL_PVT.g_batch_size) THEN
437: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
438: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
439: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
440: 'Num. of rows updated in icx_cat_ctx_hdrs_tlp for category rename:' ||
441: l_row_count);
434: END IF;
435: EXIT;
436: ELSIF (l_row_count < ICX_CAT_UTIL_PVT.g_batch_size) THEN
437: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
438: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
439: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
440: 'Num. of rows updated in icx_cat_ctx_hdrs_tlp for category rename:' ||
441: l_row_count);
442: END IF;
475: AND hdrs.language = dtls.language
476: AND hdrs.rowid = l_rowid_tbl(j) );
477:
478: IF (l_rowid_tbl.COUNT > 0) THEN
479: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
480: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
481: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
482: 'Num. of rows updated in icx_cat_ctx_dtls_tlp for category rename:' ||
483: SQL%ROWCOUNT);
476: AND hdrs.rowid = l_rowid_tbl(j) );
477:
478: IF (l_rowid_tbl.COUNT > 0) THEN
479: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
480: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
481: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
482: 'Num. of rows updated in icx_cat_ctx_dtls_tlp for category rename:' ||
483: SQL%ROWCOUNT);
484: END IF;
485: END IF;
486: ELSE
487: l_err_loc := 1200;
488: -- Must log
489: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
490: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
491: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
492: 'Shopping Category attribute is not searchable, ' ||
493: 'so no changes needed in icx_cat_items_ctx_dtls_tlp; ' ||
486: ELSE
487: l_err_loc := 1200;
488: -- Must log
489: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
490: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
491: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
492: 'Shopping Category attribute is not searchable, ' ||
493: 'so no changes needed in icx_cat_items_ctx_dtls_tlp; ' ||
494: 'l_searchable:' || l_searchable || ', l_section_tag:' || l_section_tag );
497:
498: l_err_loc := 1100;
499: IF (FND_API.To_Boolean(ICX_CAT_UTIL_PVT.g_COMMIT)) THEN
500: COMMIT;
501: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
502: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
503: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
504: 'Commit done.');
505: END IF;
498: l_err_loc := 1100;
499: IF (FND_API.To_Boolean(ICX_CAT_UTIL_PVT.g_COMMIT)) THEN
500: COMMIT;
501: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
502: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
503: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
504: 'Commit done.');
505: END IF;
506: ELSE
504: 'Commit done.');
505: END IF;
506: ELSE
507: l_err_loc := 1200;
508: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
509: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
510: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
511: 'Commit not done.');
512: END IF;
505: END IF;
506: ELSE
507: l_err_loc := 1200;
508: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
509: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
510: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
511: 'Commit not done.');
512: END IF;
513: END IF;
533: AND language = gUpdLanguageTbl(i);
534:
535: l_err_loc := 1500;
536: IF (gUpdRtCategoryIdTbl.COUNT > 0) THEN
537: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
538: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
539: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
540: 'Num. of rows updated in icx_cat_categories_tl:' ||SQL%ROWCOUNT);
541: END IF;
534:
535: l_err_loc := 1500;
536: IF (gUpdRtCategoryIdTbl.COUNT > 0) THEN
537: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
538: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
539: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
540: 'Num. of rows updated in icx_cat_categories_tl:' ||SQL%ROWCOUNT);
541: END IF;
542: END IF;
544: l_err_loc := 1600;
545: clearTables(l_action_mode);
546: EXCEPTION
547: WHEN OTHERS THEN
548: logPLSQLTableRow(l_api_name, FND_LOG.LEVEL_UNEXPECTED, SQL%ROWCOUNT+1, l_action_mode);
549: ICX_CAT_UTIL_PVT.logUnexpectedException(
550: G_PKG_NAME, l_api_name,
551: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
552: RAISE;
603:
604: l_err_loc := 500;
605: l_row_count := SQL%ROWCOUNT;
606: IF (l_row_count < ICX_CAT_UTIL_PVT.g_batch_size) THEN
607: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
608: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
609: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
610: 'Num. of rows deleted from icx_cat_ctx_hdrs_tlp for category delete:' ||
611: l_row_count);
604: l_err_loc := 500;
605: l_row_count := SQL%ROWCOUNT;
606: IF (l_row_count < ICX_CAT_UTIL_PVT.g_batch_size) THEN
607: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
608: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
609: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
610: 'Num. of rows deleted from icx_cat_ctx_hdrs_tlp for category delete:' ||
611: l_row_count);
612: END IF;
623: AND org_id = l_org_id_tbl(j)
624: AND language = l_language_tbl(j);
625:
626: IF (l_po_line_id_tbl.COUNT > 0) THEN
627: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
628: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
629: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
630: 'Num. of rows delete from icx_cat_ctx_dtls_tlp for category delete:' ||
631: SQL%ROWCOUNT);
624: AND language = l_language_tbl(j);
625:
626: IF (l_po_line_id_tbl.COUNT > 0) THEN
627: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
628: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
629: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
630: 'Num. of rows delete from icx_cat_ctx_dtls_tlp for category delete:' ||
631: SQL%ROWCOUNT);
632: END IF;
635: l_err_loc := 700;
636: IF (FND_API.To_Boolean(ICX_CAT_UTIL_PVT.g_COMMIT)) THEN
637: COMMIT;
638: l_err_loc := 800;
639: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
640: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
641: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
642: 'Commit done. after deleting items for the category');
643: END IF;
636: IF (FND_API.To_Boolean(ICX_CAT_UTIL_PVT.g_COMMIT)) THEN
637: COMMIT;
638: l_err_loc := 800;
639: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
640: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
641: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
642: 'Commit done. after deleting items for the category');
643: END IF;
644: ELSE
642: 'Commit done. after deleting items for the category');
643: END IF;
644: ELSE
645: l_err_loc := 900;
646: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
647: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
648: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
649: 'Commit not done. after deleting items for the category');
650: END IF;
643: END IF;
644: ELSE
645: l_err_loc := 900;
646: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
647: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
648: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
649: 'Commit not done. after deleting items for the category');
650: END IF;
651: END IF;
655: l_err_loc := 1000;
656: clearTables(l_action_mode);
657: EXCEPTION
658: WHEN OTHERS THEN
659: logPLSQLTableRow(l_api_name, FND_LOG.LEVEL_UNEXPECTED, SQL%ROWCOUNT+1, l_action_mode);
660: ICX_CAT_UTIL_PVT.logUnexpectedException(
661: G_PKG_NAME, l_api_name,
662: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
663: RAISE;
670: l_err_loc PLS_INTEGER;
671: l_api_name CONSTANT VARCHAR2(30) := 'populateCategoryTables';
672: BEGIN
673: l_err_loc := 100;
674: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
675: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
676: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
677: 'Enter populateCategoryTables(' || p_mode ||')gTotalRowCount: ' || gTotalRowCount);
678: END IF;
671: l_api_name CONSTANT VARCHAR2(30) := 'populateCategoryTables';
672: BEGIN
673: l_err_loc := 100;
674: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
675: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
676: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
677: 'Enter populateCategoryTables(' || p_mode ||')gTotalRowCount: ' || gTotalRowCount);
678: END IF;
679:
685: l_err_loc := 400;
686: IF (gInsRtCategoryIdTbl.COUNT > 0) THEN
687: addCategories;
688: ELSE
689: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
690: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
691: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
692: ' No category insert done.');
693: END IF;
686: IF (gInsRtCategoryIdTbl.COUNT > 0) THEN
687: addCategories;
688: ELSE
689: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
690: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
691: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
692: ' No category insert done.');
693: END IF;
694: END IF;
696: l_err_loc := 400;
697: IF (gInsPOCategoryIdTbl.COUNT > 0) THEN
698: addItemCategories;
699: ELSE
700: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
701: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
702: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
703: ' addItemCategories not called.');
704: END IF;
697: IF (gInsPOCategoryIdTbl.COUNT > 0) THEN
698: addItemCategories;
699: ELSE
700: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
701: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
702: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
703: ' addItemCategories not called.');
704: END IF;
705: END IF;
707: l_err_loc := 500;
708: IF (gUpdRtCategoryIdTbl.COUNT > 0) THEN
709: updateCategories;
710: ELSE
711: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
712: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
713: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
714: ' No category update done.');
715: END IF;
708: IF (gUpdRtCategoryIdTbl.COUNT > 0) THEN
709: updateCategories;
710: ELSE
711: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
712: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
713: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
714: ' No category update done.');
715: END IF;
716: END IF;
718: l_err_loc := 600;
719: IF (gDelPoCategoryIdTbl.COUNT > 0) THEN
720: deleteCategories;
721: ELSE
722: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
723: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
724: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
725: ' No category delete done.');
726: END IF;
719: IF (gDelPoCategoryIdTbl.COUNT > 0) THEN
720: deleteCategories;
721: ELSE
722: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
723: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
724: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
725: ' No category delete done.');
726: END IF;
727: END IF;
729: l_err_loc := 700;
730: IF (FND_API.To_Boolean(ICX_CAT_UTIL_PVT.g_COMMIT)) THEN
731: COMMIT;
732: l_err_loc := 800;
733: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
734: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
735: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
736: 'Commit done.');
737: END IF;
730: IF (FND_API.To_Boolean(ICX_CAT_UTIL_PVT.g_COMMIT)) THEN
731: COMMIT;
732: l_err_loc := 800;
733: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
734: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
735: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
736: 'Commit done.');
737: END IF;
738: ELSE
736: 'Commit done.');
737: END IF;
738: ELSE
739: l_err_loc := 900;
740: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
741: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
742: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
743: 'Commit not done.');
744: END IF;
737: END IF;
738: ELSE
739: l_err_loc := 900;
740: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
741: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
742: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
743: 'Commit not done.');
744: END IF;
745: END IF;
836: l_end_date_active_tbl, l_disable_date_tbl, l_system_date_tbl
837: LIMIT ICX_CAT_UTIL_PVT.g_batch_size;
838:
839: l_err_loc := 400;
840: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
841: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
842: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
843: 'Num. of rows fetched: ' || to_char(l_mtl_category_id_tbl.COUNT));
844: END IF;
837: LIMIT ICX_CAT_UTIL_PVT.g_batch_size;
838:
839: l_err_loc := 400;
840: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
841: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
842: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
843: 'Num. of rows fetched: ' || to_char(l_mtl_category_id_tbl.COUNT));
844: END IF;
845:
868: l_category_name_is_valid :=
869: validateCategoryName(l_rt_category_id_tbl(i), l_mtl_category_name_tbl(i));
870:
871: IF (NOT l_category_name_is_valid) THEN
872: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
873: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
874: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
875: 'Row, with l_mtl_category_id_tbl:' || l_mtl_category_id_tbl(i) ||
876: ', l_rt_category_id_tbl:' || l_rt_category_id_tbl(i) ||
869: validateCategoryName(l_rt_category_id_tbl(i), l_mtl_category_name_tbl(i));
870:
871: IF (NOT l_category_name_is_valid) THEN
872: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
873: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
874: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
875: 'Row, with l_mtl_category_id_tbl:' || l_mtl_category_id_tbl(i) ||
876: ', l_rt_category_id_tbl:' || l_rt_category_id_tbl(i) ||
877: ', l_mtl_category_name_tbl:' || l_mtl_category_name_tbl(i) ||
954: gUpdLanguageTbl(l_index) := l_mtl_language_tbl(i);
955: gUpdSourceLangTbl(l_index) := l_mtl_source_lang_tbl(i);
956: ELSE
957: l_err_loc := 2100;
958: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
959: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
960: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
961: 'Row #:' || i ||
962: ', with l_mtl_category_id_tbl:' || l_mtl_category_id_tbl(i) ||
955: gUpdSourceLangTbl(l_index) := l_mtl_source_lang_tbl(i);
956: ELSE
957: l_err_loc := 2100;
958: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
959: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
960: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
961: 'Row #:' || i ||
962: ', with l_mtl_category_id_tbl:' || l_mtl_category_id_tbl(i) ||
963: ', l_rt_category_id_tbl:' || l_rt_category_id_tbl(i) ||
971: ELSE -- l_category_status IS NOT VALID
972: l_err_loc := 2200;
973: IF (l_prev_category_key <> l_mtl_category_id_tbl(i)) THEN
974: -- Category is not valid any more and needs to be deleted
975: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
976: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
977: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
978: 'Row #:' || i ||
979: ', with l_mtl_category_id_tbl:' || l_mtl_category_id_tbl(i) ||
972: l_err_loc := 2200;
973: IF (l_prev_category_key <> l_mtl_category_id_tbl(i)) THEN
974: -- Category is not valid any more and needs to be deleted
975: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
976: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
977: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
978: 'Row #:' || i ||
979: ', with l_mtl_category_id_tbl:' || l_mtl_category_id_tbl(i) ||
980: ', l_rt_category_id_tbl:' || l_rt_category_id_tbl(i) ||
1005: l_err_loc := 2500;
1006: populateCategoryTables('OUTLOOP');
1007:
1008: l_err_loc := 2600;
1009: IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1010: FND_LOG.string(FND_LOG.LEVEL_PROCEDURE,
1011: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
1012: ' done; '||
1013: 'Total num. of batches processed:' ||l_batch_count ||
1006: populateCategoryTables('OUTLOOP');
1007:
1008: l_err_loc := 2600;
1009: IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1010: FND_LOG.string(FND_LOG.LEVEL_PROCEDURE,
1011: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
1012: ' done; '||
1013: 'Total num. of batches processed:' ||l_batch_count ||
1014: ', Total num. of rows processed:' ||l_row_count);
1029: l_err_loc PLS_INTEGER;
1030: l_catg_csr g_item_csr_type;
1031: BEGIN
1032: l_err_loc := 100;
1033: IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1034: FND_LOG.string(FND_LOG.LEVEL_PROCEDURE,
1035: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
1036: 'Processing cursor:' || l_api_name ||
1037: '; p_category_id:' || p_category_id ||
1030: l_catg_csr g_item_csr_type;
1031: BEGIN
1032: l_err_loc := 100;
1033: IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1034: FND_LOG.string(FND_LOG.LEVEL_PROCEDURE,
1035: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
1036: 'Processing cursor:' || l_api_name ||
1037: '; p_category_id:' || p_category_id ||
1038: ', g_structure_id:' || ICX_CAT_UTIL_PVT.g_structure_id);
1088: l_err_loc PLS_INTEGER;
1089: l_catg_csr g_item_csr_type;
1090: BEGIN
1091: l_err_loc := 100;
1092: IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1093: FND_LOG.string(FND_LOG.LEVEL_PROCEDURE,
1094: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
1095: 'Processing cursor:' || l_api_name ||
1096: '; p_category_id:' || p_category_id ||
1089: l_catg_csr g_item_csr_type;
1090: BEGIN
1091: l_err_loc := 100;
1092: IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1093: FND_LOG.string(FND_LOG.LEVEL_PROCEDURE,
1094: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
1095: 'Processing cursor:' || l_api_name ||
1096: '; p_category_id:' || p_category_id ||
1097: ', g_structure_id:' || ICX_CAT_UTIL_PVT.g_structure_id ||
1293: g_auto_create_shop_catg := 'N';
1294: END IF;
1295:
1296: l_err_loc := 300;
1297: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1298: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
1299: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
1300: 'Auto create shop category set to:' || g_auto_create_shop_catg);
1301: END IF;
1294: END IF;
1295:
1296: l_err_loc := 300;
1297: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1298: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
1299: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
1300: 'Auto create shop category set to:' || g_auto_create_shop_catg);
1301: END IF;
1302: EXCEPTION