Как создать запись из Web-сервиса, что бы сработал бизнес-процесс?
Здравствуйте.
Сигналом для бизнес процесса являться добавление записи в раздел Продажи.
Каким образом нужно создать запись из web сервиса, что бы сработал этот бизнес - процесс.
Есть класс Insert, но насколько я понял он работает напрямую с БД и не вызовет срабатывание процесса. Значит остается вызов этого процесса из веб сервиса с параметром Id созданной продажи, не подскажите где найти пример вызова БП, у которого начальный сигнал - добавление записи.
Или есть еще какие то способы?
Нравится
Во внешнем интерфейсе ProcessEngine.svc есть публичный метод throwSignal(string signal), который позволяет сгенерировать сигнал, который ожидают те или иные процессы. Это для информации.
А вообще проблемы не будет, если вместо Select использовать EntitySchemaQuery, который триггернет событие добавления/изменения записи. К сожалению, не помню есть ли возможность пользоваться им, но почти уверен что да.
Дмитрий,
может вы перепутали? или не поняли меня.
http://www.terrasoft.ru/bpmonlinesdk/
Насколько я понял EntitySchemaQuery это Select + права доступа. С помощью него нельзя вставить запись.
Т.е. остается только генерация сигнала для бизнес процесса или есть еще вариант?
Приведите пожалуйста пример для С# (Web-сервиса).
Да, вы правы, извиняюсь.
Узнал, что если создавать запись так
var schema = userConnection.EntitySchemaManager.GetInstanceByName("Activity"); var entity = schema.CreateEntity(userConnection); entity.SetDefColumnValues(); entity.SetColumnValue("Title", "Создать выборку целевой аудитории"); entity.SetColumnValue("OwnerId", ownerId); entity.SetColumnValue("TypeId", "FBE0ACDC-CFC0-DF11-B00F-001D60E938C6"); entity.Save();
то триггера на стартовый событиях бп (добавление/изменение записи) сработают.