Workflow "Утверждение" документа

  • Автор темы Forest
  • Дата начала
F

Forest

#1
Доброго всем времени суток. Столкнулся с такой проблемой:
нужен workflow, который решает такие задачи:
1. Организовывает процесс утверждения документа с возможностью выбрать участников утверждения, выстроить их в логическую цепочку (кто после кого утверждает), назначить время на рассмотрение и выполнение задачи для каждого участника, назначить наблюдателей за процессом, которые не берут участи в процессе, но информируются о старте.
2. Организовать рассылку сообщений на электронную почту в таких случаях:
• Процесс утверждения начат и в нем берут участь такие-то люди
• Участнику процесса назначена задача утвердить документ
• Документ изменен участником утверждения, тогда сообщения об изменении получают все участники, которые уже выполнили свою задачу ранее
• Процесс утверждения завершен
На сегодняшний день используем стандартный workflow «Утверждение», который решает все вышестоящие задачи кроме рассылки писем при изменении документа в процессе утверждения.
Уточнение: рассылка писем об изменении документа должна делаться только в том случае, когда на документе запущен процесс утверждения.
Для такой рассылки написал свой workflow, который запускается при изменении документа и в коде проверяю запущен ли процесс утверждения. Но вот незадача, если в библиотеке документов включить поддержку check out\check in, то имеем следующее – SharePoint фиксирует изменения элемента списка и при check out и при check in. При check out мой workflow стартует и завершается когда делаем check in. Получается когда возвращаем документ обратно (check in) завершается workflow рассылки начатый ранее и выполняется еще один workflow рассылки. В результате в один тот самый момент получаем сразу два письма об изменении документа.
Я понимаю что SharePoint не заставишь не запускать workflow рассылки во второй раз(( Пробовал отловить в коде время окончания предыдущего workflow рассылки, что бы контролировать запуск текущего – ничего не вышло.
Подскажите пожалуйста решение такой проблемы. Возможно уже есть workflow утверждения, который делает такую рассылку. Заранее спасибо.