internal static PostageRatesRequest ConstructPostageRatesRequest(IPostageRatesRequest request) { PostageRatesRequest result = new PostageRatesRequest() { RequesterID = ToolsClass.GetRequesterID }; CertifiedIntermediary certifiedIntermediary = new CertifiedIntermediary() { AccountID = request.AccountID, PassPhrase = request.PassPhrase }; result.CertifiedIntermediary = certifiedIntermediary; result.MailClass = Parsers.ParseLabelType(request.MailClass); result.DateAdvance = ConfigManager.Current.DefaultDateAdvance; result.Machinable = ConfigManager.Current.DefaultMachinable; SpecialServices specialService = new SpecialServices() { DeliveryConfirmation = ToolsClass.ParseBoolONOFF(request.DeliveryConfirmation), SignatureConfirmation = ToolsClass.ParseBoolONOFF(request.SignatureConfirmation), CertifiedMail = ConfigManager.Current.DefaultCertifiedMail, RestrictedDelivery = ConfigManager.Current.DefaultRestrictedDelivery, ReturnReceipt = ConfigManager.Current.DefaultReturnReceipt, ElectronicReturnReceipt = ConfigManager.Current.DefaultElectornicReturnReceipt, HoldForPickup = ConfigManager.Current.DefaultHoldForPickup, OpenAndDistribute = ConfigManager.Current.DefaultOpenAndDistribute, COD = ConfigManager.Current.DefaultCOD, InsuredMail = Parsers.ParseInsuredMail(request.InsuredMail), AdultSignature = ConfigManager.Current.DefaultAdultSignature, AdultSignatureRestrictedDelivery = ConfigManager.Current.DefaultAdultSignatureRestrictedDelivery }; result.Services = specialService; result.InsuredValue = request.OrderValueForInsurance; result.FromPostalCode = request.FromPostalCode; result.ToPostalCode = request.TargetAddress.PostalCode; result.ToCountry = request.TargetAddress.Country; result.ToCountryCode = request.TargetAddress.CountryCode; result.WeightOz = request.PackageDetails.WeightOz; Dimensions dimension = new Dimensions() { Height = request.PackageDetails.Height, Length = request.PackageDetails.Length, Width = request.PackageDetails.Width }; result.MailpieceDimensions = dimension; return(result); }
public void ParseNode(XmlNode n) { if (n != null) { var classId = n.Attributes["CLASSID"].Value; MailServiceClassId = classId; MailService = Xml.ParseInnerText(n, "MailService"); Rate = Xml.ParseDecimal(n, "Rate"); SpecialServices.Clear(); foreach (XmlNode n2 in n.SelectNodes("SpecialService")) { var svc = new DomesticSpecialService(n2); SpecialServices.Add(svc); } } }
private void BtnGo_Click(object sender, EventArgs e) { try { this.Enabled = false; this.Cursor = Cursors.WaitCursor; this.UseWaitCursor = true; MyDHLAPI api = new MyDHLAPI(Common.CurrentCredentials["Username"] , Common.CurrentCredentials["Password"] , Common.CurrentRestBaseUrl); RateQueryRequest rqr = new RateQueryRequest(); RateRequest rr = new RateRequest { /*** Request Header ***/ Request = new Request() { ServiceHeader = new ServiceHeader() { ShippingSystemPlatform = "MyDHL API Test App", ShippingSystemPlatformVersion = Application.ProductVersion, Plugin = "MyDHL API C# Library", PluginVersion = api.GetVersion() } } }; RequestedShipment rs = new RequestedShipment { DropOffType = (cmbRequestCourier.SelectedIndex == 0 ? Enums.DropOffType.RequestCourier : Enums.DropOffType.RegularPickup) , DeclaredValue = ntxtDeclaredValue.Value , DeclaredValueCurrencyCode = txtDeclaredCurrency.Text.Trim() , NextBusinessDay = Enums.YesNo.Yes , ShipTimestamp = DateTime.Now , UnitOfMeasurement = (cmbUOM.SelectedIndex == 0 ? Enums.UnitOfMeasurement.SI : Enums.UnitOfMeasurement.SU) , PaymentInfo = (Enums.TermsOfTrade)cmbTermsOfTrade.SelectedItem , RequestValueAddedServices = (cbxShowAllServices.Checked ? Enums.YesNo.Yes : Enums.YesNo.No) , Content = (cmbDutiable.SelectedIndex == 0 ? Enums.ShipmentType.Documents : Enums.ShipmentType.NonDocuments) }; MyDHLAPI_REST_Library.Objects.RateQuery.Ship s = new MyDHLAPI_REST_Library.Objects.RateQuery.Ship(); MyDHLAPI_REST_Library.Objects.RateQuery.Address sa = new MyDHLAPI_REST_Library.Objects.RateQuery.Address { City = txtShipperCity.Text.Trim() , PostalCode = txtShipperPostalCode.Text.Trim() , USSateCode = txtShipperUSState.Text.Trim() , CountryCode = txtShipperCountry.Text.Trim() }; s.Shipper = sa; MyDHLAPI_REST_Library.Objects.RateQuery.Address ra = new MyDHLAPI_REST_Library.Objects.RateQuery.Address { City = txtConsigneeCity.Text.Trim() , PostalCode = txtConsigneePostalCode.Text.Trim() , USSateCode = txtConsigneeUSState.Text.Trim() , CountryCode = txtConsigneeCountry.Text.Trim() }; s.Recipient = ra; rs.Ship = s; // 961187381 Billing b = new Billing { ShipperAccountNumber = txtAccountShipper.Text.Trim() , BillingAccountNumber = txtAccountBilling.Text.Trim() , ShippingPaymentType = (rbtnPayShipper.Checked ? Enums.PaymentTypes.Shipper : Enums.PaymentTypes.Receiver) }; rs.Billing = b; Packages p = new Packages(); List <RequestedPackages> rps = new List <RequestedPackages> { new RequestedPackages { PieceNumber = 1 , Weight = new Weight { Value = ntxtWeight.Value } , Dimensions = new Dimensions { Height = ntxtHeight.Value , Width = ntxtWidth.Value , Length = ntxtLength.Value } } }; p.RequestedPackages = rps; rs.Packages = p; if ((Enums.TermsOfTrade)cmbTermsOfTrade.SelectedItem == Enums.TermsOfTrade.DDP) { SpecialServices sss = new SpecialServices { Service = new List <SpecialService>() }; sss.Service.Add(new SpecialService("DD")); rs.SpecialServices = sss; } rs.GetDetailedRateBreakdown = Enums.YesNo.Yes; rr.RequestedShipment = rs; rqr.RateRequest = rr; RateQueryResponse result = null; try { result = api.RateQuery(rqr); } catch (Exception ex) { MessageBox.Show($"{ex.Message}", "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error); _lastJsonRequest = api.LastRateQueryJSONRequest; _lastJsonResponse = api.LastRateQueryJSONResponse; return; } _lastJsonRequest = api.LastRateQueryJSONRequest; _lastJsonResponse = api.LastRateQueryJSONResponse; tvResult.Nodes.Clear(); if (null == result.Services) { if (null != result.RateResponse.Provider) { if (1 == result.RateResponse.Provider.Count) { Provider provider = result.RateResponse.Provider.First(); if (provider.Notification.Any()) { foreach (Notification notificaiton in provider.Notification) { tvResult.Nodes.Add(notificaiton.Code, notificaiton.Message); } } } } else { // We got no results back tvResult.Nodes.Add("NONE", "--NONE--"); } } else { TreeNode servicesOkToShow = new TreeNode("Show on website"); TreeNode servicesNeedingAgreement = new TreeNode("Pre-agreement required"); foreach (Service service in result.Services) { TreeNode tn = new TreeNode($"{service.ProductCode}: {service.TotalNet.Currency} {service.TotalNet.Amount:#,##0.00}"); tn.Nodes.Add($"Transit time: {service.TotalTransitDays} day(s)"); if (null != service.Charges) { foreach (Charge charge in service.Charges.Charge) { TreeNode ctn = null; if (string.IsNullOrEmpty(charge.ChargeCode)) { ctn = new TreeNode($"{charge.ChargeType}"); } else { ctn = new TreeNode($"({charge.ChargeCode}) {charge.ChargeType}"); } if (!string.IsNullOrEmpty(service.Charges.Currency) && null != charge.ChargeAmount) { TreeNode cctn = new TreeNode($"{service.Charges.Currency} {charge.ChargeAmount:#,##0.00}"); ctn.Nodes.Add(cctn); } tn.Nodes.Add(ctn); } } tn.ExpandAll(); if (service.CustomerAgreementInd == Enums.YesNo.No) { servicesOkToShow.Nodes.Add(tn); } else { servicesNeedingAgreement.Nodes.Add(tn); } } servicesOkToShow.ExpandAll(); servicesNeedingAgreement.ExpandAll(); tvResult.Nodes.Add(servicesOkToShow); tvResult.Nodes.Add(servicesNeedingAgreement); } tvResult.Nodes[0].EnsureVisible(); } finally { this.Enabled = true; this.Cursor = Cursors.Default; this.UseWaitCursor = false; } }
public static LabelRequest ConstructLabelRequest(ILabelRequestRequest request) { DateTime shipDateTime; LabelRequest labelRequest = new LabelRequest() { Test = ToolsClass.ParseBoolYESNO(request.PrintSandbox), LabelType = Parsers.ParseLabelType(request.LabelType), LabelSize = Parsers.ParseLabelSize(request.LabelSize, request.LabelType), ImageFormat = ConfigManager.Current.DefaultImageFormat, ImageResolution = "300", ImageRotation = "None", RequesterID = ToolsClass.GetRequesterID, AccountID = request.AccountID, PassPhrase = request.PassPhrase, MailClass = Parsers.ParseMailClass(request.MailClass), DateAdvance = ConfigManager.Current.DefaultDateAdvance, WeightOz = request.PackageDetails.WeightOz }; Dimensions dimension = new Dimensions() { Length = request.PackageDetails.Length, Width = request.PackageDetails.Width, Height = request.PackageDetails.Height }; labelRequest.MailpieceDimensions = dimension; labelRequest.PackageTypeIndicator = ConfigManager.Current.DefaultPackageTypeIndicator; labelRequest.Machinable = ConfigManager.Current.DefaultMachinable; labelRequest.SignatureWaiver = ConfigManager.Current.DefaultSignatureWaiver; labelRequest.NoWeekendDelivery = ConfigManager.Current.DefaultNoWeekendDelivery; labelRequest.SundayHolidayDelivery = ConfigManager.Current.DefaultSundayHolidayDelivery; labelRequest.EntryFacility = ConfigManager.Current.DefaultEntryFacility; labelRequest.POZipCode = request.PoZipCode; bool includePostage = request.IncludePostage; labelRequest.IncludePostage = includePostage.ToString().ToUpper(); labelRequest.ReplyPostage = ConfigManager.Current.DefaultReplayPostage; labelRequest.ShowReturnAddress = ConfigManager.Current.DefaultShowReturnAddress; includePostage = request.ValidateAddress; labelRequest.ValidateAddress = includePostage.ToString().ToUpper(); SpecialServices specialService = new SpecialServices() { DeliveryConfirmation = ToolsClass.ParseBoolONOFF(request.DeliveryConfirmation), SignatureConfirmation = ToolsClass.ParseBoolONOFF(request.SignatureConfirmation), CertifiedMail = ConfigManager.Current.DefaultCertifiedMail, RestrictedDelivery = ConfigManager.Current.DefaultRestrictedDelivery, ReturnReceipt = ConfigManager.Current.DefaultReturnReceipt, ElectronicReturnReceipt = ConfigManager.Current.DefaultElectornicReturnReceipt, HoldForPickup = ConfigManager.Current.DefaultHoldForPickup, OpenAndDistribute = ConfigManager.Current.DefaultOpenAndDistribute, COD = ConfigManager.Current.DefaultCOD, InsuredMail = Parsers.ParseInsuredMail(request.InsuredMail), AdultSignature = ConfigManager.Current.DefaultAdultSignature, AdultSignatureRestrictedDelivery = ConfigManager.Current.DefaultAdultSignatureRestrictedDelivery }; labelRequest.Services = specialService; labelRequest.InsuredValue = request.OrderValueForInsurance; labelRequest.Value = (float)Convert.ToDouble(request.OrderValueForInsurance); labelRequest.CostCenter = 123; labelRequest.PartnerCustomerID = request.AccountID; labelRequest.PartnerTransactionID = request.TransactionId.ToString(); labelRequest.ReferenceID = request.OrderId.ToString(); labelRequest.RubberStamp1 = request.RubberStamp; ResponseOptions responseOption = new ResponseOptions() { PostagePrice = ConfigManager.Current.DefaultResponseOptions }; labelRequest.ResponseOptions = responseOption; labelRequest.FromName = request.SenderDetails.Name; labelRequest.FromCompany = request.SenderDetails.Company; labelRequest.ReturnAddress1 = request.SenderDetails.Address1; labelRequest.ReturnAddress2 = request.SenderDetails.Address2; labelRequest.FromCity = request.SenderDetails.City; labelRequest.FromState = request.SenderDetails.State; labelRequest.FromPostalCode = request.SenderDetails.PostalCode; labelRequest.FromCountry = request.SenderDetails.Country; labelRequest.FromPhone = request.SenderDetails.Phone; labelRequest.FromEMail = request.SenderDetails.Email; labelRequest.ToName = request.TargetAddress.Name; labelRequest.ToCompany = request.TargetAddress.Company; labelRequest.ToAddress1 = request.TargetAddress.Address1; labelRequest.ToAddress2 = request.TargetAddress.Address2; labelRequest.ToCity = request.TargetAddress.City; labelRequest.ToState = request.TargetAddress.State; labelRequest.ToPostalCode = request.TargetAddress.PostalCode; labelRequest.ToCountry = request.TargetAddress.Country; labelRequest.ToCountryCode = request.TargetAddress.CountryCode; labelRequest.ToPhone = request.TargetAddress.Phone; labelRequest.ToEMail = request.TargetAddress.Email; //labelRequest.LabelTemplate = "abc.ly"; LabelRequest result = labelRequest; if (!request.IsInternationalOrder) { result.MailpieceShape = null; result.LabelSubtype = ConfigManager.Current.DefaultDomesticLabelSubType; result.IntegratedFormType = null; } else { result.MailpieceShape = Parsers.ParseMailpieceShape(request.MailPieceShape); result.LabelSubtype = ConfigManager.Current.DefaultInternationalLabelSubType; result.IntegratedFormType = PrintLabelsClass.GetIntegratedFormType(request.IsInternationalOrder, request.MailClass, request.MailPieceShape); } if ((request.PackageDetails.Items == null ? false : request.PackageDetails.Items.Count > 0)) { if (request.IsInternationalOrder) { result.CustomsCertify = ConfigManager.Current.DefaultCustomsCertify; result.CustomsSigner = request.CustomSigner; CustomsInfo customsInfo = new CustomsInfo() { CertificateNumber = request.CustomCertificateNumber, ContentsType = ConfigManager.Current.DefaultMerchandise, RestrictionType = ConfigManager.Current.DefaultRestrictionType, InvoiceNumber = request.InvoiceNumber, NonDeliveryOption = ConfigManager.Current.DefaultNonDeliveryOption }; result.CustomsInfo = customsInfo; List <CustomsItem> items = new List <CustomsItem>(); foreach (IPackageItem item in request.PackageDetails.Items) { CustomsItem cItem = new CustomsItem() { CountryOfOrigin = item.CustomCountry, Description = item.Description, Quantity = item.Quantity, Value = item.Value, Weight = item.WeightOz }; items.Add(cItem); } result.CustomsInfo.CustomsItems = items.ToArray <CustomsItem>(); } } try { shipDateTime = request.ShipDateTime; result.ShipDate = shipDateTime.ToString("MM/dd/yyyy"); } catch { shipDateTime = DateTime.Now; result.ShipDate = shipDateTime.ToString("MM/dd/yyyy"); } try { shipDateTime = request.ShipDateTime; result.ShipTime = shipDateTime.ToString("hh:mm tt"); } catch { shipDateTime = DateTime.Now; result.ShipDate = shipDateTime.ToString("hh:mm tt"); } return(result); }
private void BtnGo_Click(object sender, EventArgs e) { try { this.Enabled = false; this.Cursor = Cursors.WaitCursor; this.UseWaitCursor = true; GloWS glows = new GloWS(Common.username, Common.password, (Common.IsProduction ? Common.restProductionBaseUrl : Common.restTestingBaseUrl)); RateQueryRequest rqr = new RateQueryRequest(); RateRequest rr = new RateRequest(); RequestedShipment rs = new RequestedShipment { DropOffType = (cmbRequestCourier.SelectedIndex == 0 ? Enums.DropOffType.RequestCourier : Enums.DropOffType.RegularPickup) , DeclaredValue = ntxtDeclaredValue.Value , DeclaredValueCurrencyCode = txtDeclaredCurrency.Text.Trim() , NextBusinessDay = Enums.YesNo.Yes , ShipTimestamp = DateTime.Now , UnitOfMeasurement = (cmbUOM.SelectedIndex == 0 ? Enums.UnitOfMeasurement.SI : Enums.UnitOfMeasurement.SU) , PaymentInfo = (Enums.TermsOfTrade)cmbTermsOfTrade.SelectedItem , RequestValueAddedServices = (cbxShowAllServices.Checked ? Enums.YesNo.Yes : Enums.YesNo.No) , Content = (cmbDutiable.SelectedIndex == 0 ? Enums.ShipmentType.Documents : Enums.ShipmentType.NonDocuments) }; GloWS_REST_Library.Objects.RateQuery.Ship s = new GloWS_REST_Library.Objects.RateQuery.Ship(); Address sa = new Address { City = txtShipperCity.Text.Trim() , PostalCode = txtShipperPostalCode.Text.Trim() , USSateCode = txtShipperUSState.Text.Trim() , CountryCode = txtShipperCountry.Text.Trim() }; s.Shipper = sa; Address ra = new Address { City = txtConsigneeCity.Text.Trim() , PostalCode = txtConsigneePostalCode.Text.Trim() , USSateCode = txtConsigneeUSState.Text.Trim() , CountryCode = txtConsigneeCountry.Text.Trim() }; s.Recipient = ra; rs.Ship = s; // 961187381 Billing b = new Billing { ShipperAccountNumber = txtAccountShipper.Text.Trim() , BillingAccountNumber = txtAccountBilling.Text.Trim() , ShippingPaymentType = (rbtnPayShipper.Checked ? Enums.PaymentTypes.Shipper : Enums.PaymentTypes.Receiver) }; rs.Billing = b; Packages p = new Packages(); List <RequestedPackages> rps = new List <RequestedPackages> { new RequestedPackages { PieceNumber = 1 , Weight = new Weight { Value = ntxtWeight.Value } , Dimensions = new Dimensions { Height = ntxtHeight.Value , Width = ntxtWidth.Value , Length = ntxtLength.Value } } }; p.RequestedPackages = rps; rs.Packages = p; if ((Enums.TermsOfTrade)cmbTermsOfTrade.SelectedItem == Enums.TermsOfTrade.DDP) { SpecialServices sss = new SpecialServices { Service = new List <SpecialService>() }; sss.Service.Add(new SpecialService("DD")); rs.SpecialServices = sss; } rr.RequestedShipment = rs; rqr.RateRequest = rr; RateQueryResponse result = glows.RateQuery(rqr); _lastJsonRequest = glows.LastJSONRequest; _lastJsonResponse = glows.LastJSONResponse; tvResult.Nodes.Clear(); if (null == result.Services) { if (null != result.RateResponse.Provider) { if (1 == result.RateResponse.Provider.Count) { Provider provider = result.RateResponse.Provider.First(); if (provider.Notification.Any()) { foreach (Notification notificaiton in provider.Notification) { tvResult.Nodes.Add(notificaiton.Code, notificaiton.Message); } } } } else { // We got no results back tvResult.Nodes.Add("NONE", "--NONE--"); } } else { foreach (Service service in result.Services) { TreeNode tn = new TreeNode($"{service.ProductCode}: {service.TotalNet.Currency} {service.TotalNet.Amount:#,##0.00}"); if (null != service.Charges) { foreach (Charge charge in service.Charges.Charge) { TreeNode ctn = new TreeNode( $"{charge.ChargeType}"); TreeNode cctn = new TreeNode($"{service.Charges.Currency} {charge.ChargeAmount:#,##0.00}"); ctn.Nodes.Add(cctn); tn.Nodes.Add(ctn); } } tn.ExpandAll(); tvResult.Nodes.Add(tn); } } tvResult.Nodes[0].EnsureVisible(); } finally { this.Enabled = true; this.Cursor = Cursors.Default; this.UseWaitCursor = false; } }
internal static PostageRateRequest ConstructPostageRateRequest(IPostageRateRequest request) { DateTime shipDateTime; PostageRateRequest postageRateRequest = new PostageRateRequest() { RequesterID = ToolsClass.GetRequesterID }; CertifiedIntermediary certifiedIntermediary = new CertifiedIntermediary() { AccountID = request.AccountID, PassPhrase = request.PassPhrase }; postageRateRequest.CertifiedIntermediary = certifiedIntermediary; postageRateRequest.DateAdvance = ConfigManager.Current.DefaultDateAdvance; postageRateRequest.Pricing = Parsers.ParsePricing(request.Pricing); postageRateRequest.WeightOz = request.PackageDetails.WeightOz; Dimensions dimension = new Dimensions() { Height = request.PackageDetails.Height, Width = request.PackageDetails.Width, Length = request.PackageDetails.Length }; postageRateRequest.MailpieceDimensions = dimension; postageRateRequest.AutomationRate = ConfigManager.Current.DefaultAutomationRate; postageRateRequest.PackageTypeIndicator = ConfigManager.Current.DefaultPackageTypeIndicator; postageRateRequest.Machinable = ConfigManager.Current.DefaultMachinable; postageRateRequest.ServiceLevel = ConfigManager.Current.DefaultServiceLevel; postageRateRequest.SundayHolidayDelivery = ConfigManager.Current.DefaultSundayHolidayDelivery; SpecialServices specialService = new SpecialServices() { DeliveryConfirmation = ToolsClass.ParseBoolONOFF(request.DeliveryConfirmation), SignatureConfirmation = ToolsClass.ParseBoolONOFF(request.SignatureConfirmation), CertifiedMail = ConfigManager.Current.DefaultCertifiedMail, RestrictedDelivery = ConfigManager.Current.DefaultRestrictedDelivery, ReturnReceipt = ConfigManager.Current.DefaultReturnReceipt, ElectronicReturnReceipt = ConfigManager.Current.DefaultElectornicReturnReceipt, HoldForPickup = ConfigManager.Current.DefaultHoldForPickup, OpenAndDistribute = ConfigManager.Current.DefaultOpenAndDistribute, COD = ConfigManager.Current.DefaultCOD, InsuredMail = Parsers.ParseInsuredMail(request.InsuredMail), AdultSignature = ConfigManager.Current.DefaultAdultSignature, AdultSignatureRestrictedDelivery = ConfigManager.Current.DefaultAdultSignatureRestrictedDelivery }; postageRateRequest.Services = specialService; postageRateRequest.EntryFacility = ConfigManager.Current.DefaultEntryFacility; postageRateRequest.Value = request.OrderValueForInsurance; postageRateRequest.InsuredValue = request.OrderValueForInsurance.ToString(); postageRateRequest.FromPostalCode = request.FromPostalCode; postageRateRequest.ToPostalCode = request.TargetAddress.PostalCode; postageRateRequest.ToCountry = request.TargetAddress.Country; postageRateRequest.ToCountryCode = request.TargetAddress.CountryCode; ResponseOptions responseOption = new ResponseOptions() { PostagePrice = ConfigManager.Current.DefaultResponseOptions }; postageRateRequest.ResponseOptions = responseOption; postageRateRequest.MailClass = Parsers.ParseMailClass(request.MailClass); PostageRateRequest result = postageRateRequest; try { shipDateTime = request.ShipDateTime; result.ShipDate = shipDateTime.ToString("MM/dd/yyyy"); } catch { shipDateTime = DateTime.Now; result.ShipDate = shipDateTime.ToString("MM/dd/yyyy"); } try { shipDateTime = request.ShipDateTime; result.ShipTime = shipDateTime.ToString("hh:mm tt"); } catch { shipDateTime = DateTime.Now; result.ShipDate = shipDateTime.ToString("hh:mm tt"); } return(result); }
public string BuildXml() { string result = string.Empty; StringWriter sw = new StringWriter(System.Globalization.CultureInfo.InvariantCulture); XmlTextWriter xw = new XmlTextWriter(sw); xw.Formatting = Formatting.Indented; xw.Indentation = 2; xw.WriteStartDocument(); //Preamble xw.WriteStartElement("FDXRateRequest"); xw.WriteAttributeString("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance"); xw.WriteAttributeString("xsi:noNamespaceSchemaLocation", "FDXRateRequest.xsd"); RequestHeader.WriteToXml(xw, "RequestHeader"); xw.WriteElementString("ReturnShipmentIndicator", ReturnType.ToString()); xw.WriteElementString("ShipDate", ShipDate.ToString("yyyy-MM-dd")); xw.WriteElementString("DropoffType", this.globals.DefaultDropOffType.ToString()); xw.WriteElementString("Service", Service.ToString()); xw.WriteElementString("Packaging", Packaging.ToString()); xw.WriteElementString("WeightUnits", WeightUnits.ToString()); xw.WriteElementString("Weight", _Weight.ToString("0.0")); xw.WriteElementString("ListRate", globals.UseListRates ? "1" : "0"); OriginAddress.WriteToXml(xw, "OriginAddress"); DestinationAddress.WriteToXml(xw, "DestinationAddress"); xw.WriteStartElement("Payment"); xw.WriteElementString("PayorType", "SENDER"); xw.WriteEndElement(); if (Packaging == PackageType.YOURPACKAGING) { Dimensions.WriteToXml(xw, "Dimensions"); } xw.WriteStartElement("DeclaredValue"); xw.WriteElementString("Value", _DeclaredValue.ToString("0.00")); xw.WriteElementString("CurrencyCode", "USD"); xw.WriteEndElement(); if (ContainsAlcohol) { xw.WriteElementString("Alcohol", "1"); } SpecialServices.WriteToXml(xw, "SpecialServices"); xw.WriteElementString("PackageCount", PackageCount.ToString()); //_RequestContact.WriteToXml(xw, "Contact") //_RequestAddress.WriteToXml(xw, "Address") xw.WriteEndDocument(); xw.Flush(); xw.Close(); result = sw.GetStringBuilder().ToString(); return(result); }