521: END IF;
522:
523: ELSE -- No Records were found and Neg Qtys Not Allowed
524: debug('No Records were found in Install Base and Neg Qtys not allowed to error');
525: fnd_message.set_name('CSI','CSI_NO_NEG_BAL_ALLOWED');
526: l_error_message := fnd_message.get;
527: RAISE fnd_api.g_exc_error;
528:
529: END IF; -- Neg Qty If
522:
523: ELSE -- No Records were found and Neg Qtys Not Allowed
524: debug('No Records were found in Install Base and Neg Qtys not allowed to error');
525: fnd_message.set_name('CSI','CSI_NO_NEG_BAL_ALLOWED');
526: l_error_message := fnd_message.get;
527: RAISE fnd_api.g_exc_error;
528:
529: END IF; -- Neg Qty If
530:
592:
593: ELSIF l_src_instance_header_tbl.count > 1 THEN
594: -- Multiple Instances were found so throw error
595: debug('Multiple Instances were Found in Install Base-30');
596: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
597: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
598: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
599: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
600: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
593: ELSIF l_src_instance_header_tbl.count > 1 THEN
594: -- Multiple Instances were found so throw error
595: debug('Multiple Instances were Found in Install Base-30');
596: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
597: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
598: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
599: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
600: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
601: l_error_message := fnd_message.get;
594: -- Multiple Instances were found so throw error
595: debug('Multiple Instances were Found in Install Base-30');
596: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
597: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
598: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
599: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
600: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
601: l_error_message := fnd_message.get;
602: RAISE fnd_api.g_exc_error;
595: debug('Multiple Instances were Found in Install Base-30');
596: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
597: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
598: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
599: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
600: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
601: l_error_message := fnd_message.get;
602: RAISE fnd_api.g_exc_error;
603:
596: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
597: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
598: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
599: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
600: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
601: l_error_message := fnd_message.get;
602: RAISE fnd_api.g_exc_error;
603:
604: END IF; -- End of Source Record If
597: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
598: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
599: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
600: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
601: l_error_message := fnd_message.get;
602: RAISE fnd_api.g_exc_error;
603:
604: END IF; -- End of Source Record If
605:
857:
858: ELSIF l_dest_instance_header_tbl.count > 1 THEN
859: -- Multiple Instances were found so throw error
860: debug('Multiple Instances were Found in Install Base-80');
861: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
862: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
863: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
864: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
865: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
858: ELSIF l_dest_instance_header_tbl.count > 1 THEN
859: -- Multiple Instances were found so throw error
860: debug('Multiple Instances were Found in Install Base-80');
861: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
862: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
863: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
864: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
865: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
866: l_error_message := fnd_message.get;
859: -- Multiple Instances were found so throw error
860: debug('Multiple Instances were Found in Install Base-80');
861: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
862: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
863: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
864: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
865: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
866: l_error_message := fnd_message.get;
867: RAISE fnd_api.g_exc_error;
860: debug('Multiple Instances were Found in Install Base-80');
861: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
862: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
863: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
864: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
865: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
866: l_error_message := fnd_message.get;
867: RAISE fnd_api.g_exc_error;
868:
861: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
862: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
863: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
864: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
865: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
866: l_error_message := fnd_message.get;
867: RAISE fnd_api.g_exc_error;
868:
869: END IF; -- End of Destination Record If
862: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
863: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
864: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
865: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
866: l_error_message := fnd_message.get;
867: RAISE fnd_api.g_exc_error;
868:
869: END IF; -- End of Destination Record If
870:
933: END IF;
934:
935: ELSIF l_src_instance_header_tbl.count = 0 THEN
936: debug('No Records were found in Install Base');
937: fnd_message.set_name('CSI','CSI_IB_RECORD_NOTFOUND');
938: fnd_message.set_token('ITEM',l_mtl_item_tbl(j).inventory_item_id);
939: fnd_message.set_token('SUBINVENTORY',l_mtl_item_tbl(j).subinventory_code);
940: fnd_message.set_token('ORG_ID',l_mtl_item_tbl(j).organization_id);
941: l_error_message := fnd_message.get;
934:
935: ELSIF l_src_instance_header_tbl.count = 0 THEN
936: debug('No Records were found in Install Base');
937: fnd_message.set_name('CSI','CSI_IB_RECORD_NOTFOUND');
938: fnd_message.set_token('ITEM',l_mtl_item_tbl(j).inventory_item_id);
939: fnd_message.set_token('SUBINVENTORY',l_mtl_item_tbl(j).subinventory_code);
940: fnd_message.set_token('ORG_ID',l_mtl_item_tbl(j).organization_id);
941: l_error_message := fnd_message.get;
942: RAISE fnd_api.g_exc_error;
935: ELSIF l_src_instance_header_tbl.count = 0 THEN
936: debug('No Records were found in Install Base');
937: fnd_message.set_name('CSI','CSI_IB_RECORD_NOTFOUND');
938: fnd_message.set_token('ITEM',l_mtl_item_tbl(j).inventory_item_id);
939: fnd_message.set_token('SUBINVENTORY',l_mtl_item_tbl(j).subinventory_code);
940: fnd_message.set_token('ORG_ID',l_mtl_item_tbl(j).organization_id);
941: l_error_message := fnd_message.get;
942: RAISE fnd_api.g_exc_error;
943:
936: debug('No Records were found in Install Base');
937: fnd_message.set_name('CSI','CSI_IB_RECORD_NOTFOUND');
938: fnd_message.set_token('ITEM',l_mtl_item_tbl(j).inventory_item_id);
939: fnd_message.set_token('SUBINVENTORY',l_mtl_item_tbl(j).subinventory_code);
940: fnd_message.set_token('ORG_ID',l_mtl_item_tbl(j).organization_id);
941: l_error_message := fnd_message.get;
942: RAISE fnd_api.g_exc_error;
943:
944: ELSIF l_src_instance_header_tbl.count > 1 THEN
937: fnd_message.set_name('CSI','CSI_IB_RECORD_NOTFOUND');
938: fnd_message.set_token('ITEM',l_mtl_item_tbl(j).inventory_item_id);
939: fnd_message.set_token('SUBINVENTORY',l_mtl_item_tbl(j).subinventory_code);
940: fnd_message.set_token('ORG_ID',l_mtl_item_tbl(j).organization_id);
941: l_error_message := fnd_message.get;
942: RAISE fnd_api.g_exc_error;
943:
944: ELSIF l_src_instance_header_tbl.count > 1 THEN
945: -- Multiple Instances were found so throw error
943:
944: ELSIF l_src_instance_header_tbl.count > 1 THEN
945: -- Multiple Instances were found so throw error
946: debug('Multiple Instances were Found in Install Base-40');
947: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
948: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
949: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
950: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
951: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
944: ELSIF l_src_instance_header_tbl.count > 1 THEN
945: -- Multiple Instances were found so throw error
946: debug('Multiple Instances were Found in Install Base-40');
947: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
948: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
949: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
950: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
951: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
952: l_error_message := fnd_message.get;
945: -- Multiple Instances were found so throw error
946: debug('Multiple Instances were Found in Install Base-40');
947: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
948: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
949: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
950: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
951: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
952: l_error_message := fnd_message.get;
953: RAISE fnd_api.g_exc_error;
946: debug('Multiple Instances were Found in Install Base-40');
947: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
948: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
949: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
950: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
951: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
952: l_error_message := fnd_message.get;
953: RAISE fnd_api.g_exc_error;
954: END IF; -- End of Source Record IF for Serialized
947: fnd_message.set_name('CSI','CSI_TXN_MULT_INST_FOUND');
948: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
949: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
950: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
951: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
952: l_error_message := fnd_message.get;
953: RAISE fnd_api.g_exc_error;
954: END IF; -- End of Source Record IF for Serialized
955:
948: fnd_message.set_token('INV_ITEM_ID',l_mtl_item_tbl(j).inventory_item_id);
949: fnd_message.set_token('SUBINV',l_mtl_item_tbl(j).subinventory_code);
950: fnd_message.set_token('INV_ORG_ID',l_mtl_item_tbl(j).organization_id);
951: fnd_message.set_token('LOCATOR',l_mtl_item_tbl(j).locator_id);
952: l_error_message := fnd_message.get;
953: RAISE fnd_api.g_exc_error;
954: END IF; -- End of Source Record IF for Serialized
955:
956: END IF; -- End of Serial Number If
989: WHEN others THEN
990: l_sql_error := SQLERRM;
991: debug('SQL Error: '||l_sql_error);
992: debug('You have encountered a "others" exception');
993: fnd_message.set_name('CSI','CSI_UNEXP_SQL_ERROR');
994: fnd_message.set_token('API_NAME',l_api_name);
995: fnd_message.set_token('SQL_ERROR',SQLERRM);
996: x_return_status := l_fnd_unexpected;
997:
990: l_sql_error := SQLERRM;
991: debug('SQL Error: '||l_sql_error);
992: debug('You have encountered a "others" exception');
993: fnd_message.set_name('CSI','CSI_UNEXP_SQL_ERROR');
994: fnd_message.set_token('API_NAME',l_api_name);
995: fnd_message.set_token('SQL_ERROR',SQLERRM);
996: x_return_status := l_fnd_unexpected;
997:
998: IF l_mtl_item_tbl.count > 0 THEN
991: debug('SQL Error: '||l_sql_error);
992: debug('You have encountered a "others" exception');
993: fnd_message.set_name('CSI','CSI_UNEXP_SQL_ERROR');
994: fnd_message.set_token('API_NAME',l_api_name);
995: fnd_message.set_token('SQL_ERROR',SQLERRM);
996: x_return_status := l_fnd_unexpected;
997:
998: IF l_mtl_item_tbl.count > 0 THEN
999: x_trx_error_rec.serial_number := l_mtl_item_tbl(j).serial_number;
1007: x_trx_error_rec.comms_nl_trackable_flag := l_mtl_item_tbl(j).comms_nl_trackable_flag;
1008: x_trx_error_rec.transaction_error_date := l_sysdate ;
1009: END IF;
1010:
1011: x_trx_error_rec.error_text := fnd_message.get;
1012: x_trx_error_rec.transaction_id := NULL;
1013: x_trx_error_rec.source_type := 'CSISUBTR';
1014: x_trx_error_rec.source_id := p_transaction_id;
1015: x_trx_error_rec.processed_flag := csi_inv_trxs_pkg.g_txn_error;