public ShipmentResponse CallUPSShipmentRequest(string serviceCode, int ShipmentID) { //var dbShipment = ShipmentModule.GetShipmentByID(ShipmentID); var shipmentDetails = ShipmentModule.GetShipmentShipmentDetails(ShipmentID); var shpSvc = new ShipService(); var shipmentRequest = new ShipmentRequest(); AddUpsSecurity(shpSvc); var request = new RequestType(); String[] requestOption = { "1" }; //{ "nonvalidate" }; request.RequestOption = requestOption; shipmentRequest.Request = request; var shipment = new ShipmentType(); shipment.Description = "Ship webservice example"; AddShipper(shipment); AddShipFromAddress(shipment); AddShipToAddress(shipment); AddBillShipperAccount(shipment); //AddPaymentInformation(shipment); var service = new ServiceType(); service.Code = serviceCode; shipment.Service = service; PackageType[] pkgArray; pkgArray = new PackageType[shipmentDetails.Count]; var i = 0; foreach (var box in shipmentDetails) { AddPackage(box.UnitWeight.Value, Convert.ToInt32(box.UnitPrice), box.DimensionH.Value, box.DimensionD.Value, box.DimensionL.Value, PackagingTypeCode, "USD", pkgArray, i); i = i + 1; } shipment.Package = pkgArray; var labelSpec = new LabelSpecificationType(); var labelStockSize = new LabelStockSizeType(); labelStockSize.Height = "3"; labelStockSize.Width = "2"; labelSpec.LabelStockSize = labelStockSize; var labelImageFormat = new LabelImageFormatType(); labelImageFormat.Code = "GIF";//"SPL"; labelSpec.LabelImageFormat = labelImageFormat; shipmentRequest.LabelSpecification = labelSpec; shipmentRequest.Shipment = shipment; var shipmentResponse = shpSvc.ProcessShipment(shipmentRequest); return(shipmentResponse); }
public ShipmentResponse CallUPSShipmentRequest(string serviceCode, int shipmentID, ref string szError) { //var dbShipment = ShipmentModule.GetShipmentByID(ShipmentDetailID); try { var shipmentDetails = ShipmentModule.GetShipmentShipmentDetails(shipmentID); var shpSvc = new ShipService(); var shipmentRequest = new ShipmentRequest(); AddUpsSecurity(shpSvc); var request = new RequestType(); string[] requestOption = { "nonvalidate" }; request.RequestOption = requestOption; shipmentRequest.Request = request; var shipment = new ShipmentType(); shipment.Description = "Ship webservice"; AddShipper(shipment); AddShipFromAddress(shipment); AddShipToAddress(shipment); AddBillShipperAccount(shipment); //AddPaymentInformation(shipment); var service = new ServiceType(); service.Code = serviceCode; shipment.Service = service; PackageType[] pkgArray; pkgArray = new PackageType[shipmentDetails.Count]; var i = 0; foreach (var box in shipmentDetails) { AddPackage( box.BoxNo, box.UnitWeight.Value, (int)box.DeclaredValue, box.DimensionH.Value, box.DimensionD.Value, box.DimensionL.Value, PackagingTypeCode, "USD", pkgArray, i); i = i + 1; } shipment.Package = pkgArray; var labelSpec = new LabelSpecificationType(); var labelStockSize = new LabelStockSizeType(); labelStockSize.Height = "3"; labelStockSize.Width = "2"; labelSpec.LabelStockSize = labelStockSize; var labelImageFormat = new LabelImageFormatType(); labelImageFormat.Code = "GIF"; //"SPL"; labelSpec.LabelImageFormat = labelImageFormat; shipmentRequest.LabelSpecification = labelSpec; shipmentRequest.Shipment = shipment; var shipmentResponse = shpSvc.ProcessShipment(shipmentRequest); return(shipmentResponse); } catch (System.Web.Services.Protocols.SoapException ex) { string message = string.Empty; message = message + Environment.NewLine + "SoapException Message= " + ex.Message; message = message + Environment.NewLine + "SoapException Category:Code:Message= " + ex.Detail.LastChild.InnerText; message = message + Environment.NewLine + "SoapException XML String for all= " + ex.Detail.LastChild.OuterXml; message = message + Environment.NewLine + "SoapException StackTrace= " + ex.StackTrace; szError = string.Format("Error processing API Validate Address call (webservice error): {0} UPS API Error: {1}", ex.Message, ex.Detail.LastChild.InnerText); return(null); } }