Добрый день!
Подскажите пожалуйста, как в BPMOnline программно запустить БП и передать ему параметры?
Буду благодарен за пример.
Нравится
1)приведите пожалуйста пример
2) укажите продукт и версию продукта (5.4.0.195 - пример)
"Sergey Karpenko" написал:1)приведите пожалуйста пример
2) укажите продукт и версию продукта (5.4.0.195 - пример)
1) Необходимо запустить БП из карточки лида (по факту квалификации). Использовать задачу "подпроцесс" не могу из-за проблем описанных в Как вызвать БП из процесса карточки (по событию). Хотел использовать программный запуск как обходной вариант.
2) BPMOnline CRM OnDemand Версия 5.4.0.195
Валерий, программно конечно можно запустить БП, но можно ведь обойтись и без кода, настроив БП на автоматический запуск по сигналу (добавлен новый контрагент + еще один сигнал добавлен новый контакт), вторым шагом в процессе установить проверку: если у контакта\контрагента записи на детали "Лиды" существуют (Account.LeadId != null, Contact.LeadId !+ null), значит он был создан в рамках квалификации, значит продолжаем выполнения БП, в противном случае - "конец".
Дмитрий, спасибо за ответ.
Да, действительно, такой вариант можно использовать, но мне кажется программный подход здесь будет более элегантным.
И если есть открытый API для вызова БП, то хотелось бы о нем знать. Хотя бы для общего развития :)
Валерий,
Программно запустить бизнес-процесс BPMonline можно через веб-сервис. Более подробно об этом изложено в статье SDK http://www.terrasoft.ua/bpmonlinesdk/WorkWithBpmByWebServices.html
Коллеги посоветовали :)
var manager = UserConnection.ProcessSchemaManager;
var processSchema = manager.GetInstanceByName("MyProcess");
var process = processSchema.CreateProcess(UserConnection);
if (processSchema.Parameters.ExistsByName("MyParameter")) {
process.SetPropertyValue(“MyParameter”, “value”);
}
process.Execute(Page.UserConnection);
приятно работы :)