1: PACKAGE BODY ICX_CAT_UTIL_PVT AS
2: /* $Header: ICXVUTLB.pls 120.18 2006/07/01 00:10:52 kaholee noship $*/
3:
4: -- Constants
5: G_PKG_NAME CONSTANT VARCHAR2(30) :='ICX_CAT_UTIL_PVT';
1: PACKAGE BODY ICX_CAT_UTIL_PVT AS
2: /* $Header: ICXVUTLB.pls 120.18 2006/07/01 00:10:52 kaholee noship $*/
3:
4: -- Constants
5: G_PKG_NAME CONSTANT VARCHAR2(30) :='ICX_CAT_UTIL_PVT';
6:
7: g_log_module_prefix VARCHAR2(10) := 'icx.plsql.';
8: g_log_module_seperator VARCHAR2(1) := '.';
9: g_log_module_begin VARCHAR2(5) := 'begin';
161: l_err_loc := 100;
162: OPEN poSessionGTCsr(p_key);
163:
164: l_err_loc := 200;
165: IF (ICX_CAT_UTIL_PVT.g_batch_size IS NULL) THEN
166: setBatchSize;
167: END IF;
168:
169: LOOP
181: FETCH poSessionGTCsr BULK COLLECT INTO
182: l_key_tbl, l_index_num1_tbl, l_index_num2_tbl,
183: l_index_char1_tbl, l_index_char2_tbl,
184: l_char1_tbl, l_char2_tbl, l_char3_tbl
185: LIMIT ICX_CAT_UTIL_PVT.g_batch_size;
186:
187: EXIT WHEN l_key_tbl.COUNT = 0;
188:
189: l_err_loc := 500;
188:
189: l_err_loc := 500;
190: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
191: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
192: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
193: 'For p_key:' || p_key || ', PO_SESSION_GT rowcount:' || l_key_tbl.COUNT );
194: END IF;
195:
196: l_err_loc := 600;
196: l_err_loc := 600;
197: FOR i IN 1..l_key_tbl.COUNT LOOP
198: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
199: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
200: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
201: 'PO_SESSION_GT Row # ' || i ||
202: '; l_key_tbl: ' || l_key_tbl(i) ||
203: ', l_index_num1_tbl: ' || l_index_num1_tbl(i) ||
204: ', l_index_num2_tbl: ' || l_index_num2_tbl(i) ||
209: ', l_char3_tbl: ' || l_char3_tbl(i) );
210: END IF;
211: END LOOP;
212:
213: EXIT WHEN l_key_tbl.COUNT < ICX_CAT_UTIL_PVT.g_batch_size;
214: END LOOP;
215: l_err_loc := 700;
216: EXCEPTION
217: WHEN OTHERS THEN
214: END LOOP;
215: l_err_loc := 700;
216: EXCEPTION
217: WHEN OTHERS THEN
218: ICX_CAT_UTIL_PVT.logUnexpectedException(
219: G_PKG_NAME, l_api_name,
220: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
221: END logPOSessionGTData;
222:
246: l_err_loc := 100;
247: OPEN mtlItemBulkloadRecsCsr(p_request_id);
248:
249: l_err_loc := 200;
250: IF (ICX_CAT_UTIL_PVT.g_batch_size IS NULL) THEN
251: setBatchSize;
252: END IF;
253:
254: LOOP
262: l_err_loc := 400;
263: FETCH mtlItemBulkloadRecsCsr BULK COLLECT INTO
264: l_inventory_item_id_tbl, l_organization_id_tbl,
265: l_revision_id_tbl, l_category_id_tbl, l_category_set_id_tbl
266: LIMIT ICX_CAT_UTIL_PVT.g_batch_size;
267:
268: EXIT WHEN l_inventory_item_id_tbl.COUNT = 0;
269:
270: l_err_loc := 500;
269:
270: l_err_loc := 500;
271: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
272: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
273: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
274: 'For p_request_id:' || p_request_id ||
275: ', MTL_ITEM_BULKLOAD_RECS rowcount:' || l_inventory_item_id_tbl.COUNT);
276: END IF;
277:
278: l_err_loc := 600;
279: FOR i IN 1..l_inventory_item_id_tbl.COUNT LOOP
280: IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
281: FND_LOG.string(FND_LOG.LEVEL_STATEMENT,
282: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
283: 'MTL_ITEM_BULKLOAD_RECS Row # ' || i ||
284: '; l_inventory_item_id_tbl: ' || l_inventory_item_id_tbl(i) ||
285: ', l_organization_id_tbl: ' || l_organization_id_tbl(i) ||
286: ', l_revision_id_tbl: ' || l_revision_id_tbl(i) ||
288: ', l_category_set_id_tbl: ' || l_category_set_id_tbl(i) );
289: END IF;
290: END LOOP;
291:
292: EXIT WHEN l_inventory_item_id_tbl.COUNT < ICX_CAT_UTIL_PVT.g_batch_size;
293: END LOOP;
294: l_err_loc := 700;
295: EXCEPTION
296: WHEN OTHERS THEN
293: END LOOP;
294: l_err_loc := 700;
295: EXCEPTION
296: WHEN OTHERS THEN
297: ICX_CAT_UTIL_PVT.logUnexpectedException(
298: G_PKG_NAME, l_api_name,
299: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
300: END logMtlItemBulkloadRecsData;
301:
309: IS
310: l_err_loc PLS_INTEGER;
311: BEGIN
312: l_err_loc := 100;
313: ICX_CAT_UTIL_PVT.logUnexpectedException(
314: p_pkg_name, p_api_name,
315: p_api_name || ' --> snap shot too old error caught at '|| p_err_string ||
316: 'Commit will be done in logAndCommitSnapShotTooOld');
317: l_err_loc := 200;
442: l_ret_value := 'N';
443: IF (p_value = p_table(j)) THEN
444: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
445: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
446: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
447: ' p_value:' || p_value ||
448: ', already exists in the p_table at index:' || j ||
449: '; about to exit from table check');
450: END IF;
455:
456: RETURN l_ret_value;
457: EXCEPTION
458: WHEN OTHERS THEN
459: ICX_CAT_UTIL_PVT.logUnexpectedException(
460: G_PKG_NAME, l_api_name,
461: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
462: RAISE;
463: END checkValueExistsInTable;
502: l_err_loc := 200;
503:
504: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
505: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
506: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
507: 'Next Seq from icx_cat_items_ctx_requestid_s:' || l_internal_request_id);
508: END IF;
509:
510: RETURN l_internal_request_id;
526: l_err_loc := 200;
527: g_batch_size := p_batch_size;
528: ELSE
529: l_err_loc := 300;
530: fnd_profile.get('POR_LOAD_PURGE_COMMIT_SIZE', ICX_CAT_UTIL_PVT.g_batch_size);
531: IF (g_batch_size IS NULL) THEN
532: l_err_loc := 400;
533: g_batch_size := 2500;
534: END IF;
537: l_err_loc := 500;
538:
539: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
540: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
541: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
542: 'Batch Size set to:' || ICX_CAT_UTIL_PVT.g_batch_size);
543: END IF;
544: EXCEPTION
545: WHEN OTHERS THEN
538:
539: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
540: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
541: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
542: 'Batch Size set to:' || ICX_CAT_UTIL_PVT.g_batch_size);
543: END IF;
544: EXCEPTION
545: WHEN OTHERS THEN
546: l_err_loc := 600;
558: g_COMMIT := p_commit;
559:
560: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
561: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
562: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
563: 'g_COMMIT set to:' || g_COMMIT);
564: END IF;
565: END setCommitParameter;
566:
572: l_err_loc PLS_INTEGER;
573: l_internal_request_id NUMBER;
574: BEGIN
575: l_err_loc := 100;
576: l_internal_request_id := ICX_CAT_UTIL_PVT.getNextSequenceForWhoColumns;
577: g_who_columns_rec.user_id := fnd_global.user_id;
578: g_who_columns_rec.login_id := fnd_global.login_id;
579: g_who_columns_rec.internal_request_id := l_internal_request_id;
580:
593: END IF;
594: l_err_loc := 400;
595: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
596: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
597: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
598: 'Who columns; internal_request_id:' || l_internal_request_id ||
599: ', request_id:' || p_request_id ||
600: ', user_id:' || g_who_columns_rec.user_id ||
601: ', login_id:' || g_who_columns_rec.login_id);
615:
616: l_err_loc := 200;
617: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
618: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
619: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
620: 'Base language:' || g_base_language);
621: END IF;
622: EXCEPTION
623: WHEN OTHERS THEN
620: 'Base language:' || g_base_language);
621: END IF;
622: EXCEPTION
623: WHEN OTHERS THEN
624: ICX_CAT_UTIL_PVT.logUnexpectedException(
625: G_PKG_NAME, l_api_name,
626: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
627: g_base_language := 'US';
628: END setBaseLanguage;
644:
645: l_err_loc := 200;
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: 'Purchasing category set info: g_category_set_id:' || g_category_set_id ||
650: ', g_validate_flag:' || g_validate_flag ||
651: ', g_structure_id:' || g_structure_id);
652: END IF;
651: ', g_structure_id:' || g_structure_id);
652: END IF;
653: EXCEPTION
654: WHEN OTHERS THEN
655: ICX_CAT_UTIL_PVT.logUnexpectedException(
656: G_PKG_NAME, l_api_name,
657: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
658: RAISE;
659: END getPurchasingCategorySetInfo;
697:
698: l_err_loc := 600;
699: IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
700: FND_LOG.string(FND_LOG.LEVEL_UNEXPECTED,
701: ICX_CAT_UTIL_PVT.getModuleNameForDebug(g_pkg_name, l_api_name),
702: 'Concatenated Segment Clause for master items: ' || g_mi_concat_seg_clause);
703: END IF;
704:
705: l_err_loc := 700;
704:
705: l_err_loc := 700;
706: EXCEPTION
707: WHEN OTHERS THEN
708: ICX_CAT_UTIL_PVT.logUnexpectedException(
709: G_PKG_NAME, l_api_name,
710: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
711: RAISE;
712: END getMIConcatSegmentClause;
724: FROM icx_cat_r12_upgrade_jobs;
725:
726: l_err_loc := 200;
727: IF (l_upgrade_job_number > 0) THEN
728: l_upgrade_job_number := ICX_CAT_UTIL_PVT.g_upgrade_user;
729: ELSE
730: l_upgrade_job_number := l_upgrade_job_number - 1;
731: END IF;
732:
732:
733: RETURN l_upgrade_job_number;
734: EXCEPTION
735: WHEN OTHERS THEN
736: ICX_CAT_UTIL_PVT.logUnexpectedException(
737: G_PKG_NAME, l_api_name,
738: ' --> l_err_loc:' ||l_err_loc ||' '|| SQLERRM);
739: RAISE;
740: END getR12UpgradeJobNumber;
1083:
1084: END convert_amount;
1085:
1086:
1087: END ICX_CAT_UTIL_PVT;