[Home] [Help]
1: PACKAGE BODY inv_txn_manager_pub AS
2: /* $Header: INVTXMGB.pls 120.28 2007/11/12 22:43:39 yssingh ship $ */
3:
4: g_pkg_name VARCHAR2(30) := 'INV_TXN_MANAGER_PUB';
5: g_interface_id NUMBER;
1: PACKAGE BODY inv_txn_manager_pub AS
2: /* $Header: INVTXMGB.pls 120.28 2007/11/12 22:43:39 yssingh ship $ */
3:
4: g_pkg_name VARCHAR2(30) := 'INV_TXN_MANAGER_PUB';
5: g_interface_id NUMBER;
6: g_tree_id NUMBER;
7: --------------------------------------------------
8: -- Private Procedures and Functions
428: l_sequence NUMBER;
429: BEGIN
430: IF (l_debug = 1)
431: THEN
432: inv_log_util.TRACE ('l_breadcrumb 10', 'INV_TXN_MANAGER_PUB', '9');
433: END IF;
434: l_sysdate := SYSDATE;
435: SELECT COUNT (parent_id)
436: INTO l_count
450: l_remaining_qty := l_split_qty - l_partial_total_qty;
451:
452: IF (l_debug = 1)
453: THEN
454: inv_log_util.TRACE ('l_remaining_qty '|| l_remaining_qty, 'INV_TXN_MANAGER_PUB', '9');
455: inv_log_util.TRACE ('l_partial_total_qty '|| l_partial_total_qty, 'INV_TXN_MANAGER_PUB', '9');
456: inv_log_util.TRACE ('l_split_qty '|| l_split_qty, 'INV_TXN_MANAGER_PUB', '9');
457: inv_log_util.TRACE ('p_current_index '|| p_current_index, 'INV_TXN_MANAGER_PUB', '9');
458: inv_log_util.TRACE ('l_count '|| l_count, 'INV_TXN_MANAGER_PUB', '9');
451:
452: IF (l_debug = 1)
453: THEN
454: inv_log_util.TRACE ('l_remaining_qty '|| l_remaining_qty, 'INV_TXN_MANAGER_PUB', '9');
455: inv_log_util.TRACE ('l_partial_total_qty '|| l_partial_total_qty, 'INV_TXN_MANAGER_PUB', '9');
456: inv_log_util.TRACE ('l_split_qty '|| l_split_qty, 'INV_TXN_MANAGER_PUB', '9');
457: inv_log_util.TRACE ('p_current_index '|| p_current_index, 'INV_TXN_MANAGER_PUB', '9');
458: inv_log_util.TRACE ('l_count '|| l_count, 'INV_TXN_MANAGER_PUB', '9');
459: END IF;
452: IF (l_debug = 1)
453: THEN
454: inv_log_util.TRACE ('l_remaining_qty '|| l_remaining_qty, 'INV_TXN_MANAGER_PUB', '9');
455: inv_log_util.TRACE ('l_partial_total_qty '|| l_partial_total_qty, 'INV_TXN_MANAGER_PUB', '9');
456: inv_log_util.TRACE ('l_split_qty '|| l_split_qty, 'INV_TXN_MANAGER_PUB', '9');
457: inv_log_util.TRACE ('p_current_index '|| p_current_index, 'INV_TXN_MANAGER_PUB', '9');
458: inv_log_util.TRACE ('l_count '|| l_count, 'INV_TXN_MANAGER_PUB', '9');
459: END IF;
460:
453: THEN
454: inv_log_util.TRACE ('l_remaining_qty '|| l_remaining_qty, 'INV_TXN_MANAGER_PUB', '9');
455: inv_log_util.TRACE ('l_partial_total_qty '|| l_partial_total_qty, 'INV_TXN_MANAGER_PUB', '9');
456: inv_log_util.TRACE ('l_split_qty '|| l_split_qty, 'INV_TXN_MANAGER_PUB', '9');
457: inv_log_util.TRACE ('p_current_index '|| p_current_index, 'INV_TXN_MANAGER_PUB', '9');
458: inv_log_util.TRACE ('l_count '|| l_count, 'INV_TXN_MANAGER_PUB', '9');
459: END IF;
460:
461: IF (p_current_index = l_count AND l_remaining_qty > 0)
454: inv_log_util.TRACE ('l_remaining_qty '|| l_remaining_qty, 'INV_TXN_MANAGER_PUB', '9');
455: inv_log_util.TRACE ('l_partial_total_qty '|| l_partial_total_qty, 'INV_TXN_MANAGER_PUB', '9');
456: inv_log_util.TRACE ('l_split_qty '|| l_split_qty, 'INV_TXN_MANAGER_PUB', '9');
457: inv_log_util.TRACE ('p_current_index '|| p_current_index, 'INV_TXN_MANAGER_PUB', '9');
458: inv_log_util.TRACE ('l_count '|| l_count, 'INV_TXN_MANAGER_PUB', '9');
459: END IF;
460:
461: IF (p_current_index = l_count AND l_remaining_qty > 0)
462: THEN
466:
467: --shuld execute only once
468: IF (l_debug = 1)
469: THEN
470: inv_log_util.TRACE ('l_breadcrumb 20', 'INV_TXN_MANAGER_PUB', '9');
471: END IF;
472:
473: FOR l_mti_csr IN mti_csr (p_parent_id)
474: LOOP
473: FOR l_mti_csr IN mti_csr (p_parent_id)
474: LOOP
475: IF (l_debug = 1)
476: THEN
477: inv_log_util.TRACE ('l_breadcrumb 30', 'INV_TXN_MANAGER_PUB', '9');
478: END IF;
479:
480: INSERT INTO mtl_transactions_interface
481: (transaction_header_id
586: );
587:
588: IF (l_debug = 1)
589: THEN
590: inv_log_util.TRACE ('l_breadcrumb 40', 'INV_TXN_MANAGER_PUB', '9');
591: END IF;
592:
593: INSERT INTO mtl_transaction_lots_interface
594: (transaction_interface_id --J-dev
803: );
804:
805: IF (l_debug = 1)
806: THEN
807: inv_log_util.TRACE ('l_breadcrumb 50', 'INV_TXN_MANAGER_PUB', '9');
808: END IF;
809:
810: /*loop through the serials that have been left out ....
811: try copying everything from the parent MSNIs*/
818:
819: IF (l_debug = 1)
820: THEN
821: inv_log_util.TRACE ('Serial control code => ' || l_serial_code
822: , 'INV_TXN_MANAGER_PUB'
823: , '9'
824: );
825: inv_log_util.TRACE ('l_breadcrumb 60', 'INV_TXN_MANAGER_PUB', '9');
826: END IF;
821: inv_log_util.TRACE ('Serial control code => ' || l_serial_code
822: , 'INV_TXN_MANAGER_PUB'
823: , '9'
824: );
825: inv_log_util.TRACE ('l_breadcrumb 60', 'INV_TXN_MANAGER_PUB', '9');
826: END IF;
827:
828: IF (l_serial_code IN (2, 5))
829: THEN
828: IF (l_serial_code IN (2, 5))
829: THEN
830: IF (l_debug = 1)
831: THEN
832: inv_log_util.TRACE ('l_breadcrumb 70', 'INV_TXN_MANAGER_PUB'
833: , '9');
834: END IF;
835:
836: FOR l_msni_rs_serials_csr IN msni_rs_serials_csr (p_parent_id)
837: LOOP
838: IF (l_debug = 1)
839: THEN
840: inv_log_util.TRACE ('l_breadcrumb 80'
841: , 'INV_TXN_MANAGER_PUB'
842: , '9'
843: );
844: END IF;
845:
851:
852: IF (l_debug = 1)
853: THEN
854: inv_log_util.TRACE ('Serial diff => ' || l_serial_diff
855: , 'INV_TXN_MANAGER_PUB'
856: , '9'
857: );
858: END IF;
859:
861: THEN
862: IF (l_debug = 1)
863: THEN
864: inv_log_util.TRACE ('Error in get_serial_diff '
865: , 'INV_TXN_MANAGER_PUB'
866: , '9'
867: );
868: END IF;
869:
878: LOOP
879: IF (l_debug = 1)
880: THEN
881: inv_log_util.TRACE ('l_breadcrumb 90'
882: , 'INV_TXN_MANAGER_PUB'
883: , '9'
884: );
885: END IF;
886:
892:
893: IF (l_debug = 1)
894: THEN
895: inv_log_util.TRACE ('l_next_serial => ' || l_next_serial
896: , 'INV_TXN_MANAGER_PUB'
897: , '9'
898: );
899: END IF;
900:
902: THEN
903: IF (l_debug = 1)
904: THEN
905: inv_log_util.TRACE ('Error in increment_serial_number'
906: , 'INV_TXN_MANAGER_PUB'
907: , '9'
908: );
909: END IF;
910:
922: LOOP
923: IF (l_debug = 1)
924: THEN
925: inv_log_util.TRACE ('l_breadcrumb 100'
926: , 'INV_TXN_MANAGER_PUB'
927: , '9'
928: );
929: END IF;
930:
936:
937: IF (l_debug = 1)
938: THEN
939: inv_log_util.TRACE ('Serial diff => ' || l_serial_diff
940: , 'INV_TXN_MANAGER_PUB'
941: , '9'
942: );
943: END IF;
944:
946: THEN
947: IF (l_debug = 1)
948: THEN
949: inv_log_util.TRACE ('Error in get_serial_diff '
950: , 'INV_TXN_MANAGER_PUB'
951: , '9'
952: );
953: END IF;
954:
963: LOOP
964: IF (l_debug = 1)
965: THEN
966: inv_log_util.TRACE ('l_breadcrumb 110'
967: , 'INV_TXN_MANAGER_PUB'
968: , '9'
969: );
970: inv_log_util.TRACE ('l_next_serial => '|| l_next_serial
971: , 'INV_TXN_MANAGER_PUB'
967: , 'INV_TXN_MANAGER_PUB'
968: , '9'
969: );
970: inv_log_util.TRACE ('l_next_serial => '|| l_next_serial
971: , 'INV_TXN_MANAGER_PUB'
972: , '9'
973: );
974: END IF;
975:
985: THEN
986: inv_log_util.TRACE ( 'Serial => '
987: || l_next_serial
988: || ' is not present'
989: , 'INV_TXN_MANAGER_PUB'
990: , '9'
991: );
992: END IF;
993: END;
1000: THEN
1001: IF (l_debug = 1)
1002: THEN
1003: inv_log_util.TRACE ('Error in increment_serial_number '
1004: , 'INV_TXN_MANAGER_PUB'
1005: , '9'
1006: );
1007: END IF;
1008:
1021:
1022: IF (l_debug = 1)
1023: THEN
1024: inv_log_util.TRACE ('l_breadcrumb 120'
1025: , 'INV_TXN_MANAGER_PUB'
1026: , '9'
1027: );
1028: END IF;
1029:
1038: THEN
1039: IF (l_debug = 1)
1040: THEN
1041: inv_log_util.TRACE ('No data found in msni_csr '
1042: , 'INV_TXN_MANAGER_PUB'
1043: , '9'
1044: );
1045: END IF;
1046:
1049:
1050: IF (l_debug = 1)
1051: THEN
1052: inv_log_util.TRACE ('Inseritng into MSNI '
1053: , 'INV_TXN_MANAGER_PUB'
1054: , '9'
1055: );
1056: END IF;
1057:
1262: IF (l_debug = 1)
1263: THEN
1264: inv_log_util.TRACE
1265: ('Error while inserting in MSNI check_partial_split '
1266: , 'INV_TXN_MANAGER_PUB'
1267: , '9'
1268: );
1269: END IF;
1270:
1279: THEN
1280: IF (l_debug = 1)
1281: THEN
1282: inv_log_util.TRACE ('SQL : ' || SUBSTR (SQLERRM, 1, 200)
1283: , 'INV_TXN_MANAGER_PUB'
1284: , '9'
1285: );
1286: inv_log_util.TRACE ('Error in check_partial_split : ' || l_error_exp
1287: , 'INV_TXN_MANAGER_PUB'
1283: , 'INV_TXN_MANAGER_PUB'
1284: , '9'
1285: );
1286: inv_log_util.TRACE ('Error in check_partial_split : ' || l_error_exp
1287: , 'INV_TXN_MANAGER_PUB'
1288: , '9'
1289: );
1290: END IF;
1291:
1294: THEN
1295: IF (l_debug = 1)
1296: THEN
1297: inv_log_util.TRACE ('SQL : ' || SUBSTR (SQLERRM, 1, 200)
1298: , 'INV_TXN_MANAGER_PUB'
1299: , '9'
1300: );
1301: inv_log_util.TRACE ('Error in check_partial_split : ' || l_error_exp
1302: , 'INV_TXN_MANAGER_PUB'
1298: , 'INV_TXN_MANAGER_PUB'
1299: , '9'
1300: );
1301: inv_log_util.TRACE ('Error in check_partial_split : ' || l_error_exp
1302: , 'INV_TXN_MANAGER_PUB'
1303: , '9'
1304: );
1305: END IF;
1306:
1433: THEN
1434: IF (l_debug = 1)
1435: THEN
1436: inv_log_util.TRACE ('Error in validate_group : ' || l_error_exp
1437: , 'INV_TXN_MANAGER_PUB'
1438: , '1'
1439: );
1440: inv_log_util.TRACE ('Error:' || SUBSTR (SQLERRM, 1, 250)
1441: , 'INV_TXN_MANAGER_PUB'
1437: , 'INV_TXN_MANAGER_PUB'
1438: , '1'
1439: );
1440: inv_log_util.TRACE ('Error:' || SUBSTR (SQLERRM, 1, 250)
1441: , 'INV_TXN_MANAGER_PUB'
1442: , 1
1443: );
1444: END IF;
1445:
1628: THEN
1629: IF (l_debug = 1)
1630: THEN
1631: inv_log_util.TRACE ('Error in Line Validatin'
1632: , 'INV_TXN_MANAGER_PUB'
1633: , 9
1634: );
1635: END IF;
1636: END IF;
1644: IF (l_debug = 1)
1645: THEN
1646: inv_log_util.TRACE ( 'Error in outer validate_lines'
1647: || SUBSTR (SQLERRM, 1, 240)
1648: , 'INV_TXN_MANAGER_PUB'
1649: , 1
1650: );
1651: END IF;
1652:
1689:
1690: IF (l_debug = 1)
1691: THEN
1692: inv_log_util.TRACE ('Returned from inv_txn_manager_grp.validate_lines'
1693: , 'INV_TXN_MANAGER_PUB'
1694: , 9
1695: );
1696: END IF;
1697: p_error_flag := l_error_flag;
1700: THEN
1701: IF (l_debug = 1)
1702: THEN
1703: inv_log_util.TRACE ('Error in Line Validatin'
1704: , 'INV_TXN_MANAGER_PUB'
1705: , 9
1706: );
1707: END IF;
1708: END IF;
1713:
1714: IF (l_debug = 1)
1715: THEN
1716: inv_log_util.TRACE ('Error in validate_line : ' || l_error_exp
1717: , 'INV_TXN_MANAGER_PUB'
1718: , '1'
1719: );
1720: inv_log_util.TRACE ('Error:' || SUBSTR (SQLERRM, 1, 250)
1721: , 'INV_TXN_MANAGER_PUB'
1717: , 'INV_TXN_MANAGER_PUB'
1718: , '1'
1719: );
1720: inv_log_util.TRACE ('Error:' || SUBSTR (SQLERRM, 1, 250)
1721: , 'INV_TXN_MANAGER_PUB'
1722: , 1
1723: );
1724: END IF;
1725: END validate_lines;
1813: IF (l_debug = 1)
1814: THEN
1815: inv_log_util.TRACE ( 'Error in tmpinsert: sqlerrm : '
1816: || SUBSTR (SQLERRM, 1, 200)
1817: , 'INV_TXN_MANAGER_PUB'
1818: , '9'
1819: );
1820: END IF;
1821:
2084: , subinventory_code
2085: , locator_id;
2086:
2087: /*Bug 5209598. Added the following cursor. */
2088: CURSOR Z1 (p_flow_sch NUMBER,p_line_rec_type inv_txn_manager_pub.line_rec_type) IS
2089: SELECT
2090: p_line_rec_type.ROWID,
2091: p_line_rec_type.INVENTORY_ITEM_ID,
2092: p_line_rec_type.REVISION,
2203: THEN
2204: inv_log_util.TRACE
2205: ( '-----Inside process_Transactions-------.trxhdr='
2206: || p_header_id
2207: , 'INV_TXN_MANAGER_PUB'
2208: , 9
2209: );
2210:
2211: END IF;
2264: /** Process Rows in MTL_MATERIAL_TRANSACTION_TEMP **/
2265: IF (l_debug = 1)
2266: THEN
2267: inv_log_util.TRACE ('Process Rows in MTL_MATERIAL_TRANSACTION_TEMP'
2268: , 'INV_TXN_MANAGER_PUB'
2269: , 9
2270: );
2271: END IF;
2272:
2328:
2329: IF (l_debug = 1)
2330: THEN
2331: inv_log_util.TRACE ('Rows in MMTT ready to process '
2332: , 'INV_TXN_MANAGER_PUB'
2333: , 9
2334: );
2335: END IF;
2336:
2350: THEN
2351: IF (l_debug = 1)
2352: THEN
2353: inv_log_util.TRACE ('Calling INV_PROCESS_TEMP.processTransaction'
2354: , 'INV_TXN_MANAGER_PUB'
2355: , 9
2356: );
2357: END IF;
2358:
2385: l_disp := fnd_message.get;
2386:
2387: IF (l_debug = 1)
2388: THEN
2389: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
2390: END IF;
2391:
2392: RETURN -1;
2393: END IF;
2411: THEN
2412: IF (l_debug = 1)
2413: THEN
2414: inv_log_util.TRACE ('Calling Process_lpn_trx'
2415: , 'INV_TXN_MANAGER_PUB'
2416: , 9
2417: );
2418: END IF;
2419:
2423: l_disp := fnd_message.get;
2424:
2425: IF (l_debug = 1)
2426: THEN
2427: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
2428: END IF;
2429: END IF;
2430:
2431: -- If transactions are of type WIP, then call the WIP API. This
2452: THEN
2453: IF (l_debug = 1)
2454: THEN
2455: inv_log_util.TRACE ('Failure from MMTT:WIP processTemp!!'
2456: , 'INV_TXN_MANAGER_PUB'
2457: , 1
2458: );
2459: END IF;
2460:
2477:
2478: IF (l_debug = 1)
2479: THEN
2480: inv_log_util.TRACE ('Error from PROCESS_LPN_TRX.. ' || l_msg_data
2481: , 'INV_TXN_MANAGER_PUB'
2482: , 9
2483: );
2484: END IF;
2485:
2499:
2500: IF (l_debug = 1)
2501: THEN
2502: inv_log_util.TRACE ('After process_lpn_trx without errors'
2503: , 'INV_TXN_MANAGER_PUB'
2504: , 9
2505: );
2506: END IF;
2507:
2511: l_disp := fnd_message.get;
2512:
2513: IF (l_debug = 1)
2514: THEN
2515: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
2516: END IF;
2517: END IF;
2518:
2519: IF fnd_api.to_boolean (p_commit)
2529:
2530: IF (l_debug = 1)
2531: THEN
2532: inv_log_util.TRACE ('Error in call to bflushchk'
2533: , 'INV_TXN_MANAGER_PUB'
2534: , 9
2535: );
2536: END IF;
2537:
2545: l_disp := fnd_message.get;
2546:
2547: IF (l_debug = 1)
2548: THEN
2549: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
2550: END IF;
2551:
2552: SELECT COUNT (*)
2553: INTO l_totrows
2574: l_disp := fnd_message.get;
2575:
2576: IF (l_debug = 1)
2577: THEN
2578: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
2579: END IF;
2580: ELSE
2581: done := TRUE;
2582: END IF;
2613: THEN
2614: l_batch_size := 0;
2615: inv_log_util.TRACE
2616: ('Inv Batch size set to null for non numeric value'
2617: , 'INV_TXN_MANAGER_PUB'
2618: , 9
2619: );
2620: END;
2621:
2621:
2622: IF (l_debug = 1)
2623: THEN
2624: inv_log_util.TRACE ('Inv Batch size:' || l_batch_size
2625: , 'INV_TXN_MANAGER_PUB'
2626: , 9
2627: );
2628: END IF;
2629:
2685:
2686: IF (l_debug = 1)
2687: THEN
2688: inv_log_util.TRACE ('MTI Rows cnt before Validation=' || l_initotrows
2689: , 'INV_TXN_MANAGER_PUB'
2690: , 9
2691: );
2692: END IF;
2693:
2698:
2699: IF (l_debug = 1)
2700: THEN
2701: inv_log_util.TRACE (l_disp || ' totrows = 0'
2702: , 'INV_TXN_MANAGER_PUB'
2703: , 9
2704: );
2705: END IF;
2706:
2757: THEN
2758: -- Pawan Added following changes for gme- convergence
2759: IF l_wip_entity_type = 10 THEN
2760: IF (l_debug = 1) THEN
2761: inv_log_util.trace('in for gme pre_process','INV_TXN_MANAGER_PUB', 9);
2762: END IF;
2763: gme_api_grp.gme_pre_process_txns
2764: ( p_header_id => l_header_id,
2765: x_return_status => l_ret_sts_pre) ;
2764: ( p_header_id => l_header_id,
2765: x_return_status => l_ret_sts_pre) ;
2766: IF (l_ret_sts_pre = fnd_api.g_ret_sts_success) THEN
2767: IF (l_debug = 1) THEN
2768: inv_log_util.trace('Success from:!!gme_api_grp.gme_pre_process_txns', 'INV_TXN_MANAGER_PUB',1);
2769: END IF;
2770:
2771: IF FND_API.To_Boolean( p_commit ) then
2772: COMMIT WORK; /* Commit after preInvWIP all MTI records */
2786: RETURN -1;
2787: END;
2788: ELSE
2789: IF (l_debug = 1) THEN
2790: inv_log_util.trace('Failure from:!!gme_api_grp.gme_pre_process_txns', 'INV_TXN_MANAGER_PUB',1);
2791: END IF;
2792: RAISE fnd_api.g_exc_unexpected_error;
2793: END IF;--check for success
2794: ELSE/*l_wip_entity_type = 10 */
2801: THEN
2802: IF (l_debug = 1)
2803: THEN
2804: inv_log_util.TRACE ('Success from:!!preInvWIPProcessing'
2805: , 'INV_TXN_MANAGER_PUB'
2806: , 1
2807: );
2808: END IF;
2809:
2830: ELSE
2831: IF (l_debug = 1)
2832: THEN
2833: inv_log_util.TRACE ('Failure from:!!preInvWIPProcessing'
2834: , 'INV_TXN_MANAGER_PUB'
2835: , 1
2836: );
2837: END IF;
2838:
2860: IF (l_debug = 1)
2861: THEN
2862: inv_log_util.TRACE ( 'Unexpected Error in Validate Group : '
2863: || x_msg_data
2864: , 'INV_TXN_MANAGER_PUB'
2865: , 9
2866: );
2867: END IF;
2868:
2886:
2887: IF (l_debug = 1)
2888: THEN
2889: inv_log_util.TRACE ('Group validation complete '
2890: , 'INV_TXN_MANAGER_PUB'
2891: , 9
2892: );
2893: END IF;
2894:
2916: IF (l_debug = 1)
2917: THEN
2918: inv_log_util.TRACE ( 'Previous parent: '
2919: || l_previous_parent_id
2920: , 'INV_TXN_MANAGER_PUB'
2921: , 9
2922: );
2923: inv_log_util.TRACE ( 'Current parent: '
2924: || l_line_rec_type.parent_id
2921: , 9
2922: );
2923: inv_log_util.TRACE ( 'Current parent: '
2924: || l_line_rec_type.parent_id
2925: , 'INV_TXN_MANAGER_PUB'
2926: , 9
2927: );
2928: END IF;
2929:
3001: THEN
3002: inv_log_util.TRACE
3003: ( 'Error in Validate_lot_Split_Trx: '
3004: || x_msg_data
3005: , 'INV_TXN_MANAGER_PUB'
3006: , 9
3007: );
3008: END IF;
3009: END LOOP;
3046: THEN
3047: inv_log_util.TRACE
3048: ( 'Error in Validate_lot_Merge_Trx: '
3049: || x_msg_data
3050: , 'INV_TXN_MANAGER_PUB'
3051: , 9
3052: );
3053: END IF;
3054: END LOOP;
3093: THEN
3094: inv_log_util.TRACE
3095: ( 'Error in Validate_lot_Translate_Trx: '
3096: || x_msg_data
3097: , 'INV_TXN_MANAGER_PUB'
3098: , 9
3099: );
3100: END IF;
3101: END LOOP;
3159: THEN
3160: inv_log_util.TRACE
3161: ( 'l_line_rec_type.distribution_account_id is '
3162: || l_line_rec_type.distribution_account_id
3163: , 'INV_TXN_MANAGER_PUB'
3164: , 9
3165: );
3166: END IF;
3167:
3177:
3178: IF (l_debug = 1)
3179: THEN
3180: inv_log_util.TRACE ('l_dist_acct_id is ' || l_dist_acct_id
3181: , 'INV_TXN_MANAGER_PUB'
3182: , 9
3183: );
3184: END IF;
3185:
3196: THEN
3197: IF (l_debug = 1)
3198: THEN
3199: inv_log_util.TRACE ('Error in Line Validatin'
3200: , 'INV_TXN_MANAGER_PUB'
3201: , 9
3202: );
3203: END IF;
3204:
3221:
3222: tree_exists := FALSE;
3223:
3224: IF (l_debug = 1) THEN
3225: inv_log_util.trace('Getting values from Z1 cursor', 'INV_TXN_MANAGER_PUB', 9);
3226: END IF;
3227:
3228: l_temp_rowid :=z1_rec.ROWID;
3229: l_item_id:=z1_rec.inventory_item_id;
3262: , x_wip_job_type => l_rsv_wip_job_type
3263: );
3264:
3265: IF (l_return_status = fnd_api.g_ret_sts_error) THEN
3266: inv_log_util.TRACE ('Return status from get wip entity. '||l_return_status, 'INV_TXN_MANAGER_PUB', 9);
3267: ELSIF (l_return_status = fnd_api.g_ret_sts_unexp_error) THEN
3268: inv_log_util.TRACE ('Return status from get wip entity. '||l_return_status, 'INV_TXN_MANAGER_PUB', 9);
3269: END IF;
3270:
3264:
3265: IF (l_return_status = fnd_api.g_ret_sts_error) THEN
3266: inv_log_util.TRACE ('Return status from get wip entity. '||l_return_status, 'INV_TXN_MANAGER_PUB', 9);
3267: ELSIF (l_return_status = fnd_api.g_ret_sts_unexp_error) THEN
3268: inv_log_util.TRACE ('Return status from get wip entity. '||l_return_status, 'INV_TXN_MANAGER_PUB', 9);
3269: END IF;
3270:
3271: IF (l_debug = 1) THEN
3272: inv_log_util.TRACE ('Wip entity type ' || l_rsv_wip_entity_type, 'INV_TXN_MANAGER_PUB', 9);
3268: inv_log_util.TRACE ('Return status from get wip entity. '||l_return_status, 'INV_TXN_MANAGER_PUB', 9);
3269: END IF;
3270:
3271: IF (l_debug = 1) THEN
3272: inv_log_util.TRACE ('Wip entity type ' || l_rsv_wip_entity_type, 'INV_TXN_MANAGER_PUB', 9);
3273: END IF;
3274:
3275: --Bug 6454464, we should not call available qty validation for CMRO job type
3276: IF (l_rsv_wip_entity_type <> inv_reservation_global.g_wip_source_type_cmro) THEN
3287: l_lot_control := TRUE;
3288: END IF;
3289:
3290: IF (l_debug = 1) THEN
3291: inv_log_util.trace('Calling Create tree', 'INV_TXN_MANAGER_PUB', 9);
3292: END IF;
3293:
3294: -- Bug 4194323 WIP Assembly Return transactions need to look for Available Quantity
3295: --against the Sales Order if it's linked to job
3304: EXCEPTION
3305: WHEN OTHERS THEN
3306: IF (l_debug = 1) THEN
3307: inv_log_util.trace('Error in getting Demand Info : '
3308: || x_msg_data,'INV_TXN_MANAGER_PUB', 9);
3309: END IF;
3310: l_error_code := 'Error in getting Demand Info';
3311: l_error_exp := 'Error in getting Demand Info';
3312:
3400: END IF;
3401: -- Bug 4194323 Ends
3402:
3403: IF (l_debug = 1) THEN
3404: inv_log_util.trace('After create tree tree : ' || l_msg_data,'INV_TXN_MANAGER_PUB', 9);
3405: END IF;
3406:
3407: IF l_return_status IN (fnd_api.g_ret_sts_error, fnd_api.g_ret_sts_unexp_error) THEN
3408: IF (l_debug = 1) THEN
3405: END IF;
3406:
3407: IF l_return_status IN (fnd_api.g_ret_sts_error, fnd_api.g_ret_sts_unexp_error) THEN
3408: IF (l_debug = 1) THEN
3409: inv_log_util.trace('Error while creating tree : x_msg_data = ' || l_msg_data,'INV_TXN_MANAGER_PUB', 9);
3410: END IF;
3411: FND_MESSAGE.set_name('INV','INV_ERR_CREATETREE');
3412: FND_MESSAGE.set_token('ROUTINE','UE:AVAIL_TO_TRX');
3413: l_error_code := FND_MESSAGE.get;
3470: );
3471:
3472: IF l_return_status = fnd_api.g_ret_sts_error THEN
3473: IF (l_debug = 1) THEN
3474: inv_log_util.trace('Expected Error while querying tree : ' || l_msg_data,'INV_TXN_MANAGER_PUB', 9);
3475: END IF;
3476:
3477: FND_MESSAGE.set_name('INV','INV_INTERNAL_ERROR');
3478: FND_MESSAGE.set_token('token1','XACT_QTY1');
3511: END IF ;
3512:
3513: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3514: IF (l_debug = 1) THEN
3515: inv_log_util.trace('UnExpected Error while querying tree : ' || l_msg_data,'INV_TXN_MANAGER_PUB', 9);
3516: END IF;
3517:
3518: FND_MESSAGE.set_name('INV','INV_INTERNAL_ERROR');
3519: FND_MESSAGE.set_token('token1','XACT_QTY1');
3550: l_current_err_batch_id := l_Line_rec_Type.transaction_batch_id;--Bug#5075521
3551: END IF;
3552:
3553: IF (l_debug = 1) THEN
3554: inv_log_util.trace('L_QOH : ' || l_qoh,'INV_TXN_MANAGER_PUB', 9);
3555: inv_log_util.trace('L_RQOH : ' || l_rqoh,'INV_TXN_MANAGER_PUB', 9);
3556: inv_log_util.trace('L_PQOH : ' || l_pqoh,'INV_TXN_MANAGER_PUB', 9);
3557: inv_log_util.trace('L_QR : ' || l_qr,'INV_TXN_MANAGER_PUB', 9);
3558: inv_log_util.trace('L_QS : ' || l_qs,'INV_TXN_MANAGER_PUB', 9);
3551: END IF;
3552:
3553: IF (l_debug = 1) THEN
3554: inv_log_util.trace('L_QOH : ' || l_qoh,'INV_TXN_MANAGER_PUB', 9);
3555: inv_log_util.trace('L_RQOH : ' || l_rqoh,'INV_TXN_MANAGER_PUB', 9);
3556: inv_log_util.trace('L_PQOH : ' || l_pqoh,'INV_TXN_MANAGER_PUB', 9);
3557: inv_log_util.trace('L_QR : ' || l_qr,'INV_TXN_MANAGER_PUB', 9);
3558: inv_log_util.trace('L_QS : ' || l_qs,'INV_TXN_MANAGER_PUB', 9);
3559: inv_log_util.trace('L_ATT : ' || l_att,'INV_TXN_MANAGER_PUB', 9);
3552:
3553: IF (l_debug = 1) THEN
3554: inv_log_util.trace('L_QOH : ' || l_qoh,'INV_TXN_MANAGER_PUB', 9);
3555: inv_log_util.trace('L_RQOH : ' || l_rqoh,'INV_TXN_MANAGER_PUB', 9);
3556: inv_log_util.trace('L_PQOH : ' || l_pqoh,'INV_TXN_MANAGER_PUB', 9);
3557: inv_log_util.trace('L_QR : ' || l_qr,'INV_TXN_MANAGER_PUB', 9);
3558: inv_log_util.trace('L_QS : ' || l_qs,'INV_TXN_MANAGER_PUB', 9);
3559: inv_log_util.trace('L_ATT : ' || l_att,'INV_TXN_MANAGER_PUB', 9);
3560: inv_log_util.trace('L_ATR : ' || l_atr,'INV_TXN_MANAGER_PUB', 9);
3553: IF (l_debug = 1) THEN
3554: inv_log_util.trace('L_QOH : ' || l_qoh,'INV_TXN_MANAGER_PUB', 9);
3555: inv_log_util.trace('L_RQOH : ' || l_rqoh,'INV_TXN_MANAGER_PUB', 9);
3556: inv_log_util.trace('L_PQOH : ' || l_pqoh,'INV_TXN_MANAGER_PUB', 9);
3557: inv_log_util.trace('L_QR : ' || l_qr,'INV_TXN_MANAGER_PUB', 9);
3558: inv_log_util.trace('L_QS : ' || l_qs,'INV_TXN_MANAGER_PUB', 9);
3559: inv_log_util.trace('L_ATT : ' || l_att,'INV_TXN_MANAGER_PUB', 9);
3560: inv_log_util.trace('L_ATR : ' || l_atr,'INV_TXN_MANAGER_PUB', 9);
3561: END IF;
3554: inv_log_util.trace('L_QOH : ' || l_qoh,'INV_TXN_MANAGER_PUB', 9);
3555: inv_log_util.trace('L_RQOH : ' || l_rqoh,'INV_TXN_MANAGER_PUB', 9);
3556: inv_log_util.trace('L_PQOH : ' || l_pqoh,'INV_TXN_MANAGER_PUB', 9);
3557: inv_log_util.trace('L_QR : ' || l_qr,'INV_TXN_MANAGER_PUB', 9);
3558: inv_log_util.trace('L_QS : ' || l_qs,'INV_TXN_MANAGER_PUB', 9);
3559: inv_log_util.trace('L_ATT : ' || l_att,'INV_TXN_MANAGER_PUB', 9);
3560: inv_log_util.trace('L_ATR : ' || l_atr,'INV_TXN_MANAGER_PUB', 9);
3561: END IF;
3562: END IF;--100
3555: inv_log_util.trace('L_RQOH : ' || l_rqoh,'INV_TXN_MANAGER_PUB', 9);
3556: inv_log_util.trace('L_PQOH : ' || l_pqoh,'INV_TXN_MANAGER_PUB', 9);
3557: inv_log_util.trace('L_QR : ' || l_qr,'INV_TXN_MANAGER_PUB', 9);
3558: inv_log_util.trace('L_QS : ' || l_qs,'INV_TXN_MANAGER_PUB', 9);
3559: inv_log_util.trace('L_ATT : ' || l_att,'INV_TXN_MANAGER_PUB', 9);
3560: inv_log_util.trace('L_ATR : ' || l_atr,'INV_TXN_MANAGER_PUB', 9);
3561: END IF;
3562: END IF;--100
3563:
3556: inv_log_util.trace('L_PQOH : ' || l_pqoh,'INV_TXN_MANAGER_PUB', 9);
3557: inv_log_util.trace('L_QR : ' || l_qr,'INV_TXN_MANAGER_PUB', 9);
3558: inv_log_util.trace('L_QS : ' || l_qs,'INV_TXN_MANAGER_PUB', 9);
3559: inv_log_util.trace('L_ATT : ' || l_att,'INV_TXN_MANAGER_PUB', 9);
3560: inv_log_util.trace('L_ATR : ' || l_atr,'INV_TXN_MANAGER_PUB', 9);
3561: END IF;
3562: END IF;--100
3563:
3564: -- Bug 3427817: For WIP backflush transactions, we should not
3588: l_override_neg_for_backflush := 0;
3589: l_override_rsv_for_backflush := 2;
3590: END IF;
3591: IF (l_debug = 1) THEN
3592: inv_log_util.trace('l_override_neg_for_backflush ' || l_override_neg_for_backflush,'INV_TXN_MANAGER_PUB', 9);
3593: inv_log_util.trace('l_override_rsv_for_backflush ' || l_override_rsv_for_backflush,'INV_TXN_MANAGER_PUB', 9);
3594: END IF;
3595:
3596: --Bug 3487453: Added and set the variable l_translate
3589: l_override_rsv_for_backflush := 2;
3590: END IF;
3591: IF (l_debug = 1) THEN
3592: inv_log_util.trace('l_override_neg_for_backflush ' || l_override_neg_for_backflush,'INV_TXN_MANAGER_PUB', 9);
3593: inv_log_util.trace('l_override_rsv_for_backflush ' || l_override_rsv_for_backflush,'INV_TXN_MANAGER_PUB', 9);
3594: END IF;
3595:
3596: --Bug 3487453: Added and set the variable l_translate
3597: -- to true for the token to be translated.
3607: then the backflush transaction can not consume existing reservations.Else it can consume
3608: existing reservation and can drive inventory go negative.
3609: */
3610: IF (l_override_rsv_for_backflush <> 1 ) THEN
3611: inv_log_util.trace('Transaction quantity must be less than or equal to available quantity','INV_TXN_MANAGER_PUB', 9);
3612: FND_MESSAGE.set_name('INV','INV_INT_PROCCODE');
3613: l_error_code := FND_MESSAGE.get;
3614: FND_MESSAGE.set_name('INV','INV_QTY_LESS_OR_EQUAL');
3615: l_error_exp := FND_MESSAGE.get;
3667: );
3668:
3669: IF l_return_status = fnd_api.g_ret_sts_error THEN
3670: IF (l_debug = 1) THEN
3671: inv_log_util.trace('Expected Error while querying tree : ' || l_msg_data,'INV_TXN_MANAGER_PUB', 9);
3672: END IF;
3673:
3674: FND_MESSAGE.set_name('INV','INV_INTERNAL_ERROR');
3675: FND_MESSAGE.set_token('token1','XACT_QTY1');
3707: END IF ;
3708:
3709: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3710: IF (l_debug = 1) THEN
3711: inv_log_util.trace('UnExpected Error while querying tree : ' || l_msg_data,'INV_TXN_MANAGER_PUB', 9);
3712: END IF;
3713:
3714: FND_MESSAGE.set_name('INV','INV_INTERNAL_ERROR');
3715: FND_MESSAGE.set_token('token1','XACT_QTY1');
3745: l_current_batch_failed := TRUE;--Bug#5075521
3746: l_current_err_batch_id := l_Line_rec_Type.transaction_batch_id;--Bug#5075521
3747: END IF;
3748: END IF; --200
3749: inv_log_util.trace('L_ITEM_QOH : ' || l_item_qoh,'INV_TXN_MANAGER_PUB', 9);
3750: inv_log_util.trace('L_ITEM_RQOH : ' || l_item_rqoh,'INV_TXN_MANAGER_PUB', 9);
3751: inv_log_util.trace('L_ITEM_PQOH : ' || l_item_pqoh,'INV_TXN_MANAGER_PUB', 9);
3752: inv_log_util.trace('L_ITEM_QR : ' || l_item_qr,'INV_TXN_MANAGER_PUB', 9);
3753: inv_log_util.trace('L_ITEM_QS : ' || l_item_qs,'INV_TXN_MANAGER_PUB', 9);
3746: l_current_err_batch_id := l_Line_rec_Type.transaction_batch_id;--Bug#5075521
3747: END IF;
3748: END IF; --200
3749: inv_log_util.trace('L_ITEM_QOH : ' || l_item_qoh,'INV_TXN_MANAGER_PUB', 9);
3750: inv_log_util.trace('L_ITEM_RQOH : ' || l_item_rqoh,'INV_TXN_MANAGER_PUB', 9);
3751: inv_log_util.trace('L_ITEM_PQOH : ' || l_item_pqoh,'INV_TXN_MANAGER_PUB', 9);
3752: inv_log_util.trace('L_ITEM_QR : ' || l_item_qr,'INV_TXN_MANAGER_PUB', 9);
3753: inv_log_util.trace('L_ITEM_QS : ' || l_item_qs,'INV_TXN_MANAGER_PUB', 9);
3754: inv_log_util.trace('L_ITEM_ATT : ' || l_item_att,'INV_TXN_MANAGER_PUB', 9);
3747: END IF;
3748: END IF; --200
3749: inv_log_util.trace('L_ITEM_QOH : ' || l_item_qoh,'INV_TXN_MANAGER_PUB', 9);
3750: inv_log_util.trace('L_ITEM_RQOH : ' || l_item_rqoh,'INV_TXN_MANAGER_PUB', 9);
3751: inv_log_util.trace('L_ITEM_PQOH : ' || l_item_pqoh,'INV_TXN_MANAGER_PUB', 9);
3752: inv_log_util.trace('L_ITEM_QR : ' || l_item_qr,'INV_TXN_MANAGER_PUB', 9);
3753: inv_log_util.trace('L_ITEM_QS : ' || l_item_qs,'INV_TXN_MANAGER_PUB', 9);
3754: inv_log_util.trace('L_ITEM_ATT : ' || l_item_att,'INV_TXN_MANAGER_PUB', 9);
3755: inv_log_util.trace('L_ITEM_ATR : ' || l_item_atr,'INV_TXN_MANAGER_PUB', 9);
3748: END IF; --200
3749: inv_log_util.trace('L_ITEM_QOH : ' || l_item_qoh,'INV_TXN_MANAGER_PUB', 9);
3750: inv_log_util.trace('L_ITEM_RQOH : ' || l_item_rqoh,'INV_TXN_MANAGER_PUB', 9);
3751: inv_log_util.trace('L_ITEM_PQOH : ' || l_item_pqoh,'INV_TXN_MANAGER_PUB', 9);
3752: inv_log_util.trace('L_ITEM_QR : ' || l_item_qr,'INV_TXN_MANAGER_PUB', 9);
3753: inv_log_util.trace('L_ITEM_QS : ' || l_item_qs,'INV_TXN_MANAGER_PUB', 9);
3754: inv_log_util.trace('L_ITEM_ATT : ' || l_item_att,'INV_TXN_MANAGER_PUB', 9);
3755: inv_log_util.trace('L_ITEM_ATR : ' || l_item_atr,'INV_TXN_MANAGER_PUB', 9);
3756: inv_log_util.trace('L_TRX_QTY : ' || l_trx_qty,'INV_TXN_MANAGER_PUB', 9);
3749: inv_log_util.trace('L_ITEM_QOH : ' || l_item_qoh,'INV_TXN_MANAGER_PUB', 9);
3750: inv_log_util.trace('L_ITEM_RQOH : ' || l_item_rqoh,'INV_TXN_MANAGER_PUB', 9);
3751: inv_log_util.trace('L_ITEM_PQOH : ' || l_item_pqoh,'INV_TXN_MANAGER_PUB', 9);
3752: inv_log_util.trace('L_ITEM_QR : ' || l_item_qr,'INV_TXN_MANAGER_PUB', 9);
3753: inv_log_util.trace('L_ITEM_QS : ' || l_item_qs,'INV_TXN_MANAGER_PUB', 9);
3754: inv_log_util.trace('L_ITEM_ATT : ' || l_item_att,'INV_TXN_MANAGER_PUB', 9);
3755: inv_log_util.trace('L_ITEM_ATR : ' || l_item_atr,'INV_TXN_MANAGER_PUB', 9);
3756: inv_log_util.trace('L_TRX_QTY : ' || l_trx_qty,'INV_TXN_MANAGER_PUB', 9);
3757:
3750: inv_log_util.trace('L_ITEM_RQOH : ' || l_item_rqoh,'INV_TXN_MANAGER_PUB', 9);
3751: inv_log_util.trace('L_ITEM_PQOH : ' || l_item_pqoh,'INV_TXN_MANAGER_PUB', 9);
3752: inv_log_util.trace('L_ITEM_QR : ' || l_item_qr,'INV_TXN_MANAGER_PUB', 9);
3753: inv_log_util.trace('L_ITEM_QS : ' || l_item_qs,'INV_TXN_MANAGER_PUB', 9);
3754: inv_log_util.trace('L_ITEM_ATT : ' || l_item_att,'INV_TXN_MANAGER_PUB', 9);
3755: inv_log_util.trace('L_ITEM_ATR : ' || l_item_atr,'INV_TXN_MANAGER_PUB', 9);
3756: inv_log_util.trace('L_TRX_QTY : ' || l_trx_qty,'INV_TXN_MANAGER_PUB', 9);
3757:
3758: IF ( NOT l_current_batch_failed) THEN --250
3751: inv_log_util.trace('L_ITEM_PQOH : ' || l_item_pqoh,'INV_TXN_MANAGER_PUB', 9);
3752: inv_log_util.trace('L_ITEM_QR : ' || l_item_qr,'INV_TXN_MANAGER_PUB', 9);
3753: inv_log_util.trace('L_ITEM_QS : ' || l_item_qs,'INV_TXN_MANAGER_PUB', 9);
3754: inv_log_util.trace('L_ITEM_ATT : ' || l_item_att,'INV_TXN_MANAGER_PUB', 9);
3755: inv_log_util.trace('L_ITEM_ATR : ' || l_item_atr,'INV_TXN_MANAGER_PUB', 9);
3756: inv_log_util.trace('L_TRX_QTY : ' || l_trx_qty,'INV_TXN_MANAGER_PUB', 9);
3757:
3758: IF ( NOT l_current_batch_failed) THEN --250
3759: IF (l_item_qoh <> l_item_att) THEN -- Higher Level Reservations
3752: inv_log_util.trace('L_ITEM_QR : ' || l_item_qr,'INV_TXN_MANAGER_PUB', 9);
3753: inv_log_util.trace('L_ITEM_QS : ' || l_item_qs,'INV_TXN_MANAGER_PUB', 9);
3754: inv_log_util.trace('L_ITEM_ATT : ' || l_item_att,'INV_TXN_MANAGER_PUB', 9);
3755: inv_log_util.trace('L_ITEM_ATR : ' || l_item_atr,'INV_TXN_MANAGER_PUB', 9);
3756: inv_log_util.trace('L_TRX_QTY : ' || l_trx_qty,'INV_TXN_MANAGER_PUB', 9);
3757:
3758: IF ( NOT l_current_batch_failed) THEN --250
3759: IF (l_item_qoh <> l_item_att) THEN -- Higher Level Reservations
3760: IF (l_item_att < l_trx_qty AND l_item_qr > 0) THEN
3763: If this profile is not set to 'Yes'then the backflush transaction can not
3764: consume existing reservations.Else it can consume existing reservation and can
3765: drive inventory negative. */
3766: IF (l_override_rsv_for_backflush <> 1 ) THEN
3767: inv_log_util.trace('Total Org quantity cannot become negative when there are reservations present','INV_TXN_MANAGER_PUB', 9);
3768: FND_MESSAGE.set_name('INV','INV_INT_PROCCODE');
3769: l_error_code := FND_MESSAGE.get;
3770: FND_MESSAGE.set_name('INV','INV_ORG_QUANTITY');
3771: l_error_exp := FND_MESSAGE.get;
3806: END IF; --250
3807:
3808: ELSE --(neg_inv_rcpt = 1)
3809: IF (l_debug = 1) THEN
3810: inv_log_util.trace('Not Enough Qty: l_att,l_trx_qty:' || l_att||','||l_trx_qty,'INV_TXN_MANAGER_PUB', 9);
3811: END IF;
3812: FND_MESSAGE.set_name('INV','INV_NO_NEG_BALANCES');
3813: l_error_code := FND_MESSAGE.get;
3814: FND_MESSAGE.set_name('INV','INV_LESS_OR_EQUAL');
3986: l_current_err_batch_id := l_Line_rec_Type.transaction_batch_id;--Bug#5075521
3987: ELSE
3988: --qty tree update was successful
3989: IF (l_debug = 1) THEN
3990: inv_log_util.trace('after update of quantity tree qoh='||l_qoh||' l_att='||l_att||' l_atr='||l_atr,'INV_TXN_MANAGER_PUB', 9);
3991: END IF;
3992: END IF;
3993: END IF;-- Pawan Added for IF (l_actid in (2,28))
3994: END IF; --300
4045: l_disp := fnd_message.get;
4046:
4047: IF (l_debug = 1)
4048: THEN
4049: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
4050: END IF;
4051:
4052: /* Insert into MMTT */
4053: /** Change for lOt Transactions **/
4059: THEN
4060: IF (l_debug = 1)
4061: THEN
4062: inv_log_util.TRACE ('Checking for lot partial split'
4063: , 'INV_TXN_MANAGER_PUB'
4064: , 9
4065: );
4066: END IF;
4067: IF (NOT check_partial_split (l_line_rec_type.parent_id
4074: IF (l_debug = 1)
4075: THEN
4076: inv_log_util.TRACE ( 'Error in Check_Partial_Split= '
4077: || l_error_exp
4078: , 'INV_TXN_MANAGER_PUB'
4079: , 9
4080: );
4081: END IF;
4082:
4116: || ' Item: '
4117: || l_line_rec_type.inventory_item_id
4118: || 'Org : '
4119: || l_line_rec_type.organization_id
4120: , 'INV_TXN_MANAGER_PUB'
4121: , 9
4122: );
4123: END IF;
4124:
4129:
4130: IF (l_debug = 1)
4131: THEN
4132: inv_log_util.TRACE
4133: ( 'Error in INV_TXN_MANAGER_PUB LOOP - rollback last transaction Interface ID '
4134: || l_line_rec_type.transaction_interface_id
4135: , 'INV_TXN_MANAGER_PUB'
4136: , 9
4137: );
4131: THEN
4132: inv_log_util.TRACE
4133: ( 'Error in INV_TXN_MANAGER_PUB LOOP - rollback last transaction Interface ID '
4134: || l_line_rec_type.transaction_interface_id
4135: , 'INV_TXN_MANAGER_PUB'
4136: , 9
4137: );
4138: END IF;
4139:
4196:
4197: IF (l_debug = 1)
4198: THEN
4199: inv_log_util.TRACE ('All records failed after line validation'
4200: , 'INV_TXN_MANAGER_PUB'
4201: , 1
4202: );
4203: END IF;
4204:
4219: THEN
4220: IF (l_debug = 1)
4221: THEN
4222: inv_log_util.TRACE ('Success from:!!postInvWIPValid'
4223: , 'INV_TXN_MANAGER_PUB'
4224: , 1
4225: );
4226: END IF;
4227:
4274: ELSE
4275: IF (l_debug = 1)
4276: THEN
4277: inv_log_util.TRACE ('Failure from:!!postInvWIPProcessing'
4278: , 'INV_TXN_MANAGER_PUB'
4279: , 1
4280: );
4281: END IF;
4282:
4294: */
4295: IF (l_debug = 1)
4296: THEN
4297: inv_log_util.TRACE ('Calling tmpinsert'
4298: , 'INV_TXN_MANAGER_PUB'
4299: , 9
4300: );
4301: END IF;
4302:
4306:
4307: IF (l_debug = 1)
4308: THEN
4309: inv_log_util.TRACE ('Error in tmpinsert=' || l_error_exp
4310: , 'INV_TXN_MANAGER_PUB'
4311: , 9
4312: );
4313: END IF;
4314:
4318: ELSE
4319: BEGIN
4320: IF(l_debug = 1) THEN
4321: inv_log_util.TRACE ( 'Calling tmpinsert2'
4322: , 'INV_TXN_MANAGER_PUB'
4323: , 9
4324: );
4325: END IF;
4326: inv_txn_manager_grp.tmpinsert2(
4330: , x_validation_status => l_validation_status
4331: , p_header_id => l_header_id);
4332: IF(l_debug = 1) THEN
4333: inv_log_util.TRACE ( 'After tmpinsert2'
4334: , 'INV_TXN_MANAGER_PUB'
4335: , 9
4336: );
4337: END IF;
4338: EXCEPTION
4337: END IF;
4338: EXCEPTION
4339: WHEN OTHERS THEN
4340: inv_log_util.TRACE ( 'tmpinsert2 raised exception '
4341: , 'INV_TXN_MANAGER_PUB'
4342: , 9
4343: );
4344: fnd_message.set_name ('INV', 'INV_INT_TMPXFRCODE');
4345: l_error_code := fnd_message.get;
4348:
4349: IF(x_return_status <> fnd_api.g_ret_sts_success OR
4350: l_validation_status <> 'Y') THEN
4351: inv_log_util.TRACE ( 'tmpinsert2 failed..returned with error '
4352: , 'INV_TXN_MANAGER_PUB'
4353: , 9
4354: );
4355: RAISE fnd_api.g_exc_error;
4356: END IF;
4369: WHERE inventory_item_id= p_mmtt.inventory_item_id
4370: AND organization_id = p_mmtt.organization_id;
4371: EXCEPTION
4372: WHEN OTHERS THEN
4373: inv_log_util.TRACE ('Exception in getting serial control code'||Sqlerrm,'INV_TXN_MANAGER_PUB ', 9);
4374: RAISE fnd_api.g_exc_unexpected_error;
4375: END;
4376:
4377: IF (l_serial_control IN (2,5)) THEN
4384: AND organization_id = p_mmtt.organization_id;
4385: EXCEPTION
4386: WHEN OTHERS THEN
4387: IF (l_debug = 1) THEN
4388: inv_log_util.TRACE ('exception in getting from project: ' || Sqlerrm, 'INV_TXN_MANAGER_PUB', 9);
4389: END IF;
4390: RAISE fnd_api.g_exc_unexpected_error;
4391: END;
4392: END IF;
4443: inv_log_util.TRACE ( 'Goint for rows in MMTT. rcnt = '
4444: || l_midtotrows
4445: || ',hdrid='
4446: || l_header_id
4447: , 'INV_TXN_MANAGER_PUB'
4448: , 9
4449: );
4450: END IF;
4451:
4464: l_disp := fnd_message.get;
4465:
4466: IF (l_debug = 1)
4467: THEN
4468: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
4469: END IF;
4470:
4471: --FND_MESSAGE.set_name('INV','INV_RETURN_PROC');
4472: --l_disp := FND_MESSAGE.get;
4469: END IF;
4470:
4471: --FND_MESSAGE.set_name('INV','INV_RETURN_PROC');
4472: --l_disp := FND_MESSAGE.get;
4473: --inv_log_util.trace(l_disp, 'INV_TXN_MANAGER_PUB',9);
4474: SELECT COUNT (*)
4475: INTO l_totrows
4476: FROM mtl_material_transactions_temp
4477: WHERE transaction_header_id = l_header_id AND process_flag = 'Y';
4485:
4486: IF (l_debug = 1)
4487: THEN
4488: inv_log_util.TRACE (l_disp || ' totrows = 0'
4489: , 'INV_TXN_MANAGER_PUB'
4490: , 9
4491: );
4492: END IF;
4493:
4525: THEN
4526: IF (l_debug = 1)
4527: THEN
4528: inv_log_util.TRACE ('Failure from WIP processTemp!!'
4529: , 'INV_TXN_MANAGER_PUB'
4530: , 1
4531: );
4532: END IF;
4533:
4559: IF (l_debug = 1)
4560: THEN
4561: inv_log_util.TRACE ( 'PROCESS_LPN_TRX failed for header_id '
4562: || l_header_id
4563: , 'INV_TXN_MANAGER_PUB'
4564: , 1
4565: );
4566: inv_log_util.TRACE ('Error.... ' || l_error_exp
4567: , 'INV_TXN_MANAGER_PUB'
4563: , 'INV_TXN_MANAGER_PUB'
4564: , 1
4565: );
4566: inv_log_util.TRACE ('Error.... ' || l_error_exp
4567: , 'INV_TXN_MANAGER_PUB'
4568: , 9
4569: );
4570: END IF;
4571:
4595: DELETE FROM MTL_MATERIAL_TRANSACTIONS_TEMP
4596: WHERE TRANSACTION_HEADER_ID = l_header_id;
4597:
4598: IF (l_debug = 1) THEN
4599: inv_log_util.trace('Deleted MSNT/MTLT/MMTT for header_id ' || l_header_id, 'INV_TXN_MANAGER_PUB',1);
4600: END IF;
4601:
4602: -- End of change for bug 5748351
4603:
4611:
4612: IF (l_debug = 1)
4613: THEN
4614: inv_log_util.TRACE ('After process_lpn_trx without errors'
4615: , 'INV_TXN_MANAGER_PUB'
4616: , 9
4617: );
4618: END IF;
4619:
4625: IF (FIRST)
4626: THEN
4627: IF (l_debug = 1)
4628: THEN
4629: inv_log_util.TRACE ('Calling bflushchk', 'INV_TXN_MANAGER_PUB'
4630: , 9);
4631: END IF;
4632:
4633: IF (NOT bflushchk (l_header_id))
4639: inv_log_util.TRACE ( 'Error in bflushchk header_id:'
4640: || l_header_id
4641: || ' - '
4642: || l_error_code
4643: , 'INV_TXN_MANAGER_PUB'
4644: , 9
4645: );
4646: END IF;
4647:
4655: l_disp := fnd_message.get;
4656:
4657: IF (l_debug = 1)
4658: THEN
4659: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
4660: END IF;
4661:
4662: SELECT COUNT (*)
4663: INTO l_totrows
4666:
4667: IF (l_debug = 1)
4668: THEN
4669: inv_log_util.TRACE ('totrows is ' || l_totrows
4670: , 'INV_TXN_MANAGER_PUB'
4671: , 9
4672: );
4673: END IF;
4674:
4692: l_disp := fnd_message.get;
4693:
4694: IF (l_debug = 1)
4695: THEN
4696: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
4697: END IF;
4698: ELSE
4699: done := TRUE;
4700: FIRST := FALSE;
4712: l_disp := fnd_message.get;
4713:
4714: IF (l_debug = 1)
4715: THEN
4716: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
4717: END IF;
4718:
4719: done := TRUE;
4720: END IF;
4727: l_disp := fnd_message.get;
4728:
4729: IF (l_debug = 1)
4730: THEN
4731: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
4732: inv_log_util.TRACE ( l_initotrows
4733: - l_midtotrows
4734: || ' Transactions did not pass validation'
4735: , 'INV_TXN_MANAGER_PUB'
4731: inv_log_util.TRACE (l_disp, 'INV_TXN_MANAGER_PUB', 9);
4732: inv_log_util.TRACE ( l_initotrows
4733: - l_midtotrows
4734: || ' Transactions did not pass validation'
4735: , 'INV_TXN_MANAGER_PUB'
4736: , 9
4737: );
4738: END IF;
4739:
4749: THEN
4750: IF (l_debug = 1)
4751: THEN
4752: inv_log_util.TRACE ('*** SQL error ' || SUBSTR (SQLERRM, 1, 200)
4753: , 'INV_TXN_MANAGER_PUB'
4754: , 9
4755: );
4756: END IF;
4757:
4884: THEN
4885: IF (l_debug = 1)
4886: THEN
4887: inv_log_util.TRACE ('Error in insert_relief'
4888: , 'INV_TXN_MANAGER_PUB'
4889: , 9
4890: );
4891: inv_log_util.TRACE ('SQL : ' || SUBSTR (SQLERRM, 1, 200)
4892: , 'INV_TXN_MANAGER_PUB'
4888: , 'INV_TXN_MANAGER_PUB'
4889: , 9
4890: );
4891: inv_log_util.TRACE ('SQL : ' || SUBSTR (SQLERRM, 1, 200)
4892: , 'INV_TXN_MANAGER_PUB'
4893: , '9'
4894: );
4895: END IF;
4896:
4939: THEN
4940: IF (l_debug = 1)
4941: THEN
4942: inv_log_util.TRACE ('Error in mrp_ship_order'
4943: , 'INV_TXN_MANAGER_PUB'
4944: , 9
4945: );
4946: inv_log_util.TRACE ('SQL : ' || SUBSTR (SQLERRM, 1, 200)
4947: , 'INV_TXN_MANAGER_PUB'
4943: , 'INV_TXN_MANAGER_PUB'
4944: , 9
4945: );
4946: inv_log_util.TRACE ('SQL : ' || SUBSTR (SQLERRM, 1, 200)
4947: , 'INV_TXN_MANAGER_PUB'
4948: , '9'
4949: );
4950: END IF;
4951:
6274: );
6275: p_res_sts := 'E';
6276: p_mrp_status := 'E';
6277: END rel_reservations_mrp_update;
6278: END inv_txn_manager_pub;