当我们从代码中确认货件时,我们尝试更改货件的货币,以将运费应用到与客户相对应的货币中。 问题是我们在设置“汇率类型”时遇到问题,因为汇率更改后默认未将其设置为“ SPOT”。
soShipmentEntry.Document.Current.CuryFreightCost += shippingPrice;
soShipmentEntry.Document.Cache.SetValueExt<SOShipment.curyID>(soShipmentEntry.Document.Current, customer.CuryID);
try
{
soShipmentEntry.currencyinfo.Cache.SetValueExt<CurrencyInfo.curyRateTypeID>(soShipmentEntry.currencyinfo.Current, "SPOT");
}
catch (Exception exc)
{
errLogContent += $"(Shipment Nbr.:{soShipmentEntry.Document.Current.ShipmentNbr}) Currency Rate Type ID update failed.{exc.Message}" + Environment.NewLine;
uncompletedFileExists = true;
}
问题在于代码可以正常工作,但是保存操作会引发错误
错误:更新“货币信息”记录引发至少一个错误。请检查错误。