3:
4: --
5: G_PKG_NAME CONSTANT VARCHAR2(50) := 'WSH_DELIVERY_LEGS_ACTIONS';
6: --
7: g_wms_installed WSH_UTIL_CORE.Column_Tab_Type;
8:
9: CURSOR C_IS_FIRST_LEG(p_trip_id in number, p_delivery_id in number, p_pickup_loc_id in number) is
10: select delivery_leg_id
11: from wsh_delivery_legs l, wsh_trip_stops s
20: RETURN VARCHAR2;
21:
22:
23: PROCEDURE Assign_Deliveries
24: (p_del_rows IN wsh_util_core.id_tab_type,
25: p_trip_id IN NUMBER := NULL,
26: p_pickup_stop_id IN NUMBER := NULL,
27: p_pickup_stop_seq IN NUMBER := NULL,
28: p_dropoff_stop_id IN NUMBER := NULL,
29: p_dropoff_stop_seq IN NUMBER := NULL,
30: p_pickup_location_id IN NUMBER := NULL,
31: p_dropoff_location_id IN NUMBER := NULL,
32: p_create_flag IN VARCHAR2 := NULL,
33: x_leg_rows OUT NOCOPY wsh_util_core.id_tab_type,
34: x_return_status OUT NOCOPY VARCHAR2,
35: p_caller IN VARCHAR2,
36: p_pickup_arr_date IN DATE := to_date(NULL),
37: p_pickup_dep_date IN DATE := to_date(NULL),
177: where trip_id = p_trip_id
178: and stop_sequence_number > p_stop_seq;
179:
180: l_customer_id NUMBER;
181: l_del_rows wsh_util_core.id_tab_type;
182: l_pickup_location_id_tbl wsh_util_core.id_tab_type;
183: l_pickup_date_tbl wsh_util_core.date_Tab_Type;
184: l_dropoff_location_id_tbl wsh_util_core.id_tab_type;
185: l_dropoff_date_tbl wsh_util_core.date_Tab_Type;
178: and stop_sequence_number > p_stop_seq;
179:
180: l_customer_id NUMBER;
181: l_del_rows wsh_util_core.id_tab_type;
182: l_pickup_location_id_tbl wsh_util_core.id_tab_type;
183: l_pickup_date_tbl wsh_util_core.date_Tab_Type;
184: l_dropoff_location_id_tbl wsh_util_core.id_tab_type;
185: l_dropoff_date_tbl wsh_util_core.date_Tab_Type;
186: l_organization_id_tbl wsh_util_core.id_tab_type;
179:
180: l_customer_id NUMBER;
181: l_del_rows wsh_util_core.id_tab_type;
182: l_pickup_location_id_tbl wsh_util_core.id_tab_type;
183: l_pickup_date_tbl wsh_util_core.date_Tab_Type;
184: l_dropoff_location_id_tbl wsh_util_core.id_tab_type;
185: l_dropoff_date_tbl wsh_util_core.date_Tab_Type;
186: l_organization_id_tbl wsh_util_core.id_tab_type;
187: l_status_code_tbl wsh_util_core.column_Tab_Type;
180: l_customer_id NUMBER;
181: l_del_rows wsh_util_core.id_tab_type;
182: l_pickup_location_id_tbl wsh_util_core.id_tab_type;
183: l_pickup_date_tbl wsh_util_core.date_Tab_Type;
184: l_dropoff_location_id_tbl wsh_util_core.id_tab_type;
185: l_dropoff_date_tbl wsh_util_core.date_Tab_Type;
186: l_organization_id_tbl wsh_util_core.id_tab_type;
187: l_status_code_tbl wsh_util_core.column_Tab_Type;
188: l_shipment_direction_tbl wsh_util_core.column_Tab_Type;
181: l_del_rows wsh_util_core.id_tab_type;
182: l_pickup_location_id_tbl wsh_util_core.id_tab_type;
183: l_pickup_date_tbl wsh_util_core.date_Tab_Type;
184: l_dropoff_location_id_tbl wsh_util_core.id_tab_type;
185: l_dropoff_date_tbl wsh_util_core.date_Tab_Type;
186: l_organization_id_tbl wsh_util_core.id_tab_type;
187: l_status_code_tbl wsh_util_core.column_Tab_Type;
188: l_shipment_direction_tbl wsh_util_core.column_Tab_Type;
189: l_gross_weight_tbl wsh_util_core.id_tab_type;
182: l_pickup_location_id_tbl wsh_util_core.id_tab_type;
183: l_pickup_date_tbl wsh_util_core.date_Tab_Type;
184: l_dropoff_location_id_tbl wsh_util_core.id_tab_type;
185: l_dropoff_date_tbl wsh_util_core.date_Tab_Type;
186: l_organization_id_tbl wsh_util_core.id_tab_type;
187: l_status_code_tbl wsh_util_core.column_Tab_Type;
188: l_shipment_direction_tbl wsh_util_core.column_Tab_Type;
189: l_gross_weight_tbl wsh_util_core.id_tab_type;
190: l_net_weight_tbl wsh_util_core.id_tab_type;
183: l_pickup_date_tbl wsh_util_core.date_Tab_Type;
184: l_dropoff_location_id_tbl wsh_util_core.id_tab_type;
185: l_dropoff_date_tbl wsh_util_core.date_Tab_Type;
186: l_organization_id_tbl wsh_util_core.id_tab_type;
187: l_status_code_tbl wsh_util_core.column_Tab_Type;
188: l_shipment_direction_tbl wsh_util_core.column_Tab_Type;
189: l_gross_weight_tbl wsh_util_core.id_tab_type;
190: l_net_weight_tbl wsh_util_core.id_tab_type;
191: l_volume_tbl wsh_util_core.id_tab_type;
184: l_dropoff_location_id_tbl wsh_util_core.id_tab_type;
185: l_dropoff_date_tbl wsh_util_core.date_Tab_Type;
186: l_organization_id_tbl wsh_util_core.id_tab_type;
187: l_status_code_tbl wsh_util_core.column_Tab_Type;
188: l_shipment_direction_tbl wsh_util_core.column_Tab_Type;
189: l_gross_weight_tbl wsh_util_core.id_tab_type;
190: l_net_weight_tbl wsh_util_core.id_tab_type;
191: l_volume_tbl wsh_util_core.id_tab_type;
192: l_mode_of_transport_tbl wsh_util_core.column_tab_type;
185: l_dropoff_date_tbl wsh_util_core.date_Tab_Type;
186: l_organization_id_tbl wsh_util_core.id_tab_type;
187: l_status_code_tbl wsh_util_core.column_Tab_Type;
188: l_shipment_direction_tbl wsh_util_core.column_Tab_Type;
189: l_gross_weight_tbl wsh_util_core.id_tab_type;
190: l_net_weight_tbl wsh_util_core.id_tab_type;
191: l_volume_tbl wsh_util_core.id_tab_type;
192: l_mode_of_transport_tbl wsh_util_core.column_tab_type;
193: l_freight_terms_code_tbl wsh_util_core.column_tab_type;
186: l_organization_id_tbl wsh_util_core.id_tab_type;
187: l_status_code_tbl wsh_util_core.column_Tab_Type;
188: l_shipment_direction_tbl wsh_util_core.column_Tab_Type;
189: l_gross_weight_tbl wsh_util_core.id_tab_type;
190: l_net_weight_tbl wsh_util_core.id_tab_type;
191: l_volume_tbl wsh_util_core.id_tab_type;
192: l_mode_of_transport_tbl wsh_util_core.column_tab_type;
193: l_freight_terms_code_tbl wsh_util_core.column_tab_type;
194: l_name_tbl wsh_util_core.column_tab_type;
187: l_status_code_tbl wsh_util_core.column_Tab_Type;
188: l_shipment_direction_tbl wsh_util_core.column_Tab_Type;
189: l_gross_weight_tbl wsh_util_core.id_tab_type;
190: l_net_weight_tbl wsh_util_core.id_tab_type;
191: l_volume_tbl wsh_util_core.id_tab_type;
192: l_mode_of_transport_tbl wsh_util_core.column_tab_type;
193: l_freight_terms_code_tbl wsh_util_core.column_tab_type;
194: l_name_tbl wsh_util_core.column_tab_type;
195:
188: l_shipment_direction_tbl wsh_util_core.column_Tab_Type;
189: l_gross_weight_tbl wsh_util_core.id_tab_type;
190: l_net_weight_tbl wsh_util_core.id_tab_type;
191: l_volume_tbl wsh_util_core.id_tab_type;
192: l_mode_of_transport_tbl wsh_util_core.column_tab_type;
193: l_freight_terms_code_tbl wsh_util_core.column_tab_type;
194: l_name_tbl wsh_util_core.column_tab_type;
195:
196: l_id wsh_util_core.id_tab_type;
189: l_gross_weight_tbl wsh_util_core.id_tab_type;
190: l_net_weight_tbl wsh_util_core.id_tab_type;
191: l_volume_tbl wsh_util_core.id_tab_type;
192: l_mode_of_transport_tbl wsh_util_core.column_tab_type;
193: l_freight_terms_code_tbl wsh_util_core.column_tab_type;
194: l_name_tbl wsh_util_core.column_tab_type;
195:
196: l_id wsh_util_core.id_tab_type;
197: l_seq wsh_util_core.id_tab_type;
190: l_net_weight_tbl wsh_util_core.id_tab_type;
191: l_volume_tbl wsh_util_core.id_tab_type;
192: l_mode_of_transport_tbl wsh_util_core.column_tab_type;
193: l_freight_terms_code_tbl wsh_util_core.column_tab_type;
194: l_name_tbl wsh_util_core.column_tab_type;
195:
196: l_id wsh_util_core.id_tab_type;
197: l_seq wsh_util_core.id_tab_type;
198: l_pregen_seq VARCHAR2(1);
192: l_mode_of_transport_tbl wsh_util_core.column_tab_type;
193: l_freight_terms_code_tbl wsh_util_core.column_tab_type;
194: l_name_tbl wsh_util_core.column_tab_type;
195:
196: l_id wsh_util_core.id_tab_type;
197: l_seq wsh_util_core.id_tab_type;
198: l_pregen_seq VARCHAR2(1);
199: l_sysdate DATE;
200: l_tmp_date DATE := NULL;
193: l_freight_terms_code_tbl wsh_util_core.column_tab_type;
194: l_name_tbl wsh_util_core.column_tab_type;
195:
196: l_id wsh_util_core.id_tab_type;
197: l_seq wsh_util_core.id_tab_type;
198: l_pregen_seq VARCHAR2(1);
199: l_sysdate DATE;
200: l_tmp_date DATE := NULL;
201: l_gross_weight NUMBER;
263: l_return_status VARCHAR2(30);
264:
265: l_pickup_seq NUMBER;
266: l_dropoff_seq NUMBER;
267: l_stop_tab WSH_UTIL_CORE.id_tab_type; -- DBI Project
268: l_dbi_rs VARCHAR2(1); -- DBI Project
269: --
270: l_debug_on BOOLEAN;
271: --
305: l_pickup_arr_date DATE;
306: l_pickup_dep_date DATE;
307: l_dropoff_arr_date DATE;
308: l_dropoff_dep_date DATE;
309: l_trip_ids wsh_util_core.id_tab_type;
310: l_dummy_trip_ids wsh_util_core.id_tab_type;
311: l_phys_trip_dropoff_loc_id NUMBER;
312: l_trip_pickup_loc_id NUMBER;
313: l_trip_dropoff_loc_id NUMBER;
306: l_pickup_dep_date DATE;
307: l_dropoff_arr_date DATE;
308: l_dropoff_dep_date DATE;
309: l_trip_ids wsh_util_core.id_tab_type;
310: l_dummy_trip_ids wsh_util_core.id_tab_type;
311: l_phys_trip_dropoff_loc_id NUMBER;
312: l_trip_pickup_loc_id NUMBER;
313: l_trip_dropoff_loc_id NUMBER;
314: l_delivery_name wsh_new_deliveries.name%TYPE;
437: WSH_LOCATIONS_PKG.Convert_internal_cust_location(
438: p_internal_cust_location_id => l_trip_dropoff_loc_id,
439: x_internal_org_location_id => l_phys_trip_dropoff_loc_id,
440: x_return_status => l_return_status);
441: IF l_return_status in (WSH_UTIL_CORE.G_RET_STS_ERROR, WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
442: x_return_status:=l_return_status;
443: --RETURN;
444: raise e_return_excp; -- LPN CONV. rv
445: END IF;
447: WSH_DEBUG_SV.log(l_module_name,'l_phys_trip_dropoff_loc_id',l_phys_trip_dropoff_loc_id);
448: END IF;
449: END IF;
450:
451: IF (WSH_UTIL_CORE.FTE_IS_INSTALLED = 'Y') THEN
452:
453: l_rate_trip_dels := Check_Rate_Trip_Contents(p_trip_id => p_trip_id,
454: x_return_status => l_return_status);
455:
452:
453: l_rate_trip_dels := Check_Rate_Trip_Contents(p_trip_id => p_trip_id,
454: x_return_status => l_return_status);
455:
456: IF l_return_status in (WSH_UTIL_CORE.G_RET_STS_ERROR, WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
457:
458: RAISE rate_trip_contents_fail;
459:
460: END IF;
486: l_phys_trip_dropoff_loc_id IS NOT NULL AND
487: l_dropoff_location_id <> l_trip_dropoff_loc_id THEN
488: FND_MESSAGE.SET_NAME('WSH','WSH_DEL_DROP_NOTINT');
489: FND_MESSAGE.SET_TOKEN('DEL_NAME',l_delivery_name);
490: wsh_util_core.add_message(WSH_UTIL_CORE.G_RET_STS_ERROR,l_module_name);
491: goto skip_delivery;
492: END IF;
493:
494: l_del_rows(l_del_rows.COUNT+1) := p_del_rows(i);
512:
513: FND_MESSAGE.SET_NAME('WSH','WSH_DEL_ASSIGN_ERROR');
514: FND_MESSAGE.SET_TOKEN('DEL_NAME',l_delivery_name);
515: FND_MESSAGE.SET_TOKEN('TRIP_NAME',wsh_trips_pvt.get_name(p_trip_id));
516: wsh_util_core.add_message(WSH_UTIL_CORE.G_RET_STS_ERROR);
517: l_num_error := l_num_error + 1;
518:
519: <
520: null;
679: wsh_debug_sv.log(l_module_name, 'Processing Del '||l_del_rows(i)||' Shipment direction '|| l_shipment_direction);
680: END IF;
681: --
682:
683: IF (WSH_UTIL_CORE.FTE_IS_INSTALLED = 'Y') THEN
684: IF (NVL(l_rate_trip_dels, 'X') <> 'M') THEN
685: -- IF l_rate_trip_dels = 'M', then trip is already mixed, exceptions have been logged.
686:
687: l_rate_del := Check_Rate_Delivery(p_delivery_id => NULL,
688: p_freight_terms_code => l_freight_terms_code,
689: p_shipment_direction => l_shipment_direction,
690: x_return_status => l_return_status);
691:
692: IF l_return_status in (WSH_UTIL_CORE.G_RET_STS_ERROR, WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
693: RAISE e_InvalidDelExcep; -- Bug 5336308
694: END IF;
695:
696: IF (l_rate_del <> l_rate_trip_dels) AND (l_rate_trip_dels <> 'M') THEN
699:
700:
701: -- Raise Warning
702: FND_MESSAGE.Set_Name('WSH', 'WSH_RATE_MIXED_TRIP_WARN');
703: wsh_util_core.add_message(WSH_UTIL_CORE.G_RET_STS_WARNING, l_module_name);
704: l_num_warn := l_num_warn + 1;
705:
706: -- Log Exception
707:
723: p_message => l_msg,
724: p_trip_id => p_trip_id
725: );
726:
727: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
728: l_num_warn := l_num_warn + 1;
729: RAISE e_InvalidDelExcep; -- Bug 5336308
730: END IF;
731:
820: p_stop_id => null, -- as of now no validations
821: p_new_flag => l_new_flag,
822: x_return_status => l_return_status
823: );
824: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
825: x_return_status := l_return_status;
826: raise e_return_excp; -- LPN CONV. rv
827: END IF;
828: ELSE
833: where id = l_pickup_location_id
834: and flag = 'P';
835: EXCEPTION
836: WHEN NO_DATA_FOUND THEN
837: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
838: raise e_return_excp; -- LPN CONV. rv
839: WHEN OTHERS THEN
840: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
841: raise e_return_excp; -- LPN CONV. rv
836: WHEN NO_DATA_FOUND THEN
837: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
838: raise e_return_excp; -- LPN CONV. rv
839: WHEN OTHERS THEN
840: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
841: raise e_return_excp; -- LPN CONV. rv
842: END;
843: END IF; --}
844: --
905: END IF;
906:
907:
908: /* H integration - call Multi Leg FTE */
909: IF (WSH_UTIL_CORE.FTE_IS_INSTALLED = 'Y') THEN
910: --
911: -- Debug Statements
912: --
913: IF l_debug_on THEN
919: p_trip_rec => l_trip_rec,
920: p_action => 'ADD',
921: x_return_status => l_return_status);
922:
923: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
924: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
925: l_num_warn := l_num_warn + 1;
926: ELSE
927: x_return_status := l_return_status;
920: p_action => 'ADD',
921: x_return_status => l_return_status);
922:
923: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
924: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
925: l_num_warn := l_num_warn + 1;
926: ELSE
927: x_return_status := l_return_status;
928: --
950: --
951:
952: wsh_trip_stops_pvt.create_trip_stop(l_trip_stop_info,l_rowid,l_pickup_stop_id, x_return_status);
953:
954: IF (x_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
955: RAISE e_InvalidDelExcep; -- Bug 5336308
956: END IF;
957:
958: --For a Routing Firm trip, when action is assign trip, check if the new stop
970: WSH_DEBUG_SV.logmsg(l_module_name,'Calling program unit wsh_trips_pvt.get_name',WSH_DEBUG_SV.C_PROC_LEVEL);
971: END IF;
972: FND_MESSAGE.SET_NAME('WSH','WSH_FIRMTRIP_NO_NEW_STOP');
973: FND_MESSAGE.SET_TOKEN('TRIP_NAME',wsh_trips_pvt.get_name(p_trip_id));
974: wsh_util_core.add_message(WSH_UTIL_CORE.G_RET_STS_ERROR, l_module_name);
975: RAISE e_InvalidDelExcep; -- Bug 5336308
976: END IF;
977: CLOSE c_check_dummystops;
978: END IF;
976: END IF;
977: CLOSE c_check_dummystops;
978: END IF;
979:
980: IF( WSH_UTIL_CORE.FTE_Is_Installed = 'Y') THEN
981: l_trip_mode_of_transport := NVL(l_trip_mode_of_transport, l_delivery_mode_of_transport);
982: WSH_UTIL_VALIDATE.Validate_Trip_MultiStops (
983: p_trip_id => p_trip_id,
984: p_mode_of_transport => l_trip_mode_of_transport,
986: IF l_debug_on THEN
987: WSH_DEBUG_SV.log(l_module_name,'WSH_UTIL_VALIDATE.Validate_MultiStops x_return_status',x_return_status);
988: END IF;
989:
990: IF x_return_status IN (WSH_UTIL_CORE.G_RET_STS_ERROR, WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
991: RAISE e_InvalidDelExcep; -- Bug 5336308
992: END IF;
993:
994: END IF;
1010: (p_stop_id => l_pickup_stop_id,
1011: x_stop_rec => l_stop_rec,
1012: x_return_status => l_return_status);
1013:
1014: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
1015: x_return_status := l_return_status;
1016: --
1017: -- Debug Statements
1018: --
1030:
1031: --get pickup time, if > l_pickup_date, then update pickup stop
1032: --with the l_pickup_date so that the earliet time is set
1033: /* H integration - call Multi Leg FTE */
1034: IF (WSH_UTIL_CORE.FTE_IS_INSTALLED = 'Y') THEN
1035:
1036: --
1037: -- Debug Statements
1038: --
1044: (p_stop_rec => l_stop_rec,
1045: p_trip_rec => l_trip_rec,
1046: p_action => 'UPDATE',
1047: x_return_status => l_return_status);
1048: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
1049: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
1050: l_num_warn := l_num_warn + 1;
1051: ELSE
1052: x_return_status := l_return_status;
1045: p_trip_rec => l_trip_rec,
1046: p_action => 'UPDATE',
1047: x_return_status => l_return_status);
1048: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
1049: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
1050: l_num_warn := l_num_warn + 1;
1051: ELSE
1052: x_return_status := l_return_status;
1053: --
1083: x_shipments_type_flag => l_stop_shipments_type_flag,
1084: x_return_status => l_return_status
1085: );
1086: --
1087: wsh_util_core.api_post_call
1088: (
1089: p_return_status => l_return_status,
1090: x_num_warnings => l_num_warn,
1091: x_num_errors => l_num_error
1119:
1120: IF l_debug_on THEN
1121: WSH_DEBUG_SV.log(l_module_name,'Return Status after DBI Call-',l_dbi_rs);
1122: END IF;
1123: IF l_dbi_rs = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR THEN
1124: x_return_status := l_dbi_rs;
1125: rollback to assign_del_to_trip;
1126: -- just pass this return status to caller API
1127: IF l_debug_on THEN
1144: IF l_debug_on THEN
1145: WSH_DEBUG_SV.log(l_module_name,'Handle_Internal_Stops after updating stop l_return_status',l_return_status);
1146: END IF;
1147:
1148: wsh_util_core.api_post_call
1149: (
1150: p_return_status => l_return_status,
1151: x_num_warnings => l_num_warn,
1152: x_num_errors => l_num_error
1228: p_new_flag => l_new_flag,
1229: x_return_status => l_return_status
1230: );
1231:
1232: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
1233: x_return_status := l_return_status;
1234: raise e_return_excp; -- LPN CONV. rv
1235: END IF;
1236: ELSE
1241: where id = l_dropoff_location_id
1242: and flag = 'D';
1243: EXCEPTION
1244: WHEN NO_DATA_FOUND THEN
1245: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
1246: raise e_return_excp; -- LPN CONV. rv
1247: WHEN OTHERS THEN
1248: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
1249: raise e_return_excp; -- LPN CONV. rv
1244: WHEN NO_DATA_FOUND THEN
1245: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
1246: raise e_return_excp; -- LPN CONV. rv
1247: WHEN OTHERS THEN
1248: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
1249: raise e_return_excp; -- LPN CONV. rv
1250: END;
1251: END IF; --}
1252:
1329: END IF;
1330:
1331:
1332: /* H integration - call Multi Leg FTE */
1333: IF (WSH_UTIL_CORE.FTE_IS_INSTALLED = 'Y') THEN
1334: --
1335: -- Debug Statements
1336: --
1337: IF l_debug_on THEN
1343: p_trip_rec => l_trip_rec,
1344: p_action => 'ADD',
1345: x_return_status => l_return_status);
1346:
1347: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
1348: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
1349: l_num_warn := l_num_warn + 1;
1350: ELSE
1351: x_return_status := l_return_status;
1344: p_action => 'ADD',
1345: x_return_status => l_return_status);
1346:
1347: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
1348: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
1349: l_num_warn := l_num_warn + 1;
1350: ELSE
1351: x_return_status := l_return_status;
1352: --
1371: END IF;
1372: --
1373: wsh_trip_stops_pvt.create_trip_stop(l_trip_stop_info,l_rowid,l_dropoff_stop_id, x_return_status);
1374:
1375: IF (x_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
1376: RAISE e_InvalidDelExcep; -- Bug 5336308
1377: END IF;
1378:
1379: --For a Routing Firm trip, when action is assign trip, check if the new stop
1392: WSH_DEBUG_SV.logmsg(l_module_name,'Calling program unit wsh_trips_pvt.get_name',WSH_DEBUG_SV.C_PROC_LEVEL);
1393: END IF;
1394: FND_MESSAGE.SET_NAME('WSH','WSH_FIRMTRIP_NO_NEW_STOP');
1395: FND_MESSAGE.SET_TOKEN('TRIP_NAME',wsh_trips_pvt.get_name(p_trip_id));
1396: wsh_util_core.add_message(WSH_UTIL_CORE.G_RET_STS_ERROR, l_module_name);
1397: RAISE e_InvalidDelExcep; -- Bug 5336308
1398: END IF;
1399: CLOSE c_check_dummystops;
1400: END IF;
1398: END IF;
1399: CLOSE c_check_dummystops;
1400: END IF;
1401:
1402: IF( WSH_UTIL_CORE.FTE_Is_Installed = 'Y') THEN
1403: l_trip_mode_of_transport := NVL(l_trip_mode_of_transport, l_delivery_mode_of_transport);
1404: WSH_UTIL_VALIDATE.Validate_Trip_MultiStops (
1405: p_trip_id => p_trip_id,
1406: p_mode_of_transport => l_trip_mode_of_transport,
1408: IF l_debug_on THEN
1409: WSH_DEBUG_SV.log(l_module_name,'WSH_UTIL_VALIDATE.Validate_MultiStops x_return_status',x_return_status);
1410: END IF;
1411:
1412: IF x_return_status IN (WSH_UTIL_CORE.G_RET_STS_ERROR, WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
1413: RAISE e_InvalidDelExcep; -- Bug 5336308
1414: END IF;
1415:
1416: END IF;
1433: (p_stop_id => l_dropoff_stop_id,
1434: x_stop_rec => l_stop_rec,
1435: x_return_status => l_return_status);
1436:
1437: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
1438: x_return_status := l_return_status;
1439: --
1440: -- Debug Statements
1441: --
1452: l_dropoff_dep_date := l_stop_rec.planned_departure_date;
1453:
1454:
1455: /* H integration - call Multi Leg FTE */
1456: IF (WSH_UTIL_CORE.FTE_IS_INSTALLED = 'Y') THEN
1457:
1458: --
1459: -- Debug Statements
1460: --
1466: (p_stop_rec => l_stop_rec,
1467: p_trip_rec => l_trip_rec,
1468: p_action => 'UPDATE',
1469: x_return_status => l_return_status);
1470: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
1471: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
1472: l_num_warn := l_num_warn + 1;
1473: ELSE
1474: x_return_status := l_return_status;
1467: p_trip_rec => l_trip_rec,
1468: p_action => 'UPDATE',
1469: x_return_status => l_return_status);
1470: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
1471: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
1472: l_num_warn := l_num_warn + 1;
1473: ELSE
1474: x_return_status := l_return_status;
1475: --
1505: x_shipments_type_flag => l_stop_shipments_type_flag,
1506: x_return_status => l_return_status
1507: );
1508: --
1509: wsh_util_core.api_post_call
1510: (
1511: p_return_status => l_return_status,
1512: x_num_warnings => l_num_warn,
1513: x_num_errors => l_num_error
1535: (p_delivery_id => l_del_rows(i),
1536: p_pickup_location_id => l_pickup_location_id,
1537: p_dropoff_location_id => l_dropoff_location_id,
1538: x_return_status => l_return_status);
1539: IF l_return_status IN (wsh_util_core.g_ret_sts_error, wsh_util_core.g_ret_sts_unexp_error) THEN
1540: l_num_error := l_num_error + 1;
1541: --
1542: IF l_debug_on THEN
1543: WSH_DEBUG_SV.logmsg(l_module_name,'Rolling back to the begining of the loop',WSH_DEBUG_SV.C_PROC_LEVEL);
1576: THEN
1577: FND_MESSAGE.Set_Name('WSH', 'WSH_INVALID_PLANNED_DATE');
1578: FND_MESSAGE.SET_TOKEN('PICKUP_DATE', fnd_date.date_to_displaydt(l_pickup_dep_date,calendar_aware=>FND_DATE.calendar_aware_alt));
1579: FND_MESSAGE.SET_TOKEN('DROPOFF_DATE', fnd_date.date_to_displaydt(l_dropoff_arr_date,calendar_aware=>FND_DATE.calendar_aware_alt));
1580: wsh_util_core.add_message(WSH_UTIL_CORE.G_RET_STS_ERROR, l_module_name);
1581: l_num_error := l_num_error + 1;
1582: RAISE e_CommonExcep; -- Bug 5336308
1583: END IF;
1584:
1593: END IF;
1594:
1595: IF l_pickup_stop_seq >= l_dropoff_stop_seq THEN
1596: FND_MESSAGE.Set_Name('WSH', 'WSH_PICKUP_STOP_SEQUENCE');
1597: wsh_util_core.add_message(WSH_UTIL_CORE.G_RET_STS_ERROR, l_module_name);
1598: l_num_error := l_num_error + 1;
1599: RAISE e_CommonExcep; -- Bug 5336308
1600: END IF;
1601:
1617: where delivery_leg_id = l_leg_id;
1618:
1619: IF (SQL%NOTFOUND) THEN
1620: FND_MESSAGE.SET_NAME('WSH','WSH_LEG_NOT_FOUND');
1621: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
1622: wsh_util_core.add_message(x_return_status);
1623: RAISE e_CommonExcep; -- Bug 5336308
1624: END IF;
1625:
1618:
1619: IF (SQL%NOTFOUND) THEN
1620: FND_MESSAGE.SET_NAME('WSH','WSH_LEG_NOT_FOUND');
1621: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
1622: wsh_util_core.add_message(x_return_status);
1623: RAISE e_CommonExcep; -- Bug 5336308
1624: END IF;
1625:
1626: --
1640:
1641: IF l_debug_on THEN
1642: WSH_DEBUG_SV.log(l_module_name,'Return Status after DBI Call-',l_dbi_rs);
1643: END IF;
1644: IF l_dbi_rs = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR THEN
1645: x_return_status := l_dbi_rs;
1646: rollback to assign_del_to_trip;
1647: -- just pass this return status to caller API
1648: IF l_debug_on THEN
1665: where delivery_leg_id = l_leg_id;
1666:
1667: IF (SQL%NOTFOUND) THEN
1668: FND_MESSAGE.SET_NAME('WSH','WSH_LEG_NOT_FOUND');
1669: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
1670: wsh_util_core.add_message(x_return_status);
1671: RAISE e_CommonExcep; -- Bug 5336308
1672: END IF;
1673:
1666:
1667: IF (SQL%NOTFOUND) THEN
1668: FND_MESSAGE.SET_NAME('WSH','WSH_LEG_NOT_FOUND');
1669: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
1670: wsh_util_core.add_message(x_return_status);
1671: RAISE e_CommonExcep; -- Bug 5336308
1672: END IF;
1673:
1674: --
1688:
1689: IF l_debug_on THEN
1690: WSH_DEBUG_SV.log(l_module_name,'Return Status after DBI Call-',l_dbi_rs);
1691: END IF;
1692: IF l_dbi_rs = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR THEN
1693: x_return_status := l_dbi_rs;
1694: rollback to assign_del_to_trip;
1695: -- just pass this return status to caller API
1696: IF l_debug_on THEN
1734: END IF;
1735: --
1736: wsh_delivery_legs_pvt.create_delivery_leg(l_delivery_leg_info, l_rowid, l_leg_id, x_return_status);
1737:
1738: IF (x_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
1739: RAISE e_InvalidDelExcep; -- Bug 5336308
1740: END IF;
1741:
1742: -- J: W/V Changes
1747: p_diff_volume => l_org_vol,
1748: p_leg_id => l_leg_id,
1749: x_return_status => l_return_status);
1750:
1751: IF (l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
1752: RAISE e_InvalidDelExcep; -- Bug 5336308
1753: END IF;
1754:
1755: -- dbms_output.put_line('created delivery leg#'||l_leg_id);
1780: x_shipments_type_flag => l_pu_stop_shipments_type_flag,
1781: x_return_status => l_return_status
1782: );
1783: --
1784: wsh_util_core.api_post_call
1785: (
1786: p_return_status => l_return_status,
1787: x_num_warnings => l_num_warn,
1788: x_num_errors => l_num_error
1814:
1815: IF l_debug_on THEN
1816: WSH_DEBUG_SV.log(l_module_name,'Return Status after DBI Call-',l_dbi_rs);
1817: END IF;
1818: IF l_dbi_rs = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR THEN
1819: x_return_status := l_dbi_rs;
1820: rollback to assign_del_to_trip;
1821: -- just pass this return status to caller API
1822: IF l_debug_on THEN
1853: x_shipments_type_flag => l_do_stop_shipments_type_flag,
1854: x_return_status => l_return_status
1855: );
1856: --
1857: wsh_util_core.api_post_call
1858: (
1859: p_return_status => l_return_status,
1860: x_num_warnings => l_num_warn,
1861: x_num_errors => l_num_error
1891:
1892: IF l_debug_on THEN
1893: WSH_DEBUG_SV.log(l_module_name,'Return Status after DBI Call-',l_dbi_rs);
1894: END IF;
1895: IF l_dbi_rs = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR THEN
1896: x_return_status := l_dbi_rs;
1897: rollback to assign_del_to_trip;
1898: -- just pass this return status to caller API
1899: IF l_debug_on THEN
1947: x_return_status => l_return_status,
1948: x_msg_count => l_msg_count,
1949: x_msg_data => l_msg_data);
1950:
1951: IF l_dlvy_trip_tbl(1).r_message_type IN (WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR, WSH_UTIL_CORE.G_RET_STS_ERROR)
1952: OR l_return_status IN (WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR, WSH_UTIL_CORE.G_RET_STS_ERROR ) THEN
1953: FND_MESSAGE.SET_NAME(l_dlvy_trip_tbl(1).r_message_appl,l_dlvy_trip_tbl(1).r_message_code);
1954: IF l_dlvy_trip_tbl(1).r_message_token IS NOT NULL THEN
1955: FND_MESSAGE.SET_TOKEN(l_dlvy_trip_tbl(1).r_message_token_name, l_dlvy_trip_tbl(1).r_message_token);
1948: x_msg_count => l_msg_count,
1949: x_msg_data => l_msg_data);
1950:
1951: IF l_dlvy_trip_tbl(1).r_message_type IN (WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR, WSH_UTIL_CORE.G_RET_STS_ERROR)
1952: OR l_return_status IN (WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR, WSH_UTIL_CORE.G_RET_STS_ERROR ) THEN
1953: FND_MESSAGE.SET_NAME(l_dlvy_trip_tbl(1).r_message_appl,l_dlvy_trip_tbl(1).r_message_code);
1954: IF l_dlvy_trip_tbl(1).r_message_token IS NOT NULL THEN
1955: FND_MESSAGE.SET_TOKEN(l_dlvy_trip_tbl(1).r_message_token_name, l_dlvy_trip_tbl(1).r_message_token);
1956: END IF;
1953: FND_MESSAGE.SET_NAME(l_dlvy_trip_tbl(1).r_message_appl,l_dlvy_trip_tbl(1).r_message_code);
1954: IF l_dlvy_trip_tbl(1).r_message_token IS NOT NULL THEN
1955: FND_MESSAGE.SET_TOKEN(l_dlvy_trip_tbl(1).r_message_token_name, l_dlvy_trip_tbl(1).r_message_token);
1956: END IF;
1957: WSH_UTIL_CORE.ADD_MESSAGE(l_dlvy_trip_tbl(1).r_message_type);
1958: RAISE e_InvalidDelExcep; -- Bug 5336308
1959: END IF;
1960: END IF;
1961:
1975: --
1976: FND_MESSAGE.SET_TOKEN('DEL_NAME',wsh_new_deliveries_pvt.get_name(l_del_rows(i)));
1977: -- Bug 3439165
1978: FND_MESSAGE.SET_TOKEN('TRIP_NAME',wsh_trips_pvt.get_name(p_trip_id));
1979: wsh_util_core.add_message(WSH_UTIL_CORE.G_RET_STS_ERROR);
1980: l_num_error := l_num_error + 1;
1981: --
1982: WHEN e_CommonExcep THEN
1983: --
1998: IF l_debug_on THEN
1999: WSH_DEBUG_SV.log(l_module_name,'Handle_Internal_Stops l_return_status',l_return_status);
2000: END IF;
2001:
2002: wsh_util_core.api_post_call
2003: (
2004: p_return_status => l_return_status,
2005: x_num_warnings => l_num_warn,
2006: x_num_errors => l_num_error
2016: -- If shipments type flag has changed due to assignment
2017: -- of delivery, update pickup stop with new value.
2018: --
2019: /* H integration - call Multi Leg FTE */
2020: IF (WSH_UTIL_CORE.FTE_IS_INSTALLED = 'Y') THEN
2021: -- Get pvt type record structure for stop
2022: --
2023: -- Debug Statements
2024: --
2030: (p_stop_id => p_pickup_stop_id,
2031: x_stop_rec => l_stop_rec,
2032: x_return_status => l_return_status);
2033:
2034: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
2035: x_return_status := l_return_status;
2036: --
2037: -- Debug Statements
2038: --
2055: (p_stop_rec => l_stop_rec,
2056: p_trip_rec => l_trip_rec,
2057: p_action => 'UPDATE',
2058: x_return_status => l_return_status);
2059: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
2060: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
2061: l_num_warn := l_num_warn + 1;
2062: ELSE
2063: x_return_status := l_return_status;
2056: p_trip_rec => l_trip_rec,
2057: p_action => 'UPDATE',
2058: x_return_status => l_return_status);
2059: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
2060: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
2061: l_num_warn := l_num_warn + 1;
2062: ELSE
2063: x_return_status := l_return_status;
2064: --
2101: -- If shipments type flag has changed due to assignment
2102: -- of delivery, update dropoff stop with new value.
2103: --
2104: /* H integration - call Multi Leg FTE */
2105: IF (WSH_UTIL_CORE.FTE_IS_INSTALLED = 'Y') THEN
2106: -- Get pvt type record structure for stop
2107: --
2108: -- Debug Statements
2109: --
2115: (p_stop_id => p_dropoff_stop_id,
2116: x_stop_rec => l_stop_rec,
2117: x_return_status => l_return_status);
2118:
2119: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
2120: x_return_status := l_return_status;
2121: --
2122: -- Debug Statements
2123: --
2140: (p_stop_rec => l_stop_rec,
2141: p_trip_rec => l_trip_rec,
2142: p_action => 'UPDATE',
2143: x_return_status => l_return_status);
2144: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
2145: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
2146: l_num_warn := l_num_warn + 1;
2147: ELSE
2148: x_return_status := l_return_status;
2141: p_trip_rec => l_trip_rec,
2142: p_action => 'UPDATE',
2143: x_return_status => l_return_status);
2144: IF l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS THEN
2145: IF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
2146: l_num_warn := l_num_warn + 1;
2147: ELSE
2148: x_return_status := l_return_status;
2149: --
2266: IF l_debug_on THEN
2267: WSH_DEBUG_SV.log(l_module_name,'l_return_status',l_return_status);
2268: END IF;
2269:
2270: IF l_return_status IN (WSH_UTIL_CORE.G_RET_STS_ERROR,WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
2271: raise mark_reprice_error;
2272: ELSIF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
2273: l_num_warn := l_num_warn + 1;
2274: END IF;
2268: END IF;
2269:
2270: IF l_return_status IN (WSH_UTIL_CORE.G_RET_STS_ERROR,WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
2271: raise mark_reprice_error;
2272: ELSIF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
2273: l_num_warn := l_num_warn + 1;
2274: END IF;
2275:
2276: --
2292: IF l_debug_on THEN
2293: WSH_DEBUG_SV.log(l_module_name,'Process_Leg_Sequence l_return_status',l_return_status);
2294: END IF;
2295:
2296: wsh_util_core.api_post_call
2297: (
2298: p_return_status => l_return_status,
2299: x_num_warnings => l_num_warn,
2300: x_num_errors => l_num_error
2324: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
2325: END IF;
2326: --
2327: --
2328: WSH_UTIL_CORE.API_POST_CALL
2329: (
2330: p_return_status => l_return_status,
2331: x_num_warnings => l_num_warn,
2332: x_num_errors => l_num_error,
2345: FND_MESSAGE.SET_TOKEN('NUM_SUCCESS',p_del_rows.count-l_num_error);
2346: FND_MESSAGE.SET_TOKEN('TRIP_NAME',wsh_trips_pvt.get_name(p_trip_id));
2347:
2348: IF (l_num_error = p_del_rows.count) THEN
2349: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2350: ELSE
2351: x_return_status := WSH_UTIL_CORE.G_RET_STS_WARNING;
2352: END IF;
2353:
2347:
2348: IF (l_num_error = p_del_rows.count) THEN
2349: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2350: ELSE
2351: x_return_status := WSH_UTIL_CORE.G_RET_STS_WARNING;
2352: END IF;
2353:
2354: wsh_util_core.add_message(x_return_status);
2355: ELSE
2350: ELSE
2351: x_return_status := WSH_UTIL_CORE.G_RET_STS_WARNING;
2352: END IF;
2353:
2354: wsh_util_core.add_message(x_return_status);
2355: ELSE
2356: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2357: END IF;
2358:
2352: END IF;
2353:
2354: wsh_util_core.add_message(x_return_status);
2355: ELSE
2356: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2357: END IF;
2358:
2359: ELSE
2360: /* H integration more changes */
2358:
2359: ELSE
2360: /* H integration more changes */
2361: IF l_num_warn > 0 THEN
2362: x_return_status := WSH_UTIL_CORE.G_RET_STS_WARNING;
2363: ELSE
2364: x_return_status := WSH_UTIL_CORE.G_RET_STS_SUCCESS;
2365: END IF;
2366: END IF;
2360: /* H integration more changes */
2361: IF l_num_warn > 0 THEN
2362: x_return_status := WSH_UTIL_CORE.G_RET_STS_WARNING;
2363: ELSE
2364: x_return_status := WSH_UTIL_CORE.G_RET_STS_SUCCESS;
2365: END IF;
2366: END IF;
2367:
2368:
2400: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
2401: END IF;
2402: --
2403: --
2404: IF (l_return_status IN (WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR,WSH_UTIL_CORE.G_RET_STS_ERROR) and x_return_status <> WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
2405: x_return_status := l_return_status;
2406: END IF;
2407: --
2408: --}
2429: END IF;
2430: IF c_next_seq_exists%ISOPEN THEN
2431: close c_next_seq_exists;
2432: END IF;
2433: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2434: --
2435: -- K LPN CONV. rv
2436: --
2437: IF WSH_WMS_LPN_GRP.G_CALLBACK_REQUIRED = 'Y'
2453: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
2454: END IF;
2455: --
2456: --
2457: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
2458: x_return_status := l_return_status;
2459: END IF;
2460: --
2461: --}
2481: END IF;
2482: IF c_next_seq_exists%ISOPEN THEN
2483: close c_next_seq_exists;
2484: END IF;
2485: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR ;
2486: --
2487: IF l_debug_on THEN
2488: WSH_DEBUG_SV.logmsg(l_module_name,'Unexpected error has occured. Oracle error message is '|| SQLERRM,WSH_DEBUG_SV.C_UNEXPEC_ERR_LEVEL);
2489: END IF;
2533: IF c_next_seq_exists%ISOPEN THEN
2534: close c_next_seq_exists;
2535: END IF;
2536: FND_MESSAGE.SET_NAME('WSH', 'WSH_REPRICE_REQUIRED_ERR');
2537: WSH_UTIL_CORE.add_message(l_return_status);
2538: x_return_status := l_return_status;
2539: --
2540: --
2541: -- K LPN CONV. rv
2559: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
2560: END IF;
2561: --
2562: --
2563: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
2564: x_return_status := l_return_status;
2565: END IF;
2566: --
2567: --}
2589: IF c_next_seq_exists%ISOPEN THEN
2590: close c_next_seq_exists;
2591: END IF;
2592: FND_MESSAGE.SET_NAME('WSH','WSH_INVALID_TRIP');
2593: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2594: wsh_util_core.add_message(x_return_status);
2595: --
2596: -- K LPN CONV. rv
2597: --
2590: close c_next_seq_exists;
2591: END IF;
2592: FND_MESSAGE.SET_NAME('WSH','WSH_INVALID_TRIP');
2593: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2594: wsh_util_core.add_message(x_return_status);
2595: --
2596: -- K LPN CONV. rv
2597: --
2598: IF WSH_WMS_LPN_GRP.G_CALLBACK_REQUIRED = 'Y'
2614: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
2615: END IF;
2616: --
2617: --
2618: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
2619: x_return_status := l_return_status;
2620: END IF;
2621: --
2622: --}
2645: IF c_next_seq_exists%ISOPEN THEN
2646: close c_next_seq_exists;
2647: END IF;
2648: FND_MESSAGE.SET_NAME('WSH','WSH_STOP_NOT_FOUND');
2649: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2650: wsh_util_core.add_message(x_return_status);
2651: --
2652: --
2653: -- K LPN CONV. rv
2646: close c_next_seq_exists;
2647: END IF;
2648: FND_MESSAGE.SET_NAME('WSH','WSH_STOP_NOT_FOUND');
2649: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2650: wsh_util_core.add_message(x_return_status);
2651: --
2652: --
2653: -- K LPN CONV. rv
2654: --
2671: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
2672: END IF;
2673: --
2674: --
2675: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
2676: x_return_status := l_return_status;
2677: END IF;
2678: --
2679: --}
2700: END IF;
2701: IF c_next_seq_exists%ISOPEN THEN
2702: close c_next_seq_exists;
2703: END IF;
2704: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2705: FND_MESSAGE.Set_Name('WSH', 'WSH_RATE_TRIP_CONTENTS_FAIL');
2706: WSH_UTIL_CORE.Add_Message(x_return_status);
2707: --
2708: -- K LPN CONV. rv
2702: close c_next_seq_exists;
2703: END IF;
2704: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2705: FND_MESSAGE.Set_Name('WSH', 'WSH_RATE_TRIP_CONTENTS_FAIL');
2706: WSH_UTIL_CORE.Add_Message(x_return_status);
2707: --
2708: -- K LPN CONV. rv
2709: --
2710: IF WSH_WMS_LPN_GRP.G_CALLBACK_REQUIRED = 'Y'
2726: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
2727: END IF;
2728: --
2729: --
2730: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
2731: x_return_status := l_return_status;
2732: END IF;
2733: --
2734: --}
2752: ELSIF stop_exists%ISOPEN THEN
2753: close stop_exists;
2754: END IF;
2755:
2756: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2757:
2758: FND_MESSAGE.Set_Name('WSH', 'WSH_NO_LOCK');
2759: wsh_util_core.add_message(WSH_UTIL_CORE.G_RET_STS_ERROR, l_module_name);
2760: IF l_debug_on THEN
2755:
2756: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
2757:
2758: FND_MESSAGE.Set_Name('WSH', 'WSH_NO_LOCK');
2759: wsh_util_core.add_message(WSH_UTIL_CORE.G_RET_STS_ERROR, l_module_name);
2760: IF l_debug_on THEN
2761: WSH_DEBUG_SV.logmsg(l_module_name,'e_lock_error' ,WSH_DEBUG_SV.C_PROC_LEVEL);
2762: END IF;
2763: --
2812: END IF;
2813: IF c_next_seq_exists%ISOPEN THEN
2814: close c_next_seq_exists;
2815: END IF;
2816: wsh_util_core.default_handler('WSH_DELIVERY_LEGS_ACTIONS.ASSIGN_DELIVERIES');
2817: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR;
2818:
2819: IF l_debug_on THEN
2820: WSH_DEBUG_SV.logmsg(l_module_name,'Unexpected error has occured. Oracle error message is '|| SQLERRM,WSH_DEBUG_SV.C_UNEXPEC_ERR_LEVEL);
2813: IF c_next_seq_exists%ISOPEN THEN
2814: close c_next_seq_exists;
2815: END IF;
2816: wsh_util_core.default_handler('WSH_DELIVERY_LEGS_ACTIONS.ASSIGN_DELIVERIES');
2817: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR;
2818:
2819: IF l_debug_on THEN
2820: WSH_DEBUG_SV.logmsg(l_module_name,'Unexpected error has occured. Oracle error message is '|| SQLERRM,WSH_DEBUG_SV.C_UNEXPEC_ERR_LEVEL);
2821: END IF;
2857: END Assign_Deliveries;
2858:
2859:
2860: PROCEDURE Unassign_Deliveries
2861: (p_del_rows IN wsh_util_core.id_tab_type,
2862: p_trip_id IN NUMBER := NULL,
2863: p_pickup_stop_id IN NUMBER := NULL,
2864: p_dropoff_stop_id IN NUMBER := NULL,
2865: x_return_status OUT NOCOPY VARCHAR2
2999: END IF;
3000:
3001: FOR i IN 1..p_del_rows.count LOOP
3002:
3003: l_return_status := WSH_UTIL_CORE.G_RET_STS_SUCCESS;
3004: l_del_leg_id := NULL;
3005:
3006: -- bug 6700792: OTM Dock Door App Sched Proj
3007: -- l_del_for_update_load_seq will verrify whether the delivery was assigned to a planned trip from OTM.
3038:
3039: -- Check if the delivery is in a valid status.
3040: IF l_del_status IN ( 'CA') THEN
3041: FND_MESSAGE.SET_NAME('WSH','WSH_DEL_UNASSIGN_ERROR');
3042: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3043: wsh_util_core.add_message(l_return_status);
3044: END IF;
3045: --
3046:
3039: -- Check if the delivery is in a valid status.
3040: IF l_del_status IN ( 'CA') THEN
3041: FND_MESSAGE.SET_NAME('WSH','WSH_DEL_UNASSIGN_ERROR');
3042: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3043: wsh_util_core.add_message(l_return_status);
3044: END IF;
3045: --
3046:
3047: IF l_del_status = 'CL'
3046:
3047: IF l_del_status = 'CL'
3048: THEN
3049: FND_MESSAGE.SET_NAME('WSH','WSH_DEL_UNASSIGN_ERROR');
3050: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3051: wsh_util_core.add_message(l_return_status);
3052: END IF;
3053: --
3054:
3047: IF l_del_status = 'CL'
3048: THEN
3049: FND_MESSAGE.SET_NAME('WSH','WSH_DEL_UNASSIGN_ERROR');
3050: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3051: wsh_util_core.add_message(l_return_status);
3052: END IF;
3053: --
3054:
3055: l_stop_pu_location_id := NULL;
3061: CLOSE del_pickup_exists;
3062:
3063: IF (l_del_leg_id IS NULL) THEN
3064: FND_MESSAGE.SET_NAME('WSH','WSH_STOP_NOT_FOUND');
3065: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3066: wsh_util_core.add_message(l_return_status);
3067: END IF;
3068:
3069: ELSIF (p_dropoff_stop_id IS NOT NULL) THEN
3062:
3063: IF (l_del_leg_id IS NULL) THEN
3064: FND_MESSAGE.SET_NAME('WSH','WSH_STOP_NOT_FOUND');
3065: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3066: wsh_util_core.add_message(l_return_status);
3067: END IF;
3068:
3069: ELSIF (p_dropoff_stop_id IS NOT NULL) THEN
3070:
3073: CLOSE del_dropoff_exists;
3074:
3075: IF (l_del_leg_id IS NULL) THEN
3076: FND_MESSAGE.SET_NAME('WSH','WSH_STOP_NOT_FOUND');
3077: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3078: wsh_util_core.add_message(l_return_status);
3079: END IF;
3080:
3081: ELSIF (p_trip_id IS NOT NULL) THEN
3074:
3075: IF (l_del_leg_id IS NULL) THEN
3076: FND_MESSAGE.SET_NAME('WSH','WSH_STOP_NOT_FOUND');
3077: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3078: wsh_util_core.add_message(l_return_status);
3079: END IF;
3080:
3081: ELSIF (p_trip_id IS NOT NULL) THEN
3082: OPEN del_trip_exists(p_del_rows(i));
3084: CLOSE del_trip_exists;
3085:
3086: IF (l_del_leg_id IS NULL) THEN
3087: FND_MESSAGE.SET_NAME('WSH','WSH_TRIP_NOT_FOUND');
3088: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3089: wsh_util_core.add_message(l_return_status);
3090: END IF;
3091:
3092: END IF;
3085:
3086: IF (l_del_leg_id IS NULL) THEN
3087: FND_MESSAGE.SET_NAME('WSH','WSH_TRIP_NOT_FOUND');
3088: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3089: wsh_util_core.add_message(l_return_status);
3090: END IF;
3091:
3092: END IF;
3093:
3091:
3092: END IF;
3093:
3094: -- Bug 3584924
3095: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
3096: IF NOT g_wms_installed.exists(l_org_id) THEN
3097: g_wms_installed(l_org_id) := wsh_util_validate.check_wms_org(l_org_id);
3098: END IF;
3099:
3130: p_dlvy_trip_tbl => l_dlvy_trip_tbl,
3131: x_return_status => l_return_status,
3132: x_msg_count => l_msg_count,
3133: x_msg_data => l_msg_data);
3134: IF l_dlvy_trip_tbl(1).r_message_type IN (WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR, WSH_UTIL_CORE.G_RET_STS_ERROR)
3135: OR l_return_status IN (WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR, WSH_UTIL_CORE.G_RET_STS_ERROR ) THEN
3136: FND_MESSAGE.SET_NAME(l_dlvy_trip_tbl(1).r_message_appl,l_dlvy_trip_tbl(1).r_message_code);
3137: IF l_dlvy_trip_tbl(1).r_message_token IS NOT NULL THEN
3138: FND_MESSAGE.SET_TOKEN(l_dlvy_trip_tbl(1).r_message_token_name, l_dlvy_trip_tbl(1).r_message_token);
3131: x_return_status => l_return_status,
3132: x_msg_count => l_msg_count,
3133: x_msg_data => l_msg_data);
3134: IF l_dlvy_trip_tbl(1).r_message_type IN (WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR, WSH_UTIL_CORE.G_RET_STS_ERROR)
3135: OR l_return_status IN (WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR, WSH_UTIL_CORE.G_RET_STS_ERROR ) THEN
3136: FND_MESSAGE.SET_NAME(l_dlvy_trip_tbl(1).r_message_appl,l_dlvy_trip_tbl(1).r_message_code);
3137: IF l_dlvy_trip_tbl(1).r_message_token IS NOT NULL THEN
3138: FND_MESSAGE.SET_TOKEN(l_dlvy_trip_tbl(1).r_message_token_name, l_dlvy_trip_tbl(1).r_message_token);
3139: END IF;
3136: FND_MESSAGE.SET_NAME(l_dlvy_trip_tbl(1).r_message_appl,l_dlvy_trip_tbl(1).r_message_code);
3137: IF l_dlvy_trip_tbl(1).r_message_token IS NOT NULL THEN
3138: FND_MESSAGE.SET_TOKEN(l_dlvy_trip_tbl(1).r_message_token_name, l_dlvy_trip_tbl(1).r_message_token);
3139: END IF;
3140: WSH_UTIL_CORE.ADD_MESSAGE(l_dlvy_trip_tbl(1).r_message_type);
3141: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3142: l_num_error := l_num_error + 1;
3143: END IF;
3144: END IF;
3137: IF l_dlvy_trip_tbl(1).r_message_token IS NOT NULL THEN
3138: FND_MESSAGE.SET_TOKEN(l_dlvy_trip_tbl(1).r_message_token_name, l_dlvy_trip_tbl(1).r_message_token);
3139: END IF;
3140: WSH_UTIL_CORE.ADD_MESSAGE(l_dlvy_trip_tbl(1).r_message_type);
3141: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3142: l_num_error := l_num_error + 1;
3143: END IF;
3144: END IF;
3145:
3145:
3146: END IF;
3147: END IF;
3148: -- J: W/V Changes
3149: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
3150:
3151: IF l_debug_on THEN
3152: WSH_DEBUG_SV.logmsg(l_module_name,'Calling program unit WSH_WV_UTILS.Del_WV_Post_Process',WSH_DEBUG_SV.C_PROC_LEVEL);
3153: END IF;
3160: p_leg_id => l_del_leg_id,
3161: x_return_status => l_return_status);
3162: END IF;
3163:
3164: IF (l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
3165: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING) THEN
3166: l_num_warning := l_num_warning + 1;
3167: ELSE
3168: l_num_error := l_num_error + 1;
3161: x_return_status => l_return_status);
3162: END IF;
3163:
3164: IF (l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
3165: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING) THEN
3166: l_num_warning := l_num_warning + 1;
3167: ELSE
3168: l_num_error := l_num_error + 1;
3169: END IF;
3169: END IF;
3170: END IF;
3171:
3172:
3173: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
3174:
3175: --
3176: -- Debug Statements
3177: --
3183: l_del_leg_id, l_return_status);
3184:
3185: END IF;
3186:
3187: IF (l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
3188: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING) THEN
3189: l_num_warning := l_num_warning + 1;
3190: ELSE
3191: l_num_error := l_num_error + 1;
3184:
3185: END IF;
3186:
3187: IF (l_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
3188: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING) THEN
3189: l_num_warning := l_num_warning + 1;
3190: ELSE
3191: l_num_error := l_num_error + 1;
3192: END IF;
3205: WHERE wda.delivery_id = c_delivery_id
3206: AND wda.delivery_detail_id = wdd.delivery_detail_id
3207: FOR UPDATE OF wdd.load_seq_number NOWAIT;
3208:
3209: l_del_det_tab WSH_UTIL_CORE.ID_TAB_TYPE;
3210:
3211: BEGIN
3212:
3213: l_del_det_tab.DELETE;
3239: CLOSE c_lock_delivery_details;
3240:
3241: EXCEPTION
3242: WHEN OTHERS THEN
3243: l_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3244: IF c_lock_delivery_details%ISOPEN then
3245: CLOSE c_lock_delivery_details;
3246: END IF;
3247: IF l_debug_on THEN
3255:
3256: END LOOP;
3257:
3258: -- bug 3875780
3259: IF WSH_UTIL_CORE.FTE_IS_INSTALLED = 'Y' THEN
3260: l_trip_empty := FALSE;
3261: OPEN c_trip_empty ;
3262: FETCH c_trip_empty into l_cnt;
3263: CLOSE c_trip_empty;
3275: p_volume => null,
3276: p_fill_percent => null,
3277: x_return_status => l_return_status);
3278:
3279: IF l_return_status in (WSH_UTIL_CORE.G_RET_STS_ERROR, WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
3280: x_return_status := l_return_status;
3281: --RETURN;
3282: raise e_return_excp; -- LPN CONV. rv
3283: ELSIF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
3279: IF l_return_status in (WSH_UTIL_CORE.G_RET_STS_ERROR, WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
3280: x_return_status := l_return_status;
3281: --RETURN;
3282: raise e_return_excp; -- LPN CONV. rv
3283: ELSIF l_return_status = WSH_UTIL_CORE.G_RET_STS_WARNING THEN
3284: -- we need to return warning if FTE gives warning here.
3285: l_num_warning := l_num_warning + 1;
3286: END IF;
3287: END LOOP;
3310: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
3311: END IF;
3312: --
3313: --
3314: WSH_UTIL_CORE.API_POST_CALL
3315: (
3316: p_return_status => l_return_status,
3317: x_num_warnings => l_num_warning,
3318: x_num_errors => l_num_error,
3324: -- K LPN CONV. rv
3325: --
3326:
3327: IF (l_num_error >= p_del_rows.count) THEN
3328: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3329: ELSIF (l_num_warning > 0 OR l_num_error >0)THEN
3330: x_return_status := WSH_UTIL_CORE.G_RET_STS_WARNING;
3331: ELSE
3332: x_return_status := WSH_UTIL_CORE.G_RET_STS_SUCCESS;
3326:
3327: IF (l_num_error >= p_del_rows.count) THEN
3328: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3329: ELSIF (l_num_warning > 0 OR l_num_error >0)THEN
3330: x_return_status := WSH_UTIL_CORE.G_RET_STS_WARNING;
3331: ELSE
3332: x_return_status := WSH_UTIL_CORE.G_RET_STS_SUCCESS;
3333: END IF;
3334:
3328: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3329: ELSIF (l_num_warning > 0 OR l_num_error >0)THEN
3330: x_return_status := WSH_UTIL_CORE.G_RET_STS_WARNING;
3331: ELSE
3332: x_return_status := WSH_UTIL_CORE.G_RET_STS_SUCCESS;
3333: END IF;
3334:
3335: --
3336: -- Debug Statements
3364: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
3365: END IF;
3366: --
3367: --
3368: IF (l_return_status IN (WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR,WSH_UTIL_CORE.G_RET_STS_ERROR) and x_return_status <> WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
3369: x_return_status := l_return_status;
3370: END IF;
3371: --
3372: --}
3380: END IF;
3381: --
3382: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3383:
3384: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR ;
3385: IF l_debug_on THEN
3386: WSH_DEBUG_SV.logmsg(l_module_name,'Unexpected error has occured. Oracle error message is '|| SQLERRM,WSH_DEBUG_SV.C_UNEXPEC_ERR_LEVEL);
3387: END IF;
3388: --
3426: IF c_is_first_leg%isopen THEN
3427: close c_is_first_leg;
3428: END IF;
3429: FND_MESSAGE.SET_NAME('FND','FORM_UNABLE_TO_RESERVE_RECORD');
3430: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3431: wsh_util_core.add_message(x_return_status);
3432: --
3433: -- K LPN CONV. rv
3434: --
3427: close c_is_first_leg;
3428: END IF;
3429: FND_MESSAGE.SET_NAME('FND','FORM_UNABLE_TO_RESERVE_RECORD');
3430: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3431: wsh_util_core.add_message(x_return_status);
3432: --
3433: -- K LPN CONV. rv
3434: --
3435: IF WSH_WMS_LPN_GRP.G_CALLBACK_REQUIRED = 'Y'
3451: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
3452: END IF;
3453: --
3454: --
3455: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
3456: x_return_status := l_return_status;
3457: END IF;
3458: --
3459: --}
3473: IF c_is_first_leg%isopen THEN
3474: close c_is_first_leg;
3475: END IF;
3476: FND_MESSAGE.SET_NAME('WSH','WSH_DEL_UNASSIGN_ERROR');
3477: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3478: wsh_util_core.add_message(x_return_status);
3479: --
3480: -- K LPN CONV. rv
3481: --
3474: close c_is_first_leg;
3475: END IF;
3476: FND_MESSAGE.SET_NAME('WSH','WSH_DEL_UNASSIGN_ERROR');
3477: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3478: wsh_util_core.add_message(x_return_status);
3479: --
3480: -- K LPN CONV. rv
3481: --
3482: IF WSH_WMS_LPN_GRP.G_CALLBACK_REQUIRED = 'Y'
3498: WSH_DEBUG_SV.log(l_module_name,'Return status after calling WSH_LPN_SYNC_COMM_PKG.SYNC_LPNS_TO_WMS',l_return_status);
3499: END IF;
3500: --
3501: --
3502: IF (l_return_status = WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
3503: x_return_status := l_return_status;
3504: END IF;
3505: --
3506: --}
3519: WHEN others THEN
3520: iF c_is_first_leg%isopen THEN
3521: close c_is_first_leg;
3522: END IF;
3523: wsh_util_core.default_handler('WSH_DELIVERY_LEGS_ACTIONS.UNASSIGN_DELIVERIES');
3524: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR;
3525: IF l_debug_on THEN
3526: WSH_DEBUG_SV.logmsg(l_module_name,'Unexpected error has occured. Oracle error message is '|| SQLERRM,WSH_DEBUG_SV.C_UNEXPEC_ERR_LEVEL);
3527: END IF;
3520: iF c_is_first_leg%isopen THEN
3521: close c_is_first_leg;
3522: END IF;
3523: wsh_util_core.default_handler('WSH_DELIVERY_LEGS_ACTIONS.UNASSIGN_DELIVERIES');
3524: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR;
3525: IF l_debug_on THEN
3526: WSH_DEBUG_SV.logmsg(l_module_name,'Unexpected error has occured. Oracle error message is '|| SQLERRM,WSH_DEBUG_SV.C_UNEXPEC_ERR_LEVEL);
3527: END IF;
3528: --
3581: --when trip mode is 'TRUCK'
3582:
3583: PROCEDURE Mark_Reprice_Required(
3584: p_entity_type IN VARCHAR2,
3585: p_entity_ids IN WSH_UTIL_CORE.id_tab_type,
3586: p_consolidation_change IN VARCHAR2 DEFAULT 'N',
3587: x_return_status OUT NOCOPY VARCHAR2) IS
3588:
3589: cursor get_trip_from_det( c_delivery_detail_id NUMBER) is
3675: WHERE trip_id = c_trip_id;
3676:
3677: l_lock_delivery_leg_rec c_lock_delivery_leg%ROWTYPE;
3678:
3679: l_del_leg_tab WSH_UTIL_CORE.Id_Tab_Type;
3680:
3681: l_final_leg_tab WSH_UTIL_CORE.Id_Tab_Type;
3682: l_parent_leg_tab WSH_UTIL_CORE.Id_Tab_Type;
3683:
3677: l_lock_delivery_leg_rec c_lock_delivery_leg%ROWTYPE;
3678:
3679: l_del_leg_tab WSH_UTIL_CORE.Id_Tab_Type;
3680:
3681: l_final_leg_tab WSH_UTIL_CORE.Id_Tab_Type;
3682: l_parent_leg_tab WSH_UTIL_CORE.Id_Tab_Type;
3683:
3684: j NUMBER := 0;
3685: k NUMBER := 0;
3678:
3679: l_del_leg_tab WSH_UTIL_CORE.Id_Tab_Type;
3680:
3681: l_final_leg_tab WSH_UTIL_CORE.Id_Tab_Type;
3682: l_parent_leg_tab WSH_UTIL_CORE.Id_Tab_Type;
3683:
3684: j NUMBER := 0;
3685: k NUMBER := 0;
3686:
3725: WSH_DEBUG_SV.log(l_module_name,'P_ENTITY_TYPE',P_ENTITY_TYPE);
3726: WSH_DEBUG_SV.log(l_module_name,'P_CONSOLIDATION_CHANGE',P_CONSOLIDATION_CHANGE);
3727: END IF;
3728: --
3729: x_return_status := WSH_UTIL_CORE.G_RET_STS_SUCCESS;
3730:
3731: --bug 3413328 - consolidation_allowed flag has been removed now from UI
3732: --removed checking for consolidation_allowed
3733:
3730:
3731: --bug 3413328 - consolidation_allowed flag has been removed now from UI
3732: --removed checking for consolidation_allowed
3733:
3734: IF WSH_UTIL_CORE.FTE_Is_Installed = 'Y' AND p_entity_ids.count > 0 THEN
3735: l_del_leg_tab.delete;
3736: l_final_leg_tab.delete;
3737:
3738: IF p_entity_type = 'DELIVERY_DETAIL' THEN
3946: WHEN OTHERS THEN
3947: IF c_lock_delivery_leg%ISOPEN THEN
3948: CLOSE c_lock_delivery_leg;
3949: END IF;
3950: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3951: FND_MESSAGE.Set_Name('WSH', 'WSH_DEL_LEG_LOCKED');
3952: WSH_UTIL_CORE.Add_Message(x_return_status);
3953: IF l_debug_on THEN
3954: WSH_DEBUG_SV.logmsg(l_module_name,'DELIVERY_LEG_LOCKED exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
3948: CLOSE c_lock_delivery_leg;
3949: END IF;
3950: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3951: FND_MESSAGE.Set_Name('WSH', 'WSH_DEL_LEG_LOCKED');
3952: WSH_UTIL_CORE.Add_Message(x_return_status);
3953: IF l_debug_on THEN
3954: WSH_DEBUG_SV.logmsg(l_module_name,'DELIVERY_LEG_LOCKED exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
3955: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:DELIVERY_LEG_LOCKED');
3956: END IF;
3977: --
3978: EXCEPTION
3979:
3980: WHEN invalid_parameter THEN
3981: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3982: FND_MESSAGE.Set_Name('WSH', 'WSH_PUB_INVALID_PARAMETER');
3983: FND_MESSAGE.Set_Token('PARAMETER', 'P_ENTITY_TYPE');
3984: WSH_UTIL_CORE.Add_Message(x_return_status);
3985:
3980: WHEN invalid_parameter THEN
3981: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3982: FND_MESSAGE.Set_Name('WSH', 'WSH_PUB_INVALID_PARAMETER');
3983: FND_MESSAGE.Set_Token('PARAMETER', 'P_ENTITY_TYPE');
3984: WSH_UTIL_CORE.Add_Message(x_return_status);
3985:
3986: --
3987: -- Debug Statements
3988: --
3992: END IF;
3993: --
3994: WHEN delivery_leg_locked THEN
3995: CLOSE c_lock_delivery_leg;
3996: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3997: FND_MESSAGE.Set_Name('WSH', 'WSH_DEL_LEG_LOCKED');
3998: WSH_UTIL_CORE.Add_Message(x_return_status);
3999:
4000: --
3994: WHEN delivery_leg_locked THEN
3995: CLOSE c_lock_delivery_leg;
3996: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
3997: FND_MESSAGE.Set_Name('WSH', 'WSH_DEL_LEG_LOCKED');
3998: WSH_UTIL_CORE.Add_Message(x_return_status);
3999:
4000: --
4001: -- Debug Statements
4002: --
4005: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:DELIVERY_LEG_LOCKED');
4006: END IF;
4007: --
4008: WHEN others THEN
4009: wsh_util_core.default_handler('WSH_DELIVERY_LEGS_ACTIONS.Mark_Reprice_Required');
4010: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR;
4011:
4012: --
4013: -- Debug Statements
4006: END IF;
4007: --
4008: WHEN others THEN
4009: wsh_util_core.default_handler('WSH_DELIVERY_LEGS_ACTIONS.Mark_Reprice_Required');
4010: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR;
4011:
4012: --
4013: -- Debug Statements
4014: --
4049:
4050:
4051: BEGIN
4052:
4053: x_return_status := WSH_UTIL_CORE.G_RET_STS_SUCCESS;
4054: --
4055: l_debug_on := WSH_DEBUG_INTERFACE.g_debug;
4056: --
4057: IF l_debug_on IS NULL
4068: WSH_SHIPPING_PARAMS_PVT.Get_Global_Parameters(
4069: x_param_info => l_global_params,
4070: x_return_status => x_return_status);
4071:
4072: IF x_return_status IN (WSH_UTIL_CORE.G_RET_STS_ERROR, WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
4073:
4074: RAISE invalid_global_params;
4075:
4076: END IF;
4144:
4145: EXCEPTION
4146:
4147: WHEN invalid_delivery THEN
4148: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
4149: FND_MESSAGE.Set_Name('WSH', 'WSH_INVALID_DELIVERY');
4150: WSH_UTIL_CORE.Add_Message(x_return_status);
4151: IF l_debug_on THEN
4152: WSH_DEBUG_SV.logmsg(l_module_name,'INVALID_DELIVERY exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
4146:
4147: WHEN invalid_delivery THEN
4148: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
4149: FND_MESSAGE.Set_Name('WSH', 'WSH_INVALID_DELIVERY');
4150: WSH_UTIL_CORE.Add_Message(x_return_status);
4151: IF l_debug_on THEN
4152: WSH_DEBUG_SV.logmsg(l_module_name,'INVALID_DELIVERY exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
4153: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:INVALID_DELIVERY');
4154: END IF;
4153: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:INVALID_DELIVERY');
4154: END IF;
4155:
4156: WHEN invalid_global_params THEN
4157: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
4158: FND_MESSAGE.Set_Name('WSH', 'WSH_INVALID_GLOBAL_PARAMETER');
4159: WSH_UTIL_CORE.Add_Message(x_return_status);
4160: IF l_debug_on THEN
4161: WSH_DEBUG_SV.logmsg(l_module_name,'INVALID_PARAMETER exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
4155:
4156: WHEN invalid_global_params THEN
4157: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
4158: FND_MESSAGE.Set_Name('WSH', 'WSH_INVALID_GLOBAL_PARAMETER');
4159: WSH_UTIL_CORE.Add_Message(x_return_status);
4160: IF l_debug_on THEN
4161: WSH_DEBUG_SV.logmsg(l_module_name,'INVALID_PARAMETER exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
4162: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:INVALID_PARAMETER');
4163: END IF;
4162: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:INVALID_PARAMETER');
4163: END IF;
4164:
4165: WHEN others THEN
4166: wsh_util_core.default_handler('WSH_TRIP_VALIDATIONS.Check_Rate_Content_Dels');
4167: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR;
4168: IF l_debug_on THEN
4169: WSH_DEBUG_SV.logmsg(l_module_name,'Unexpected error has occured. Oracle error message is '|| SQLERRM,WSH_DEBUG_SV.C_UNEXPEC_ERR_LEVEL);
4170: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:OTHERS');
4163: END IF;
4164:
4165: WHEN others THEN
4166: wsh_util_core.default_handler('WSH_TRIP_VALIDATIONS.Check_Rate_Content_Dels');
4167: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR;
4168: IF l_debug_on THEN
4169: WSH_DEBUG_SV.logmsg(l_module_name,'Unexpected error has occured. Oracle error message is '|| SQLERRM,WSH_DEBUG_SV.C_UNEXPEC_ERR_LEVEL);
4170: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:OTHERS');
4171: END IF;
4264: invalid_trip EXCEPTION;
4265:
4266: BEGIN
4267:
4268: x_return_status := WSH_UTIL_CORE.G_RET_STS_SUCCESS;
4269: --
4270: l_debug_on := WSH_DEBUG_INTERFACE.g_debug;
4271: --
4272: IF l_debug_on IS NULL
4290: WSH_SHIPPING_PARAMS_PVT.Get_Global_Parameters(
4291: x_param_info => l_global_params,
4292: x_return_status => x_return_status);
4293:
4294: IF x_return_status in (WSH_UTIL_CORE.G_RET_STS_ERROR, WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR) THEN
4295: RAISE invalid_global_params;
4296: END IF;
4297:
4298: OPEN C_TRIP_DEL_RATE(p_trip_id,
4339:
4340: EXCEPTION
4341:
4342: WHEN invalid_trip THEN
4343: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
4344: FND_MESSAGE.Set_Name('WSH', 'WSH_INVALID_TRIP');
4345: WSH_UTIL_CORE.Add_Message(x_return_status);
4346: IF l_debug_on THEN
4347: WSH_DEBUG_SV.logmsg(l_module_name,'INVALID_DELIVERY exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
4341:
4342: WHEN invalid_trip THEN
4343: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
4344: FND_MESSAGE.Set_Name('WSH', 'WSH_INVALID_TRIP');
4345: WSH_UTIL_CORE.Add_Message(x_return_status);
4346: IF l_debug_on THEN
4347: WSH_DEBUG_SV.logmsg(l_module_name,'INVALID_DELIVERY exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
4348: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:INVALID_DELIVERY');
4349: END IF;
4348: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:INVALID_DELIVERY');
4349: END IF;
4350:
4351: WHEN invalid_global_params THEN
4352: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
4353: FND_MESSAGE.Set_Name('WSH', 'WSH_INVALID_GLOBAL_PARAMETER');
4354: WSH_UTIL_CORE.Add_Message(x_return_status);
4355: IF l_debug_on THEN
4356: WSH_DEBUG_SV.logmsg(l_module_name,'INVALID_PARAMETER exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
4350:
4351: WHEN invalid_global_params THEN
4352: x_return_status := WSH_UTIL_CORE.G_RET_STS_ERROR;
4353: FND_MESSAGE.Set_Name('WSH', 'WSH_INVALID_GLOBAL_PARAMETER');
4354: WSH_UTIL_CORE.Add_Message(x_return_status);
4355: IF l_debug_on THEN
4356: WSH_DEBUG_SV.logmsg(l_module_name,'INVALID_PARAMETER exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
4357: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:INVALID_PARAMETER');
4358: END IF;
4363: END IF;
4364: IF c_trip_del_rate%isopen THEN
4365: close c_trip_del_rate;
4366: END IF;
4367: wsh_util_core.default_handler('Check_Rate_Content_Dels');
4368: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR;
4369: IF l_debug_on THEN
4370: WSH_DEBUG_SV.logmsg(l_module_name,'Unexpected error has occured. Oracle error message is '|| SQLERRM,WSH_DEBUG_SV.C_UNEXPEC_ERR_LEVEL);
4371: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:OTHERS');
4364: IF c_trip_del_rate%isopen THEN
4365: close c_trip_del_rate;
4366: END IF;
4367: wsh_util_core.default_handler('Check_Rate_Content_Dels');
4368: x_return_status := WSH_UTIL_CORE.G_RET_STS_UNEXP_ERROR;
4369: IF l_debug_on THEN
4370: WSH_DEBUG_SV.logmsg(l_module_name,'Unexpected error has occured. Oracle error message is '|| SQLERRM,WSH_DEBUG_SV.C_UNEXPEC_ERR_LEVEL);
4371: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:OTHERS');
4372: END IF;