05.04.2018, 12:06 | #1 |
Участник
|
Изменение активной стадии Последовательности операций БП
Приветствую всех!
У меня возникла одна проблема. В системе есть Последовательность операций БП для Интереса, Возможной сделки и Предложения с расценками, которая выполняет роль Ленты процесса продажы. Мне необходимо с помощью кастомного шага БП изменить активную стадию этой последовательности и предпоследнего этапа в последний. Но если я пытаюсь это сделать, то получаю исключение "System.ServiceModel.FaultException" с сообщением: "Invalid stage transition. Transition to stage <stage id> is not in the process active path. TraversedPath: <first stage id>,<second stage id>,<third stage id>, StageId: <current third stage id>, ProcessId: <new fourth stage id>. New Stage Entity: bpf_opportunityid not found". Вот код, который я использую для перевода активной стадии: Код: //New stage id var activeStageId = new Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"); // Retrieve the process instance record to update its active stage ColumnSet bPFcolumnSet = new ColumnSet(); bPFcolumnSet.AddColumn("activestageid"); Entity retrievedProcessInstance = _client.Retrieve("new_sales_process_flow", new Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"), bPFcolumnSet); // Update the active stage to the next stage retrievedProcessInstance["activestageid"] = new EntityReference("processstage", activeStageId); _client.Update(retrievedProcessInstance); Подскажите, пожалуйста. UPD: Используется версия CRM; Я не пытаюсь перепрыгнуть через один шаг (см. скриншот), что особенно занимательно. Заранее спасибо.
__________________
Добра всем! Последний раз редактировалось Danstec; 05.04.2018 в 12:57. Причина: UPD |
|
05.04.2018, 12:19 | #2 |
Moderator
|
Мы с этим сталкивались. Все сильно зависит от версии CRM. Судя по ошибке "Transition to stage <stage id> is not in the process active path" все дело в том, что вы перепрыгиваете через стадию вперед, или назад. Сейчас нет возможности найти ссылку, но есть рекомендация MS - не прыгать, а в цикле пройти полный путь до фазы
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
05.04.2018, 12:20 | #3 |
Moderator
|
А вот и ссылка: https://blogs.msdn.microsoft.com/crm...-dynamics-365/
Мы наблюдали сильно разное поведение между CRM 2016, D365 (onprem) и онлайн версией. В последней, кстати, прыгать можно.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
05.04.2018, 13:01 | #4 |
Участник
|
Цитата:
Сообщение от Артем Enot Грунин
Мы с этим сталкивались. Все сильно зависит от версии CRM. Судя по ошибке "Transition to stage <stage id> is not in the process active path" все дело в том, что вы перепрыгиваете через стадию вперед, или назад. Сейчас нет возможности найти ссылку, но есть рекомендация MS - не прыгать, а в цикле пройти полный путь до фазы
Если я нажимаю вручную кнопку "Следющий этап", то всё происходит гладко без ошибок. И судя по полю traversedpath последовательности операций БП, я указываю именно тот id стадии, который следует за 3-м.
__________________
Добра всем! |
|
Теги |
activestage, bpf, последовательности |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|