682:
683: IF x_retcode <> '0' THEN
684: x_retcode := FND_API.G_RET_STS_ERROR;
685:
686: fnd_message.set_name('FLM','FLM_ITS_PROGRAM_FAILURE');
687: x_errmsg := fnd_message.get;
688: RETURN;
689: END IF;
690:
683: IF x_retcode <> '0' THEN
684: x_retcode := FND_API.G_RET_STS_ERROR;
685:
686: fnd_message.set_name('FLM','FLM_ITS_PROGRAM_FAILURE');
687: x_errmsg := fnd_message.get;
688: RETURN;
689: END IF;
690:
691: END LOOP;
879: x_errmsg := x_errmsg || fnd_msg_pub.get(i, FND_API.G_FALSE) || FND_CONST.NEWLINE;
880: END LOOP;
881: END IF;
882:
883: fnd_message.set_name('FLM','FLM_REPLENISH_ERR');
884: fnd_message.set_token('ORDER_NUMBER', l_request_number);
885: x_errmsg := x_errmsg || fnd_message.get;
886:
887: RETURN;
880: END LOOP;
881: END IF;
882:
883: fnd_message.set_name('FLM','FLM_REPLENISH_ERR');
884: fnd_message.set_token('ORDER_NUMBER', l_request_number);
885: x_errmsg := x_errmsg || fnd_message.get;
886:
887: RETURN;
888: END IF;
881: END IF;
882:
883: fnd_message.set_name('FLM','FLM_REPLENISH_ERR');
884: fnd_message.set_token('ORDER_NUMBER', l_request_number);
885: x_errmsg := x_errmsg || fnd_message.get;
886:
887: RETURN;
888: END IF;
889:
935: x_errmsg := x_errmsg || fnd_msg_pub.get(i, FND_API.G_FALSE) || FND_CONST.NEWLINE;
936: END LOOP;
937: END IF;
938:
939: fnd_message.set_name('FLM','FLM_PICK_RELEASE_ERR');
940: fnd_message.set_token('ORDER_NUMBER', l_request_number);
941: x_errmsg := x_errmsg || fnd_message.get;
942:
943: RETURN;
936: END LOOP;
937: END IF;
938:
939: fnd_message.set_name('FLM','FLM_PICK_RELEASE_ERR');
940: fnd_message.set_token('ORDER_NUMBER', l_request_number);
941: x_errmsg := x_errmsg || fnd_message.get;
942:
943: RETURN;
944: END IF;
937: END IF;
938:
939: fnd_message.set_name('FLM','FLM_PICK_RELEASE_ERR');
940: fnd_message.set_token('ORDER_NUMBER', l_request_number);
941: x_errmsg := x_errmsg || fnd_message.get;
942:
943: RETURN;
944: END IF;
945:
999: x_errmsg := x_errmsg || fnd_msg_pub.get(i, FND_API.G_FALSE) || FND_CONST.NEWLINE;
1000: END LOOP;
1001: END IF;
1002:
1003: fnd_message.set_name('FLM','FLM_MOVE_ORDER_CLOSE_ERR');
1004: fnd_message.set_token('ORDER_NUMBER', l_request_number);
1005: x_errmsg := x_errmsg || fnd_message.get;
1006:
1007: RETURN;
1000: END LOOP;
1001: END IF;
1002:
1003: fnd_message.set_name('FLM','FLM_MOVE_ORDER_CLOSE_ERR');
1004: fnd_message.set_token('ORDER_NUMBER', l_request_number);
1005: x_errmsg := x_errmsg || fnd_message.get;
1006:
1007: RETURN;
1008: END IF;
1001: END IF;
1002:
1003: fnd_message.set_name('FLM','FLM_MOVE_ORDER_CLOSE_ERR');
1004: fnd_message.set_token('ORDER_NUMBER', l_request_number);
1005: x_errmsg := x_errmsg || fnd_message.get;
1006:
1007: RETURN;
1008: END IF;
1009:
1220: IF l_kanban_detail_rec.kanban_card_id IS NULL THEN
1221:
1222: x_retcode := FND_API.G_RET_STS_ERROR;
1223:
1224: fnd_message.set_name('FLM','FLM_INVALID_KANBAN');
1225: x_errmsg := fnd_message.get||FND_CONST.NEWLINE;
1226:
1227: ELSE
1228:
1221:
1222: x_retcode := FND_API.G_RET_STS_ERROR;
1223:
1224: fnd_message.set_name('FLM','FLM_INVALID_KANBAN');
1225: x_errmsg := fnd_message.get||FND_CONST.NEWLINE;
1226:
1227: ELSE
1228:
1229: x_organization_id := l_kanban_detail_rec.organization_id;
1236: IF p_transfer_qty IS NULL OR p_transfer_qty <= 0 THEN
1237:
1238: x_retcode := FND_API.G_RET_STS_ERROR;
1239:
1240: fnd_message.set_name('FLM','FLM_ATTRIBUTE_INVALID');
1241: fnd_message.set_token('ATTRIBUTE', 'Transfer Quantity');
1242: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1243:
1244: END IF;
1237:
1238: x_retcode := FND_API.G_RET_STS_ERROR;
1239:
1240: fnd_message.set_name('FLM','FLM_ATTRIBUTE_INVALID');
1241: fnd_message.set_token('ATTRIBUTE', 'Transfer Quantity');
1242: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1243:
1244: END IF;
1245:
1238: x_retcode := FND_API.G_RET_STS_ERROR;
1239:
1240: fnd_message.set_name('FLM','FLM_ATTRIBUTE_INVALID');
1241: fnd_message.set_token('ATTRIBUTE', 'Transfer Quantity');
1242: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1243:
1244: END IF;
1245:
1246: -- Added For Bug 12921002.
1249: CLOSE c_item_details;
1250:
1251: IF l_item_details_rec.lot_control_code <> 1 OR l_item_details_rec.serial_number_control_code <> 1 THEN
1252: x_retcode := FND_API.G_RET_STS_ERROR;
1253: fnd_message.set_name('FLM', 'FLM_EKB_LOT_SERIAL_ERR');
1254: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1255: END IF;
1256:
1257: -- Validate tolerance value
1250:
1251: IF l_item_details_rec.lot_control_code <> 1 OR l_item_details_rec.serial_number_control_code <> 1 THEN
1252: x_retcode := FND_API.G_RET_STS_ERROR;
1253: fnd_message.set_name('FLM', 'FLM_EKB_LOT_SERIAL_ERR');
1254: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1255: END IF;
1256:
1257: -- Validate tolerance value
1258: l_tolerance_param := flm_kanban_config_params.get_tol_kanban_transfer(l_kanban_detail_rec.organization_id);
1259: IF l_tolerance_param NOT IN (1, 2, 3) THEN
1260:
1261: x_retcode := FND_API.G_RET_STS_ERROR;
1262:
1263: fnd_message.set_name('FLM','FLM_TOLERANCE_PARAM_ERR');
1264: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1265:
1266: END IF;
1267:
1260:
1261: x_retcode := FND_API.G_RET_STS_ERROR;
1262:
1263: fnd_message.set_name('FLM','FLM_TOLERANCE_PARAM_ERR');
1264: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1265:
1266: END IF;
1267:
1268: -- Validate card status for 'Active'
1269: IF l_kanban_detail_rec.card_status <> INV_KANBAN_PVT.G_Card_Status_Active THEN
1270:
1271: x_retcode := FND_API.G_RET_STS_ERROR;
1272:
1273: fnd_message.set_name('FLM','FLM_INVALID_CARD_STATUS');
1274: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1275:
1276: END IF;
1277:
1270:
1271: x_retcode := FND_API.G_RET_STS_ERROR;
1272:
1273: fnd_message.set_name('FLM','FLM_INVALID_CARD_STATUS');
1274: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1275:
1276: END IF;
1277:
1278: -- Validate source type for Inter Org / Intra Org
1279: IF l_kanban_detail_rec.source_type NOT IN (INV_KANBAN_PVT.G_Source_Type_InterOrg, INV_KANBAN_PVT.G_Source_Type_IntraOrg) THEN
1280:
1281: x_retcode := FND_API.G_RET_STS_ERROR;
1282:
1283: fnd_message.set_name('FLM','FLM_NO_KANBAN_TYPE');
1284: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1285:
1286: END IF;
1287:
1280:
1281: x_retcode := FND_API.G_RET_STS_ERROR;
1282:
1283: fnd_message.set_name('FLM','FLM_NO_KANBAN_TYPE');
1284: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1285:
1286: END IF;
1287:
1288: IF x_retcode <> FND_API.G_RET_STS_SUCCESS THEN
1299: IF l_inter_order_rec.order_number IS NULL THEN
1300:
1301: x_retcode := FND_API.G_RET_STS_ERROR;
1302:
1303: fnd_message.set_name('FLM','FLM_INTER_ORDERNUM_ERR');
1304: x_errmsg := fnd_message.get;
1305:
1306: ELSE
1307:
1300:
1301: x_retcode := FND_API.G_RET_STS_ERROR;
1302:
1303: fnd_message.set_name('FLM','FLM_INTER_ORDERNUM_ERR');
1304: x_errmsg := fnd_message.get;
1305:
1306: ELSE
1307:
1308: x_inter_order_num := l_inter_order_rec.order_number;
1314: IF l_tolerance_param = 2 AND p_transfer_qty <> l_kanban_detail_rec.kanban_size THEN
1315:
1316: x_retcode := FND_API.G_RET_STS_ERROR;
1317:
1318: fnd_message.set_name('FLM','FLM_SHIPMENT_DISALLOWED');
1319: fnd_message.set_token('ORDER_NUMBER', x_inter_order_num);
1320: fnd_message.set_token('TOLERANCE_QUANTITY', l_kanban_detail_rec.kanban_size);
1321: x_errmsg := fnd_message.get;
1322:
1315:
1316: x_retcode := FND_API.G_RET_STS_ERROR;
1317:
1318: fnd_message.set_name('FLM','FLM_SHIPMENT_DISALLOWED');
1319: fnd_message.set_token('ORDER_NUMBER', x_inter_order_num);
1320: fnd_message.set_token('TOLERANCE_QUANTITY', l_kanban_detail_rec.kanban_size);
1321: x_errmsg := fnd_message.get;
1322:
1323: ELSIF l_tolerance_param = 3 THEN
1316: x_retcode := FND_API.G_RET_STS_ERROR;
1317:
1318: fnd_message.set_name('FLM','FLM_SHIPMENT_DISALLOWED');
1319: fnd_message.set_token('ORDER_NUMBER', x_inter_order_num);
1320: fnd_message.set_token('TOLERANCE_QUANTITY', l_kanban_detail_rec.kanban_size);
1321: x_errmsg := fnd_message.get;
1322:
1323: ELSIF l_tolerance_param = 3 THEN
1324:
1317:
1318: fnd_message.set_name('FLM','FLM_SHIPMENT_DISALLOWED');
1319: fnd_message.set_token('ORDER_NUMBER', x_inter_order_num);
1320: fnd_message.set_token('TOLERANCE_QUANTITY', l_kanban_detail_rec.kanban_size);
1321: x_errmsg := fnd_message.get;
1322:
1323: ELSIF l_tolerance_param = 3 THEN
1324:
1325: IF p_transfer_qty > l_kanban_detail_rec.kanban_size THEN
1336: IF p_transfer_qty > l_tolerance_above_size THEN
1337:
1338: x_retcode := FND_API.G_RET_STS_ERROR;
1339:
1340: fnd_message.set_name('FLM','FLM_SHIP_TOLERANCE_ERR');
1341: fnd_message.set_token('ORDER_NUMBER', x_inter_order_num);
1342: fnd_message.set_token('TOLERANCE_QUANTITY', l_tolerance_above_size);
1343: x_errmsg := fnd_message.get;
1344:
1337:
1338: x_retcode := FND_API.G_RET_STS_ERROR;
1339:
1340: fnd_message.set_name('FLM','FLM_SHIP_TOLERANCE_ERR');
1341: fnd_message.set_token('ORDER_NUMBER', x_inter_order_num);
1342: fnd_message.set_token('TOLERANCE_QUANTITY', l_tolerance_above_size);
1343: x_errmsg := fnd_message.get;
1344:
1345: END IF;
1338: x_retcode := FND_API.G_RET_STS_ERROR;
1339:
1340: fnd_message.set_name('FLM','FLM_SHIP_TOLERANCE_ERR');
1341: fnd_message.set_token('ORDER_NUMBER', x_inter_order_num);
1342: fnd_message.set_token('TOLERANCE_QUANTITY', l_tolerance_above_size);
1343: x_errmsg := fnd_message.get;
1344:
1345: END IF;
1346:
1339:
1340: fnd_message.set_name('FLM','FLM_SHIP_TOLERANCE_ERR');
1341: fnd_message.set_token('ORDER_NUMBER', x_inter_order_num);
1342: fnd_message.set_token('TOLERANCE_QUANTITY', l_tolerance_above_size);
1343: x_errmsg := fnd_message.get;
1344:
1345: END IF;
1346:
1347: END IF; -- p_transfer_qty
1359: IF l_intra_order_rec.request_number IS NULL THEN
1360:
1361: x_retcode := FND_API.G_RET_STS_ERROR;
1362:
1363: fnd_message.set_name('FLM','FLM_INTRA_ORDERNUM_ERR');
1364: x_errmsg := fnd_message.get;
1365:
1366: ELSE
1367:
1360:
1361: x_retcode := FND_API.G_RET_STS_ERROR;
1362:
1363: fnd_message.set_name('FLM','FLM_INTRA_ORDERNUM_ERR');
1364: x_errmsg := fnd_message.get;
1365:
1366: ELSE
1367:
1368: x_intra_order_num := l_intra_order_rec.request_number;
1372: IF l_tolerance_param = 2 AND p_transfer_qty <> l_kanban_detail_rec.kanban_size THEN
1373:
1374: x_retcode := FND_API.G_RET_STS_ERROR;
1375:
1376: fnd_message.set_name('FLM','FLM_SHIPMENT_DISALLOWED');
1377: fnd_message.set_token('ORDER_NUMBER', x_intra_order_num);
1378: fnd_message.set_token('TOLERANCE_QUANTITY', l_kanban_detail_rec.kanban_size);
1379: x_errmsg := fnd_message.get;
1380:
1373:
1374: x_retcode := FND_API.G_RET_STS_ERROR;
1375:
1376: fnd_message.set_name('FLM','FLM_SHIPMENT_DISALLOWED');
1377: fnd_message.set_token('ORDER_NUMBER', x_intra_order_num);
1378: fnd_message.set_token('TOLERANCE_QUANTITY', l_kanban_detail_rec.kanban_size);
1379: x_errmsg := fnd_message.get;
1380:
1381: END IF;
1374: x_retcode := FND_API.G_RET_STS_ERROR;
1375:
1376: fnd_message.set_name('FLM','FLM_SHIPMENT_DISALLOWED');
1377: fnd_message.set_token('ORDER_NUMBER', x_intra_order_num);
1378: fnd_message.set_token('TOLERANCE_QUANTITY', l_kanban_detail_rec.kanban_size);
1379: x_errmsg := fnd_message.get;
1380:
1381: END IF;
1382:
1375:
1376: fnd_message.set_name('FLM','FLM_SHIPMENT_DISALLOWED');
1377: fnd_message.set_token('ORDER_NUMBER', x_intra_order_num);
1378: fnd_message.set_token('TOLERANCE_QUANTITY', l_kanban_detail_rec.kanban_size);
1379: x_errmsg := fnd_message.get;
1380:
1381: END IF;
1382:
1383: END IF;
1424: IF l_available_to_transact < p_transfer_qty OR l_available_to_transact IS NULL THEN
1425:
1426: x_retcode := FND_API.G_RET_STS_ERROR;
1427:
1428: fnd_message.set_name('FLM','FLM_TRANS_QTY_ERR');
1429: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1430:
1431: END IF;
1432:
1425:
1426: x_retcode := FND_API.G_RET_STS_ERROR;
1427:
1428: fnd_message.set_name('FLM','FLM_TRANS_QTY_ERR');
1429: x_errmsg := x_errmsg || fnd_message.get || FND_CONST.NEWLINE;
1430:
1431: END IF;
1432:
1433: