51: /* Local variable section */
52: l_api_name CONSTANT VARCHAR2(30) := 'INSERT_ROUTING';
53: l_row_id ROWID;
54: k NUMBER := 1;
55: l_return_from_routing_step_dep VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
56: l_routing_id NUMBER;
57: l_owner_id NUMBER;
58: l_oprn_no gmd_operations.oprn_no%TYPE;
59: l_oprn_vers gmd_operations.oprn_vers%TYPE;
56: l_routing_id NUMBER;
57: l_owner_id NUMBER;
58: l_oprn_no gmd_operations.oprn_no%TYPE;
59: l_oprn_vers gmd_operations.oprn_vers%TYPE;
60: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
61: l_return_from_routing_hdr VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
62: l_return_from_routing_step VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
63: l_routing_qty gmd_routings.routing_qty%TYPE := 0;
64: l_process_loss gmd_routings.process_loss%TYPE := 0;
57: l_owner_id NUMBER;
58: l_oprn_no gmd_operations.oprn_no%TYPE;
59: l_oprn_vers gmd_operations.oprn_vers%TYPE;
60: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
61: l_return_from_routing_hdr VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
62: l_return_from_routing_step VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
63: l_routing_qty gmd_routings.routing_qty%TYPE := 0;
64: l_process_loss gmd_routings.process_loss%TYPE := 0;
65: l_routing_class_um fm_rout_cls.uom%TYPE;
58: l_oprn_no gmd_operations.oprn_no%TYPE;
59: l_oprn_vers gmd_operations.oprn_vers%TYPE;
60: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
61: l_return_from_routing_hdr VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
62: l_return_from_routing_step VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
63: l_routing_qty gmd_routings.routing_qty%TYPE := 0;
64: l_process_loss gmd_routings.process_loss%TYPE := 0;
65: l_routing_class_um fm_rout_cls.uom%TYPE;
66: l_stepdep_tbl GMD_ROUTINGS_PUB.gmd_routings_step_dep_tab;
114: BEGIN
115: SAVEPOINT create_routing;
116:
117: /* Set the return status to success initially */
118: x_return_status := FND_API.G_RET_STS_SUCCESS;
119: l_routings_rec := p_routings;
120:
121: /* B5609637 Initialize the routing qty and the process loss with the passed values */
122: l_process_loss := p_routings.process_loss;
142: RAISE setup_failure;
143: END IF;
144:
145: /* Make sure we are call compatible */
146: IF NOT FND_API.compatible_api_call ( gmd_routings_PUB.m_api_version
147: ,p_api_version
148: ,'INSERT_ROUTING'
149: ,gmd_routings_PUB.m_pkg_name) THEN
150: RAISE invalid_version;
348:
349: ELSE
350: FND_MESSAGE.SET_NAME('GMD', 'GMD_RTG_CLS_VS_RTG_UM_TYPE');
351: FND_MSG_PUB.Add;
352: x_return_status := FND_API.G_RET_STS_ERROR;
353: Raise routing_creation_failure;
354:
355: END IF; /* IF l_routing_um_class = l_routing_class_um_class */
356:
389: gmd_debug.put_line(m_pkg_name||'.'||l_api_name||':'
390: ||'Insert the routing steps for routing with routing id = '||l_routing_id);
391: END IF;
392:
393: IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
394: Raise routing_creation_failure;
395: END IF;
396:
397: /* Looping each routing step detail row */
408: ,x_message_list => x_message_list
409: ,x_return_status => l_return_from_routing_step
410: );
411: -- Check if routing detail was created
412: IF l_return_from_routing_step <> FND_API.G_RET_STS_SUCCESS THEN
413: RAISE routing_step_creation_failure;
414: END IF;
415: END LOOP; /* End loop for p_routings_step_tbl */
416:
470: ,x_return_status => l_return_from_routing_step_dep
471: );
472:
473: /* Check if insert of step dependency was done */
474: IF l_return_from_routing_step_dep <> FND_API.G_RET_STS_SUCCESS THEN
475: RAISE routing_step_dep_failure;
476: END IF; /* IF l_return_from_routing_step_dep <> FND_API.G_RET_STS_SUCCESS */
477: END IF; /* when l_step_dep_tab.count > 0 */
478: END LOOP;
472:
473: /* Check if insert of step dependency was done */
474: IF l_return_from_routing_step_dep <> FND_API.G_RET_STS_SUCCESS THEN
475: RAISE routing_step_dep_failure;
476: END IF; /* IF l_return_from_routing_step_dep <> FND_API.G_RET_STS_SUCCESS */
477: END IF; /* when l_step_dep_tab.count > 0 */
478: END LOOP;
479: END IF; /* if p_routings_step_dep_tbl.count > 0 */
480: ELSE
485: RAISE routing_creation_failure;
486: END IF;
487:
488: /* Check if work was done */
489: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
490: RAISE routing_creation_failure;
491: END IF; /* IF x_return_status <> FND_API.G_RET_STS_SUCCESS */
492:
493: IF (P_commit) THEN
487:
488: /* Check if work was done */
489: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
490: RAISE routing_creation_failure;
491: END IF; /* IF x_return_status <> FND_API.G_RET_STS_SUCCESS */
492:
493: IF (P_commit) THEN
494: COMMIT;
495: --kkillams,bug 3408799
510: , p_ignore_flag => FALSE
511: , x_message_count => x_message_count
512: , x_message_list => x_message_list
513: , x_return_status => X_return_status);
514: IF x_return_status NOT IN (FND_API.g_ret_sts_success,'P') THEN
515: RAISE default_status_err;
516: END IF; --x_return_status NOT IN (FND_API.g_ret_sts_success,'P')
517: END IF; --l_entity_status <> 100
518: COMMIT;
512: , x_message_list => x_message_list
513: , x_return_status => X_return_status);
514: IF x_return_status NOT IN (FND_API.g_ret_sts_success,'P') THEN
515: RAISE default_status_err;
516: END IF; --x_return_status NOT IN (FND_API.g_ret_sts_success,'P')
517: END IF; --l_entity_status <> 100
518: COMMIT;
519: END IF; --P_commit
520:
519: END IF; --P_commit
520:
521: fnd_msg_pub.count_and_get (
522: p_count => x_message_count
523: ,p_encoded => FND_API.g_false
524: ,p_data => x_message_list);
525:
526: IF x_message_count = 0 THEN
527: IF (l_debug = 'Y') THEN
541: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
542: END IF;
543: fnd_msg_pub.count_and_get (
544: p_count => x_message_count
545: ,p_encoded => FND_API.g_false
546: ,p_data => x_message_list);
547: x_return_status := FND_API.G_RET_STS_ERROR;
548: ROLLBACK TO SAVEPOINT create_routing;
549: WHEN setup_failure THEN
543: fnd_msg_pub.count_and_get (
544: p_count => x_message_count
545: ,p_encoded => FND_API.g_false
546: ,p_data => x_message_list);
547: x_return_status := FND_API.G_RET_STS_ERROR;
548: ROLLBACK TO SAVEPOINT create_routing;
549: WHEN setup_failure THEN
550: ROLLBACK TO SAVEPOINT create_routing;
551: x_return_status := FND_API.G_RET_STS_ERROR;
547: x_return_status := FND_API.G_RET_STS_ERROR;
548: ROLLBACK TO SAVEPOINT create_routing;
549: WHEN setup_failure THEN
550: ROLLBACK TO SAVEPOINT create_routing;
551: x_return_status := FND_API.G_RET_STS_ERROR;
552: fnd_msg_pub.count_and_get (
553: p_count => x_message_count
554: ,p_encoded => FND_API.g_false
555: ,p_data => x_message_list);
550: ROLLBACK TO SAVEPOINT create_routing;
551: x_return_status := FND_API.G_RET_STS_ERROR;
552: fnd_msg_pub.count_and_get (
553: p_count => x_message_count
554: ,p_encoded => FND_API.g_false
555: ,p_data => x_message_list);
556: WHEN default_status_err THEN
557: ROLLBACK TO default_status_sp;
558: x_return_status := FND_API.G_RET_STS_ERROR;
554: ,p_encoded => FND_API.g_false
555: ,p_data => x_message_list);
556: WHEN default_status_err THEN
557: ROLLBACK TO default_status_sp;
558: x_return_status := FND_API.G_RET_STS_ERROR;
559: fnd_msg_pub.count_and_get (
560: p_count => x_message_count
561: ,p_encoded => FND_API.g_false
562: ,p_data => x_message_list);
557: ROLLBACK TO default_status_sp;
558: x_return_status := FND_API.G_RET_STS_ERROR;
559: fnd_msg_pub.count_and_get (
560: p_count => x_message_count
561: ,p_encoded => FND_API.g_false
562: ,p_data => x_message_list);
563: WHEN OTHERS THEN
564: ROLLBACK TO SAVEPOINT create_routing;
565: x_return_status := FND_API.g_ret_sts_unexp_error;
561: ,p_encoded => FND_API.g_false
562: ,p_data => x_message_list);
563: WHEN OTHERS THEN
564: ROLLBACK TO SAVEPOINT create_routing;
565: x_return_status := FND_API.g_ret_sts_unexp_error;
566: fnd_msg_pub.add_exc_msg (gmd_routings_PUB.m_pkg_name, l_api_name);
567: IF (l_debug = 'Y') THEN
568: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'When others exception:'||SQLERRM);
569: END IF;
568: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'When others exception:'||SQLERRM);
569: END IF;
570: fnd_msg_pub.count_and_get (
571: p_count => x_message_count
572: ,p_encoded => FND_API.g_false
573: ,p_data => x_message_list);
574: END insert_routing;
575:
576: /* =============================================================== */
601:
602: /* Local variable section */
603: l_api_name CONSTANT VARCHAR2(30) := 'UPDATE_ROUTING';
604: l_routing_id gmd_routings.routing_id%TYPE;
605: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
606: l_cur_status gmd_status.status_code%TYPE;
607: l_owner_id gmd_routings.owner_id%TYPE;
608: l_owner_orgn_id NUMBER;
609:
629: BEGIN
630: SAVEPOINT update_routing;
631:
632: /* Set the return status to success initially */
633: x_return_status := FND_API.G_RET_STS_SUCCESS;
634:
635: /* Initialize message list and count if needed */
636: IF p_init_msg_list THEN
637: fnd_msg_pub.initialize;
650: RAISE setup_failure;
651: END IF;
652:
653: /* Make sure we are call compatible */
654: IF NOT FND_API.compatible_api_call ( GMD_ROUTINGS_PUB.m_api_version
655: ,p_api_version
656: ,l_api_name
657: ,GMD_ROUTINGS_PUB.m_pkg_name) THEN
658: RAISE invalid_version;
668: ,pRouting_vers => p_routing_vers
669: ,xRouting_id => l_routing_id
670: ,xReturn_status => l_return_status);
671:
672: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
673: /* it indicates that this routing does'ntexists */
674: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_INVALID');
675: FND_MSG_PUB.ADD;
676: RAISE routing_update_failure;
790: , x_return_status => x_return_status
791: );
792:
793: /* Check if work was done */
794: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
795: RAISE routing_update_failure;
796: END IF; /* IF x_return_status <> FND_API.G_RET_STS_SUCCESS */
797:
798: fnd_msg_pub.count_and_get (
792:
793: /* Check if work was done */
794: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
795: RAISE routing_update_failure;
796: END IF; /* IF x_return_status <> FND_API.G_RET_STS_SUCCESS */
797:
798: fnd_msg_pub.count_and_get (
799: p_count => x_message_count
800: ,p_encoded => FND_API.g_false
796: END IF; /* IF x_return_status <> FND_API.G_RET_STS_SUCCESS */
797:
798: fnd_msg_pub.count_and_get (
799: p_count => x_message_count
800: ,p_encoded => FND_API.g_false
801: ,p_data => x_message_list);
802:
803: IF x_message_count = 0 THEN
804: IF (l_debug = 'Y') THEN
817:
818: EXCEPTION
819: WHEN routing_update_failure OR invalid_version THEN
820: ROLLBACK TO SAVEPOINT update_routing;
821: x_return_status := FND_API.G_RET_STS_ERROR;
822: IF (l_debug = 'Y') THEN
823: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
824: END IF;
825: fnd_msg_pub.count_and_get (
823: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
824: END IF;
825: fnd_msg_pub.count_and_get (
826: p_count => x_message_count
827: ,p_encoded => FND_API.g_false
828: ,p_data => x_message_list);
829: WHEN setup_failure THEN
830: ROLLBACK TO SAVEPOINT update_routing;
831: x_return_status := FND_API.G_RET_STS_ERROR;
827: ,p_encoded => FND_API.g_false
828: ,p_data => x_message_list);
829: WHEN setup_failure THEN
830: ROLLBACK TO SAVEPOINT update_routing;
831: x_return_status := FND_API.G_RET_STS_ERROR;
832: fnd_msg_pub.count_and_get (
833: p_count => x_message_count
834: ,p_encoded => FND_API.g_false
835: ,p_data => x_message_list);
830: ROLLBACK TO SAVEPOINT update_routing;
831: x_return_status := FND_API.G_RET_STS_ERROR;
832: fnd_msg_pub.count_and_get (
833: p_count => x_message_count
834: ,p_encoded => FND_API.g_false
835: ,p_data => x_message_list);
836: WHEN OTHERS THEN
837: ROLLBACK TO SAVEPOINT update_routing;
838: x_return_status := FND_API.g_ret_sts_unexp_error;
834: ,p_encoded => FND_API.g_false
835: ,p_data => x_message_list);
836: WHEN OTHERS THEN
837: ROLLBACK TO SAVEPOINT update_routing;
838: x_return_status := FND_API.g_ret_sts_unexp_error;
839: fnd_msg_pub.add_exc_msg (gmd_routings_PUB.m_pkg_name, l_api_name);
840: IF (l_debug = 'Y') THEN
841: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'When others exception:'||SQLERRM);
842: END IF;
841: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'When others exception:'||SQLERRM);
842: END IF;
843: fnd_msg_pub.count_and_get (
844: p_count => x_message_count
845: ,p_encoded => FND_API.g_false
846: ,p_data => x_message_list);
847: END update_routing;
848:
849: /* =============================================================== */
880: AND delete_mark = 0;
881: /* Local variable section */
882: l_api_name CONSTANT VARCHAR2(30) := 'DELETE_ROUTING';
883: l_routing_id gmd_routings.routing_id%TYPE;
884: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
885: l_count NUMBER;
886:
887: /* Define a table type */
888: l_update_table GMD_ROUTINGS_PUB.UPDATE_TBL_TYPE;
899: gmd_debug.log_initialize('Dertpub');
900: END IF;
901:
902: /* Set the return status to success initially */
903: x_return_status := FND_API.G_RET_STS_SUCCESS;
904:
905: /* Initialize message list and count if needed */
906: IF p_init_msg_list THEN
907: fnd_msg_pub.initialize;
915: RAISE setup_failure;
916: END IF;
917:
918: /* Make sure we are call compatible */
919: IF NOT FND_API.compatible_api_call ( GMD_ROUTINGS_PUB.m_api_version
920: ,p_api_version
921: ,l_api_name
922: ,GMD_ROUTINGS_PUB.m_pkg_name) THEN
923: x_return_status := FND_API.G_RET_STS_ERROR;
919: IF NOT FND_API.compatible_api_call ( GMD_ROUTINGS_PUB.m_api_version
920: ,p_api_version
921: ,l_api_name
922: ,GMD_ROUTINGS_PUB.m_pkg_name) THEN
923: x_return_status := FND_API.G_RET_STS_ERROR;
924: RAISE invalid_version;
925: END IF;
926:
927: /* Validation :. Check if this routing that is deleted does exists
934: ,pRouting_vers => p_routing_vers
935: ,xRouting_id => l_routing_id
936: ,xReturn_status => l_return_status);
937:
938: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
939: /* it indicates that this routing does'ntexists */
940: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_INVALID');
941: FND_MSG_PUB.ADD;
942: RAISE routing_delete_failure;
947: If yes, then system raises error and terminates remaining processes w.r.t. bug 3355204*/
948: OPEN Cur_check_rout(p_routing_id);
949: FETCH Cur_check_rout INTO l_count;
950: IF (l_count <> 0) THEN
951: x_return_status := FND_API.G_RET_STS_ERROR;
952: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_USED');
953: FND_MSG_PUB.ADD;
954: RAISE routing_used;
955: END IF;
966: , x_return_status => x_return_status
967: );
968:
969: /* Check if work was done */
970: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
971: RAISE routing_delete_failure;
972: END IF; /* IF x_return_status <> FND_API.G_RET_STS_SUCCESS */
973:
974: fnd_msg_pub.count_and_get (
968:
969: /* Check if work was done */
970: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
971: RAISE routing_delete_failure;
972: END IF; /* IF x_return_status <> FND_API.G_RET_STS_SUCCESS */
973:
974: fnd_msg_pub.count_and_get (
975: p_count => x_message_count
976: ,p_encoded => FND_API.g_false
972: END IF; /* IF x_return_status <> FND_API.G_RET_STS_SUCCESS */
973:
974: fnd_msg_pub.count_and_get (
975: p_count => x_message_count
976: ,p_encoded => FND_API.g_false
977: ,p_data => x_message_list);
978:
979: IF x_message_count = 0 THEN
980: IF (l_debug = 'Y') THEN
993:
994: EXCEPTION
995: WHEN routing_delete_failure OR invalid_version or routing_used THEN
996: ROLLBACK TO SAVEPOINT delete_routing;
997: x_return_status := FND_API.G_RET_STS_ERROR;
998: IF (l_debug = 'Y') THEN
999: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
1000: END IF;
1001: fnd_msg_pub.count_and_get (
999: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
1000: END IF;
1001: fnd_msg_pub.count_and_get (
1002: p_count => x_message_count
1003: ,p_encoded => FND_API.g_false
1004: ,p_data => x_message_list);
1005: WHEN setup_failure THEN
1006: ROLLBACK TO SAVEPOINT delete_routing;
1007: x_return_status := FND_API.G_RET_STS_ERROR;
1003: ,p_encoded => FND_API.g_false
1004: ,p_data => x_message_list);
1005: WHEN setup_failure THEN
1006: ROLLBACK TO SAVEPOINT delete_routing;
1007: x_return_status := FND_API.G_RET_STS_ERROR;
1008: fnd_msg_pub.count_and_get (
1009: p_count => x_message_count
1010: ,p_encoded => FND_API.g_false
1011: ,p_data => x_message_list);
1006: ROLLBACK TO SAVEPOINT delete_routing;
1007: x_return_status := FND_API.G_RET_STS_ERROR;
1008: fnd_msg_pub.count_and_get (
1009: p_count => x_message_count
1010: ,p_encoded => FND_API.g_false
1011: ,p_data => x_message_list);
1012: WHEN OTHERS THEN
1013: ROLLBACK TO SAVEPOINT delete_routing;
1014: x_return_status := FND_API.g_ret_sts_unexp_error;
1010: ,p_encoded => FND_API.g_false
1011: ,p_data => x_message_list);
1012: WHEN OTHERS THEN
1013: ROLLBACK TO SAVEPOINT delete_routing;
1014: x_return_status := FND_API.g_ret_sts_unexp_error;
1015: fnd_msg_pub.add_exc_msg (gmd_routings_PUB.m_pkg_name, l_api_name);
1016: IF (l_debug = 'Y') THEN
1017: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'When others exception:'||SQLERRM);
1018: END IF;
1017: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'When others exception:'||SQLERRM);
1018: END IF;
1019: fnd_msg_pub.count_and_get (
1020: p_count => x_message_count
1021: ,p_encoded => FND_API.g_false
1022: ,p_data => x_message_list);
1023: END delete_routing;
1024:
1025: /* =============================================================== */
1048:
1049: /* Local variable section */
1050: l_api_name CONSTANT VARCHAR2(30) := 'UNDELETE_ROUTING';
1051: l_routing_id gmd_routings.routing_id%TYPE;
1052: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1053:
1054: /* Define a table type */
1055: l_update_table GMD_ROUTINGS_PUB.UPDATE_TBL_TYPE;
1056:
1064: gmd_debug.log_initialize('Undrtpub');
1065: END IF;
1066:
1067: /* Set the return status to success initially */
1068: x_return_status := FND_API.G_RET_STS_SUCCESS;
1069:
1070: /* Initialize message list and count if needed */
1071: IF p_init_msg_list THEN
1072: fnd_msg_pub.initialize;
1080: RAISE setup_failure;
1081: END IF;
1082:
1083: /* Make sure we are call compatible */
1084: IF NOT FND_API.compatible_api_call ( GMD_ROUTINGS_PUB.m_api_version
1085: ,p_api_version
1086: ,l_api_name
1087: ,GMD_ROUTINGS_PUB.m_pkg_name) THEN
1088: x_return_status := FND_API.G_RET_STS_ERROR;
1084: IF NOT FND_API.compatible_api_call ( GMD_ROUTINGS_PUB.m_api_version
1085: ,p_api_version
1086: ,l_api_name
1087: ,GMD_ROUTINGS_PUB.m_pkg_name) THEN
1088: x_return_status := FND_API.G_RET_STS_ERROR;
1089: RAISE invalid_version;
1090: END IF;
1091:
1092: /* Validation :. Check if this routing that is deleted does exists
1099: ,pRouting_vers => p_routing_vers
1100: ,xRouting_id => l_routing_id
1101: ,xReturn_status => l_return_status);
1102:
1103: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1104: /* it indicates that this routing does'ntexists */
1105: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_INVALID');
1106: FND_MSG_PUB.ADD;
1107: RAISE routing_undelete_failure;
1113: WHERE routing_id = l_routing_id;
1114:
1115: fnd_msg_pub.count_and_get (
1116: p_count => x_message_count
1117: ,p_encoded => FND_API.g_false
1118: ,p_data => x_message_list);
1119:
1120: IF x_message_count = 0 THEN
1121: IF (l_debug = 'Y') THEN
1134:
1135: EXCEPTION
1136: WHEN routing_undelete_failure OR invalid_version THEN
1137: ROLLBACK TO SAVEPOINT undelete_routing;
1138: x_return_status := FND_API.G_RET_STS_ERROR;
1139: IF (l_debug = 'Y') THEN
1140: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
1141: END IF;
1142: fnd_msg_pub.count_and_get (
1140: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
1141: END IF;
1142: fnd_msg_pub.count_and_get (
1143: p_count => x_message_count
1144: ,p_encoded => FND_API.g_false
1145: ,p_data => x_message_list);
1146: WHEN setup_failure THEN
1147: ROLLBACK TO SAVEPOINT undelete_routing;
1148: x_return_status := FND_API.G_RET_STS_ERROR;
1144: ,p_encoded => FND_API.g_false
1145: ,p_data => x_message_list);
1146: WHEN setup_failure THEN
1147: ROLLBACK TO SAVEPOINT undelete_routing;
1148: x_return_status := FND_API.G_RET_STS_ERROR;
1149: fnd_msg_pub.count_and_get (
1150: p_count => x_message_count
1151: ,p_encoded => FND_API.g_false
1152: ,p_data => x_message_list);
1147: ROLLBACK TO SAVEPOINT undelete_routing;
1148: x_return_status := FND_API.G_RET_STS_ERROR;
1149: fnd_msg_pub.count_and_get (
1150: p_count => x_message_count
1151: ,p_encoded => FND_API.g_false
1152: ,p_data => x_message_list);
1153: WHEN OTHERS THEN
1154: ROLLBACK TO SAVEPOINT undelete_routing;
1155: x_return_status := FND_API.g_ret_sts_unexp_error;
1151: ,p_encoded => FND_API.g_false
1152: ,p_data => x_message_list);
1153: WHEN OTHERS THEN
1154: ROLLBACK TO SAVEPOINT undelete_routing;
1155: x_return_status := FND_API.g_ret_sts_unexp_error;
1156: fnd_msg_pub.add_exc_msg (gmd_routings_PUB.m_pkg_name, l_api_name);
1157: IF (l_debug = 'Y') THEN
1158: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'When others exception:'||SQLERRM);
1159: END IF;
1158: gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'When others exception:'||SQLERRM);
1159: END IF;
1160: fnd_msg_pub.count_and_get (
1161: p_count => x_message_count
1162: ,p_encoded => FND_API.g_false
1163: ,p_data => x_message_list);
1164: END undelete_routing;
1165:
1166: