Публикация

В документации по разработке bpm’online (SDK) для bpm'online версии 7.8 опубликованы новые материалы.
Организация процесса разработки. Из этой статьи Вы узнаете о рекомендуемой последовательности создания новой функциональности в трех средах: среде разработки, среде тестирования и промышленной среде.
Работа с серверным кодом в Visual Studio. В статье изложены все тонкости настройки среды разработки для интеграции с VisualStudio.
Веб-служба DataService. Серия из восьми статей, посвященных интеграции bpm'online с внешними пользовательскими приложениями при помощи Web службы DataService.

Поделиться

0 комментариев
Войдите или зарегистрируйтесь, чтобы комментировать
Вопрос

Здравствуйте.

Сигналом для бизнес процесса являться добавление записи в раздел Продажи.
Каким образом нужно создать запись из web сервиса, что бы сработал этот бизнес - процесс.

Есть класс Insert, но насколько я понял он работает напрямую с БД и не вызовет срабатывание процесса. Значит остается вызов этого процесса из веб сервиса с параметром Id созданной продажи, не подскажите где найти пример вызова БП, у которого начальный сигнал - добавление записи.

Или есть еще какие то способы?

У меня такой же вопрос

4 комментария

Во внешнем интерфейсе 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();

то триггера на стартовый событиях бп (добавление/изменение записи) сработают.

дубль

Войдите или зарегистрируйтесь, чтобы комментировать