Как запустить рабочий процесс по требованию на всех страницах - PullRequest
1 голос
/ 02 августа 2011

Мне нужно запустить рабочий процесс по требованию для моей пользовательской сущности,

Допустим, у меня есть 1 миллион записей, так как я могу запустить этот рабочий процесс над этими записями.

, поскольку, насколько я знаю, мы можем только выбрать запись, а на ленте нажать кнопку «Запустить рабочий процесс» и указать ее. Таким образом, для максимальной за одну попытку я могу выбрать только одну страницу записей и, следовательно, ограниченный доступ

есть идеи?

Ответы [ 3 ]

7 голосов
/ 02 августа 2011

Вы не можете сделать это с помощью пользовательского интерфейса. Самый простой подход был бы с маленькой программой, которая выбирает все записи и запускает выполнение рабочего процесса.

Вы можете использовать ExecuteWorkflowRequest для этой задачи.

// Create an ExecuteWorkflow request.
ExecuteWorkflowRequest request = new ExecuteWorkflowRequest()
{
    WorkflowId = <insert workflow id here>,
    EntityId = <insert record id here>
};

// Execute the workflow.
var response = (ExecuteWorkflowResponse)_serviceProxy.Execute(request);
1 голос
/ 03 июля 2013

Я использую http://mscrmtoolkit.codeplex.com/documentation#workflowexecutionmanager для этой цели. Работает нормально.

0 голосов
/ 31 июля 2013

На самом деле вы можете запустить рабочий процесс для всех записей из коробки, если вы делаете это с помощью клиента Outlook, через закрепленное представление.Это описано в этом сообщении в блоге: http://www.powerobjects.com/blog/2013/07/30/run-on-demand-workflow-in-dynamics-crm-250-records/

...