У нас есть требование передать другой адрес, кроме адреса доставки, для расчета внешнего налога для расчета налога. Я сохраняю адрес в простой пользовательской таблице, и он выбирается в заказе клиента, и он копируется в счет-фактуру для расчета налога.
GetAddress переопределяется для передачи пользовательского адреса в Avalar и это работало нормально в Acumatica 2018, но то же самое не работает в Acumatica 2019.
В 2019 году я попытался переопределить функцию GetAddress для
public class SOOrderEntryExternalTax_Extension : PXGraphExtension<SOOrderEntryExternalTax, SOOrderEntry>
{
#region Event Handlers
[PXOverride]
public IAddressBase GetToAddress(SOOrder order, Func<SOOrder, IAddressBase> methodBase)
{
var shipAddress = methodBase(order);
if (shipAddress != null)
{
CYBProjectDataNameSpace.CYB_PROJECTS CYBProject = PXSelectorAttribute.Select<SOOrderExt.usrProjectId>(Base.Document.Cache, order) as CYBProjectDataNameSpace.CYB_PROJECTS;
//shipAddress.AddressLine1 = CYBProject.Cyb_address;
shipAddress.AddressLine2 = "";
shipAddress.AddressLine3 = "";
shipAddress.City = CYBProject.Cyb_pcity;
shipAddress.State = CYBProject.Cyb_pstate;
shipAddress.PostalCode = CYBProject.Cyb_pzcode;
shipAddress.CountryID = CYBProject.Cyb_pcountry;
}
return shipAddress;
}
#endregion
}
В ARInvoice
[PXOverride]
public IAddressBase GetToAddress(ARInvoice invoice, Func<ARInvoice, IAddressBase> methodBase)
{
var shipAddress = methodBase(invoice);
if (shipAddress != null)
{
CYBProjectDataNameSpace.CYB_PROJECTS CYBProject = PXSelectorAttribute.Select<ARRegisterExt.usrProjectId>(Base.Document.Cache, invoice) as CYBProjectDataNameSpace.CYB_PROJECTS;
if (CYBProject != null)
{
//shipAddress.AddressLine1 = CYBProject.Cyb_address;
shipAddress.AddressLine2 = "";
shipAddress.AddressLine3 = "";
shipAddress.City = CYBProject.Cyb_pcity;
shipAddress.State = CYBProject.Cyb_pstate;
shipAddress.PostalCode = CYBProject.Cyb_pzcode;
shipAddress.CountryID = CYBProject.Cyb_pcountry;
}
}
return shipAddress;
}
#endregion
}
Код настройки не работает.
Как решить проблему?