54: RETURN l_trip_stop;
55:
56: EXCEPTION
57: WHEN no_data_found THEN
58: x_return_status := FND_API.G_RET_STS_ERROR;
59:
60: FND_MESSAGE.SET_NAME('WMS', 'WMS_TRIP_STOP_NOT_FOUND');
61: FND_MSG_PUB.ADD;
62:
67:
68: RETURN l_trip_stop;
69:
70: WHEN OTHERS THEN
71: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
72: RETURN l_trip_stop;
73:
74: END get_trip_stop;
75:
85: IS
86: BEGIN
87: SAVEPOINT update_dock_sp;
88: -- Initialize API return status to success
89: x_return_status := FND_API.G_RET_STS_SUCCESS;
90:
91: UPDATE wms_dock_appointments_b
92: SET
93: APPOINTMENT_TYPE = p_dock_appointments_v_rec.APPOINTMENT_TYPE,
125:
126: EXCEPTION
127: WHEN OTHERS THEN
128: ROLLBACK TO update_dock_sp;
129: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
130:
131: FND_MESSAGE.SET_NAME('WMS', 'WMS_DOCK_UPDATE_FAIL');
132: FND_MSG_PUB.ADD;
133:
150: IS
151: BEGIN
152: SAVEPOINT update_rep_dock_sp;
153: -- Initialize API return status to success
154: x_return_status := FND_API.G_RET_STS_SUCCESS;
155:
156: UPDATE wms_dock_appointments_b
157: SET
158: APPOINTMENT_TYPE = p_dock_appointments_v_rec.APPOINTMENT_TYPE,
193:
194: EXCEPTION
195: WHEN OTHERS THEN
196: ROLLBACK TO update_rep_dock_sp;
197: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
198:
199: FND_MESSAGE.SET_NAME('WMS', 'WMS_DOCK_UPDATE_REP_FAIL');
200: FND_MSG_PUB.ADD;
201:
217: IS
218: BEGIN
219: SAVEPOINT insert_dock_sp;
220: -- Initialize API return status to success
221: x_return_status := FND_API.G_RET_STS_SUCCESS;
222:
223: INSERT INTO wms_dock_appointments_b
224: (DOCK_APPOINTMENT_ID,
225: APPOINTMENT_TYPE,
297:
298: EXCEPTION
299: WHEN OTHERS THEN
300: ROLLBACK TO insert_dock_sp;
301: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
302:
303: FND_MESSAGE.SET_NAME('WMS', 'WMS_DOCK_INSERT_FAIL');
304: FND_MSG_PUB.ADD;
305:
321: IS
322: BEGIN
323: SAVEPOINT insert_rep_dock_sp;
324: -- Initialize API return status to success
325: x_return_status := FND_API.G_RET_STS_SUCCESS;
326:
327: INSERT INTO wms_dock_appointments_b
328: (DOCK_APPOINTMENT_ID,
329: APPOINTMENT_TYPE,
401:
402: EXCEPTION
403: WHEN OTHERS THEN
404: ROLLBACK TO insert_rep_dock_sp;
405: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
406:
407: FND_MESSAGE.SET_NAME('WMS', 'WMS_DOCK_INSERT_REP_FAIL');
408: FND_MSG_PUB.ADD;
409:
425: IS
426: BEGIN
427: SAVEPOINT delete_dock_sp;
428: -- Initialize API return status to success
429: x_return_status := FND_API.G_RET_STS_SUCCESS;
430:
431: DELETE wms_dock_appointments_b
432: WHERE DOCK_APPOINTMENT_ID = p_dock_appointment_id;
433:
436:
437: EXCEPTION
438: WHEN OTHERS THEN
439: ROLLBACK TO delete_dock_sp;
440: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
441:
442: FND_MESSAGE.SET_NAME('WMS', 'WMS_DOCK_DELETE_FAIL');
443: FND_MSG_PUB.ADD;
444:
459: IS
460: BEGIN
461: SAVEPOINT delete_rep_dock_sp;
462: -- Initialize API return status to success
463: x_return_status := FND_API.G_RET_STS_SUCCESS;
464:
465: DELETE wms_dock_appointments_tl
466: WHERE dock_appointment_id IN
467: (SELECT dock_appointment_id
473:
474: EXCEPTION
475: WHEN OTHERS THEN
476: ROLLBACK TO delete_rep_dock_sp;
477: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
478:
479: FND_MESSAGE.SET_NAME('WMS', 'WMS_DOCK_DELETE_REP_FAIL');
480: FND_MSG_PUB.ADD;
481:
681: , x_msg_count OUT NOCOPY NUMBER
682: , x_msg_data OUT NOCOPY VARCHAR2
683: , x_dock_appt_list OUT NOCOPY WMS_DOCK_APPOINTMENTS_PUB.dock_appt_tb_tp
684: , p_api_version IN NUMBER DEFAULT 1.0
685: , p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
686: , p_organization_id IN NUMBER
687: , p_start_date IN DATE
688: , p_end_date IN DATE
689: , p_appointment_type IN NUMBER DEFAULT NULL
708:
709: l_progress :=10;
710:
711: --Initialize the return status to success
712: x_return_status := FND_API.G_RET_STS_SUCCESS;
713:
714: -- Initialize message list to clear any existing messages if p_init_msg_list is set to TRUE
715: IF fnd_api.To_Boolean(p_init_msg_list) THEN
716: fnd_msg_pub.initialize;
711: --Initialize the return status to success
712: x_return_status := FND_API.G_RET_STS_SUCCESS;
713:
714: -- Initialize message list to clear any existing messages if p_init_msg_list is set to TRUE
715: IF fnd_api.To_Boolean(p_init_msg_list) THEN
716: fnd_msg_pub.initialize;
717: END IF;
718:
719: l_progress := 20;
758: ||l_progress||'.All the attributes passed are NULL', 4);
759: END IF;
760: fnd_message.set_name('INV', 'INV_MISSING_REQUIRED_PARAMETER');
761: fnd_msg_pub.add;
762: RAISE FND_API.G_EXC_ERROR;
763:
764: --Check if organization id is null
765: ELSIF( p_organization_id IS NULL ) THEN
766: IF (g_debug = 1) THEN
768: ||l_progress||'.Organization ID is null', 4);
769: END IF;
770: fnd_message.set_name('INV', 'INV_ITM_MISS_ORG_ID');
771: fnd_msg_pub.add;
772: RAISE FND_API.G_EXC_ERROR;
773:
774: --Check if p_start_date is null
775: ELSIF( p_start_date IS NULL ) THEN
776: IF (g_debug = 1) THEN
778: ||l_progress||'.p_start_date is null', 4);
779: END IF;
780: fnd_message.set_name('INV', 'INV_EAM_GEN_NULL_START_DATE');
781: fnd_msg_pub.add;
782: RAISE FND_API.G_EXC_ERROR;
783:
784: -- Check if start date is less than end date
785: ELSIF( p_end_date is not null AND p_start_date > p_end_date ) THEN
786: IF (g_debug = 1) THEN
812: NULL;
813: WHEN TOO_MANY_ROWS THEN
814: NULL;
815: WHEN OTHERS THEN
816: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
817: END;
818:
819: l_progress := 40;
820:
851: WHEN NO_DATA_FOUND THEN
852: --Setting the trip flag to TRUE to further process by carrier id
853: l_no_trip_rec := TRUE ;
854: WHEN OTHERS THEN
855: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
856: END;
857: END IF;--p_trip_stop_id not null
858:
859: /* If trip stop Id is null or if no records are fetched for given trip stop id
885: print_debug('Procedure get_dock_appointment_range completed successfully at '||TO_CHAR(SYSDATE, 'YYYY-MM-DD HH:DD:SS'), 4);
886: END IF;
887:
888: EXCEPTION
889: WHEN FND_API.G_EXC_ERROR THEN
890: x_return_status := FND_API.G_RET_STS_ERROR;
891: IF (g_debug = 1) THEN
892: print_debug('Execution error occured in get_dock_appointment_range at level:'||l_progress, 4);
893: END IF;
886: END IF;
887:
888: EXCEPTION
889: WHEN FND_API.G_EXC_ERROR THEN
890: x_return_status := FND_API.G_RET_STS_ERROR;
891: IF (g_debug = 1) THEN
892: print_debug('Execution error occured in get_dock_appointment_range at level:'||l_progress, 4);
893: END IF;
894: fnd_msg_pub.count_and_get (
891: IF (g_debug = 1) THEN
892: print_debug('Execution error occured in get_dock_appointment_range at level:'||l_progress, 4);
893: END IF;
894: fnd_msg_pub.count_and_get (
895: p_encoded => FND_API.G_FALSE
896: , p_count => x_msg_count
897: , p_data => x_msg_data );
898: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
899: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
894: fnd_msg_pub.count_and_get (
895: p_encoded => FND_API.G_FALSE
896: , p_count => x_msg_count
897: , p_data => x_msg_data );
898: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
899: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
900: fnd_message.set_name('WMS','WMS_UNEXPECTED_ERROR');
901: fnd_msg_pub.add;
902: IF (g_debug = 1) THEN
895: p_encoded => FND_API.G_FALSE
896: , p_count => x_msg_count
897: , p_data => x_msg_data );
898: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
899: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
900: fnd_message.set_name('WMS','WMS_UNEXPECTED_ERROR');
901: fnd_msg_pub.add;
902: IF (g_debug = 1) THEN
903: print_debug('Unexpected error occured in get_dock_appointment_range at level:'||l_progress, 4);
902: IF (g_debug = 1) THEN
903: print_debug('Unexpected error occured in get_dock_appointment_range at level:'||l_progress, 4);
904: END IF;
905: fnd_msg_pub.count_and_get (
906: p_encoded => FND_API.G_FALSE
907: , p_count => x_msg_count
908: , p_data => x_msg_data );
909: WHEN OTHERS THEN
910: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
906: p_encoded => FND_API.G_FALSE
907: , p_count => x_msg_count
908: , p_data => x_msg_data );
909: WHEN OTHERS THEN
910: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
911: fnd_message.set_name('WMS','WMS_UNEXPECTED_ERROR');
912: fnd_msg_pub.add;
913: IF (g_debug = 1) THEN
914: print_debug('Unexpected error occured in get_dock_appointment_range at level:'||l_progress, 4);
913: IF (g_debug = 1) THEN
914: print_debug('Unexpected error occured in get_dock_appointment_range at level:'||l_progress, 4);
915: END IF;
916: fnd_msg_pub.count_and_get (
917: p_encoded => FND_API.G_FALSE
918: , p_count => x_msg_count
919: , p_data => x_msg_data );
920: END get_dock_appointment_range;
921:
952:
953: BEGIN
954: IF WMS_CONTROL.G_CURRENT_RELEASE_LEVEL >= 120001 THEN
955: -- Initialize the return status to success
956: x_return_status := FND_API.G_RET_STS_SUCCESS;
957:
958: IF g_debug = 1 THEN
959: print_debug('In OTM_Dock_Appointment API ', 4);
960: print_debug('p_dock_appt_tab.COUNT : '|| p_dock_appt_tab.COUNT, 4);
970: END IF;
971: FND_MESSAGE.SET_NAME('WMS', 'WMS_DOCK_APPT_PARAM_REQD');
972: FND_MESSAGE.SET_TOKEN('PARAM', 'Organization');
973: FND_MSG_PUB.ADD;
974: RAISE FND_API.G_EXC_ERROR;
975: ELSIF p_dock_appt_tab(i).Trip_Stop_id IS NULL THEN
976: IF g_debug = 1 THEN
977: print_debug('Trip Stop id is required',4);
978: END IF;
978: END IF;
979: FND_MESSAGE.SET_NAME('WMS', 'WMS_DOCK_APPT_PARAM_REQD');
980: FND_MESSAGE.SET_TOKEN('PARAM', 'Trip Stop');
981: FND_MSG_PUB.ADD;
982: RAISE FND_API.G_EXC_ERROR;
983: END IF;
984:
985: -- Check for Valid dock name
986: IF p_dock_appt_tab(i).Dock_Name IS NOT NULL
991: END IF;
992: FND_MESSAGE.SET_NAME('WMS', 'WMS_INVALID_DOCK_DOOR');
993: FND_MESSAGE.SET_TOKEN('DOCK_DOOR', p_dock_appt_tab(i).Dock_Name);
994: FND_MSG_PUB.ADD;
995: RAISE FND_API.G_EXC_ERROR;
996: END IF;
997:
998: -- Extract Locator_id from Dock Name and validate the locator
999: -- for the Organization
1014: END IF;
1015: FND_MESSAGE.SET_NAME('WMS', 'WMS_INVALID_DOCK_DOOR_ORG');
1016: FND_MESSAGE.SET_TOKEN('DOCK_DOOR', p_dock_appt_tab(i).Dock_Name);
1017: FND_MSG_PUB.ADD;
1018: RAISE FND_API.G_EXC_ERROR;
1019: END IF;
1020: CLOSE Check_Valid_Locator;
1021:
1022: -- End Date/Time should be greater than Start Date/Time
1028: print_debug('Invalid Dates entered', 4);
1029: END IF;
1030: FND_MESSAGE.SET_NAME('WMS', 'WMS_DOCK_APPT_DATE_INVALID');
1031: FND_MSG_PUB.ADD;
1032: RAISE FND_API.G_EXC_ERROR;
1033: END IF;
1034:
1035: -- Check if appointment exists for the Locator
1036: OPEN Get_Appt_Info(p_dock_appt_tab(i).Trip_Stop_id, p_dock_appt_tab(i).Organization_id);
1069: ( x_return_status => l_return_status,
1070: x_msg_count => l_msg_count,
1071: x_msg_data => l_msg_data,
1072: p_dock_appointments_v_rec => l_dock_appointments_v_rec);
1073: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1074: IF g_debug = 1 THEN
1075: print_debug('Unable to create Dock Door appt, return status : '||l_return_status, 4);
1076: END IF;
1077: FND_MESSAGE.SET_NAME('WMS','WMS_DOCK_APPT_TRIP');
1075: print_debug('Unable to create Dock Door appt, return status : '||l_return_status, 4);
1076: END IF;
1077: FND_MESSAGE.SET_NAME('WMS','WMS_DOCK_APPT_TRIP');
1078: FND_MSG_PUB.ADD;
1079: RAISE FND_API.G_EXC_ERROR;
1080: END IF;
1081: ELSE
1082: IF g_debug = 1 THEN
1083: print_debug('Calling Update_dock_appointment API', 4);
1086: (p_dock_appointments_v_rec => l_dock_appointments_v_rec,
1087: x_return_status => l_return_status,
1088: x_msg_count => l_msg_count,
1089: x_msg_data => l_msg_data);
1090: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1091: IF g_debug = 1 THEN
1092: print_debug('Unable to update Dock Door appt, return status : '||l_return_status, 4);
1093: END IF;
1094: FND_MESSAGE.SET_NAME('WMS','WMS_DOCK_APPT_TRIP');
1092: print_debug('Unable to update Dock Door appt, return status : '||l_return_status, 4);
1093: END IF;
1094: FND_MESSAGE.SET_NAME('WMS','WMS_DOCK_APPT_TRIP');
1095: FND_MSG_PUB.ADD;
1096: RAISE FND_API.G_EXC_ERROR;
1097: END IF;
1098: END IF;
1099: CLOSE Get_Appt_Info;
1100: ELSE
1110: (x_return_status => l_return_status,
1111: x_msg_count => l_msg_count,
1112: x_msg_data => l_msg_data,
1113: p_dock_appointment_id => l_dock_appointment_id);
1114: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1115: IF g_debug = 1 THEN
1116: print_debug('Unable to delete Dock Door appt, return status : '||l_return_status, 4);
1117: END IF;
1118: FND_MESSAGE.SET_NAME('WMS','WMS_DOCK_APPT_TRIP');
1116: print_debug('Unable to delete Dock Door appt, return status : '||l_return_status, 4);
1117: END IF;
1118: FND_MESSAGE.SET_NAME('WMS','WMS_DOCK_APPT_TRIP');
1119: FND_MSG_PUB.ADD;
1120: RAISE FND_API.G_EXC_ERROR;
1121: END IF;
1122: END IF;
1123: END IF;
1124: END LOOP;
1128: END IF;
1129: END IF;
1130:
1131: EXCEPTION
1132: WHEN FND_API.G_EXC_ERROR THEN
1133: ROLLBACK TO OTM_DOCK_SP;
1134: IF Get_Appt_Info%ISOPEN THEN
1135: CLOSE Get_Appt_Info;
1136: END IF;
1139: END IF;
1140: IF g_debug = 1 THEN
1141: print_debug('Expected error occurred, Exiting OTM_Dock_Door_Appointment API', 4);
1142: END IF;
1143: x_return_status := FND_API.G_RET_STS_ERROR;
1144: FND_MSG_PUB.Count_And_Get
1145: (p_count => x_msg_count,
1146: p_data => x_msg_data);
1147: WHEN OTHERS THEN
1155: IF g_debug = 1 THEN
1156: print_debug('Unexpected error occurred, Exiting OTM_Dock_Door_Appointment API', 4);
1157: print_debug(SQLERRM, 4);
1158: END IF;
1159: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1160: FND_MSG_PUB.Count_And_Get
1161: (p_count => x_msg_count,
1162: p_data => x_msg_data);
1163: END OTM_Dock_Appointment;