Как передать данные в настраиваемый рабочий процесс с экрана расширенного поиска CRM

Есть возможность вызвать рабочий процесс по запросу с экрана расширенного поиска CRM. Чтобы запустить рабочий процесс, пользователю необходимо сначала выбрать записи.

Как передать выбранные данные в настраиваемый рабочий процесс?

например введите здесь описание изображения


person Vijay Balkawade    schedule 27.08.2019    source источник
comment
тебе удалось это решить?   -  person AnkUser    schedule 05.09.2019


Ответы (1)


Когда вы запускаете рабочий процесс с триггером, таким как создание или запись, или обновление записи, или назначенная запись или т. Д., То есть автоматический триггер, действие рабочего процесса будет иметь входной параметр в качестве цели, то есть контекст записи, из которого запускается рабочий процесс. В Target вы можете найти такую ​​информацию, как идентификатор записи, поля и так далее.

Но когда вы запускаете рабочий процесс OnDemand, действие рабочего процесса не будет содержать параметр ввода, и, следовательно, такие сведения, как поле и т. Д., Из какой записи оно запускается, будут недоступны. Вы получите только небольшую информацию, такую ​​как идентификатор записи, логическое имя записи, но не данные поля.

Вам нужно будет получить запись с заданным идентификатором записи и логическим именем записи.

IWorkflowContext context = executionContext.GetExtension<IWorkflowContext>();
            IOrganizationServiceFactory serviceFactory = executionContext.GetExtension<IOrganizationServiceFactory>();
            IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId);


Entity abc= service.Retrieve(context.PrimaryEntityName, context.PrimaryEntityId, new ColumnSet("colum1", "field2", "field3", "field4"));

Вот ссылка, которая объясняет все в Подробности < / а>

person AnkUser    schedule 27.08.2019