我正在尝试从 UPS 测试转到生产。他们要求我通过一些测试。其中之一是使用保险价值大于 $999 来生成 HighValueReport。
我不知道这个保险价值的财产,我也没有在谷歌找到答案。
谢谢穆斯塔法
保险价值应该是包裹元素的一部分。
<ShipmentConfirmRequest>
<Shipment>
<Package>
<PackageWeight>
<UnitOfMeasurement>
<Code>LBS</Code>
</UnitOfMeasurement>
<Weight>5.0</Weight>
</PackageWeight>
<PackageServiceOptions>
<InsuredValue>
<CurrencyCode>USD</CurrencyCode>
<MonetaryValue>1000</MonetaryValue>
</InsuredValue>
</PackageServiceOptions>
</Package>
</Shipment>
</ShipmentConfirmRequest>
提交高价值交易后,您将在 . 打印两份控制日志。
刚刚处理了相同的 UPS 生产运输和作废认证任务。您需要创建一个 PackageDeclaredValueType,它是 PackageServiceOptionsType 的子级。这是用于生成“高价值报告”HTML 的 SOAP Web 服务的 C# 代码。
尽管 UPS 文档说此报告将是一个“图像”,但我向 UPS 支持部门确认,此时它是 HTML 文本,在 XML 响应中称为“ControlLogReceipt”。
//-- XML Path: ShipmentRequest/Shipment/Package/PackageServiceOptions/DeclaredValue
PackageServiceOptionsType packServiceOptions = new PackageServiceOptionsType();
PackageDeclaredValueType decType = new PackageDeclaredValueType();
decType.CurrencyCode = "USD";
decType.MonetaryValue = "1199";
//-- Next four lines may not be needed
DeclaredValueType decType2 = new DeclaredValueType();
decType2.Code = "01"; //Defaults to 01 - EVS
decType2.Description = "My generic description";
decType.Type = decType2;
//-- End four lines that may not be needed
packServiceOptions.DeclaredValue = decType;
package.PackageServiceOptions = packServiceOptions;
//...
//-- Submit request
ShipmentResponse shipmentResponse = shpSvc.ProcessShipment(shipmentRequest);
//-- High Value Report aka Declared Value Report aka Control Log
byte[] high_value_bytes = Convert.FromBase64String(shipmentResponse.ShipmentResults.ControlLogReceipt[0].GraphicImage);
string high_value_htmltext = System.Text.Encoding.ASCII.GetString(high_value_bytes);