При использовании одного рабочего процесса для утверждения и другого рабочего процесса для обновления поля можно использовать «Ожидание изменения поля в текущем элементе», чтобы обновить поле после получения подтверждения (любой утвержденный код 16, отклоненный код 17, Выполняется код 2) вот пример:
Подождите, пока MomoApproval станет равным 16, затем установите для параметра Уведомление значение Окончательный
Этот код не будет срабатывать при утверждении, поскольку SharePoint изменяет поле, связанное с рабочим процессом; это поле не относится к схеме списка. Следовательно, изменение статуса рабочего процесса не вызывает событие изменения элемента. Без события изменения элемента второй рабочий процесс останется бездействующим, и действие «Ожидание изменения поля в текущем элементе» покажется бесполезным. Чтобы обойти это поведение рабочего процесса утверждения SharePoint 2010, выполните следующие действия:
- Open SharePoint Designer 2010
- Перейти на сайт, над которым вы работаете
- Нажмите на рабочие процессы
- Щелкните правой кнопкой мыши рабочий процесс утверждения
- Нажмите, скопируйте и измените
- Перейти к соответствующему списку
- Нажмите, чтобы связать существующий рабочий процесс
- Теперь в этом рабочем процессе нажмите «Изменить рабочий процесс», нажмите «Задача рабочего процесса утверждения»
- Нажмите, чтобы изменить поведение одной задачи
- Перейти к полному разделу и добавить это действие "установить заголовок для текущего элемента: заголовок"
Это изменит поле заголовка в схеме списка, что вызовет событие изменения элемента, но значение заголовка останется прежним, это действие не повлияет на содержимое данных списка. Это простой обходной путь, который отлично работает и будет стоить дешевле по сравнению с другими решениями, такими как создание операций, создание циклов, приостановка и перезапуск рабочих процессов
После создания рабочий процесс можно импортировать в Visual Studio 2010 и стать частью решения. Для этого перейдите по этой ссылке: http://msdn.microsoft.com/en-us/library/ee231580.aspx
Приятного обновления рабочего процесса
Примечание: Рабочий процесс, который обновляет поле, должен начинаться при изменении элемента в списке.
Мохамед Хашем