Да, действительно, вы можете использовать метод BLC Persist или обработчик событий RowPersisted поставщика DAC для этого.
Экран поставщика в Acumatica позволяет пользователю вставить основную информацию поставщика и позже заполнить детали.,Для правильной синхронизации между двумя системами вам нужно настроить этот экран, чтобы все необходимые поля были заполнены, чтобы они были заполнены при создании поставщика, или вы также можете обрабатывать случай, когда пользователь обновляет поставщика вместо вставки.
Поскольку мы можем предсказать, что вызов веб-службы может занять некоторое время, мы можем заключить его в делегат PXLongOperation.При длительной работе отобразится индикатор ожидания в правом верхнем углу веб-страницы.
public class VendorMaint_Extension : PXGraphExtension<VendorMaint>
{
public virtual void Vendor_RowPersisted(PXCache sender, PXRowPersistedEventArgs e)
{
Vendor vendor = e.Row as Vendor;
if (vendor != null &&
e.Operation == PXDBOperation.Insert &&
e.TranStatus == PXTranStatus.Completed)
{
PXLongOperation.StartOperation(Base, delegate()
{
// Add your webservice call here
});
}
}
}
Из этого ответа: Как вызвать интерфейс веб-службы по ESB-способу Похоже, ESB WebСлужбы настолько же ванильны, сколь и полезны, так что вы можете использовать их с .Net Framework HttpClient Class.Вы хотите написать C # ESB Web Service Client.В Acumatica нет ничего особенного в написании клиента Web-сервиса, поэтому вы можете следовать общим советам в C #.