Всем доброго дня. Версия 7.15.

Сделали анонимный сервис по инструкции: https://academy.terrasoft.ru/documents/technic-sdk/7-15/sozdanie-anonimnogo-veb-servisa

Сервис принимает запросы и обрабатывает их, при этом в сервисе предусмотрено изменение колонки в записи (по сути речь идёт об удалённом визировании). id записи является частью ссылки, по которой вызывается сервис.

Общий вид кода примерно такой:

var activityId = entity.GetTypedColumnValue<Guid>(colId.Name);
Entity entityActivity = entitySchema.CreateEntity(SystemUserConnection);
entityActivity.FetchFromDB(activityId);
                
entityActivity.SetColumnValue("WSFromService", true);
// Сохранение измененного объекта в базе данных.
entityActivity.Save(false);

При этом также в системе был создан бизнес-процесс, который запускается по сигналу от изменения колонки WSFromService. Однако процесс запускается (то есть срабатывает сигнал) только, если сервис не-анонимный. При запуске анонимного сервиса сигнал не срабатывает.

Пробовали также обходной вариант - вызов процесса прямо из сервиса. В этом случае процесс вызывается, но уже внутри процесса есть изменение данных (стандартным блочком бизнес-процесса), которое тоже должно генерировать сигнал. И опять в случае запуска процесса из анонимного сервиса сигнал не генерируется.

Как всё-таки вызвать сигнал?

Нравится

1 комментарий
Лучший ответ

Мне кажется самый простой способ в вашем случае запускать БП кодом, на этом форуме множество примеров как это реализовать. Например посмотрите эту ветку форума.

 

Мне кажется самый простой способ в вашем случае запускать БП кодом, на этом форуме множество примеров как это реализовать. Например посмотрите эту ветку форума.

 

Показать все комментарии