SharePoint
12 марта 2012

Использование Visio для создания рабочих процессов

Tutorial
Рабочие процессы — важная и почти обязательная составляющая портала на SharePoint, они являются основой документооборота и многих других бизнес-процессов. Неудивительно, что существуют такие системы как Nintex, пытающиеся расширить и дополнить возможности стандартных рабочих процессов.

По опыту работы с Nintex могу сказать, что данная система не лишена недостатков: дороговизна, периодически возникающие ошибки, общая неторопливость системы (хоть это свойственно всему SharePoint) — все это вынуждает меня использовать штатный механизм рабочих процессов. Однако, у Nintex есть важное преимущество — визуализация схемы и текущего состояния процесса. Благодаря этому создание рабочих процессов упрощается, и их могут создавать даже люди, достаточно далекие от программирования (контент-менеджеры, бизнес-аналитики и т.д.). В SharePoint 2010 есть аналогичная возможность создания рабочего процесса на основе визуальной схемы, используя Visio 2010 и SharePoint Designer 2010.

Создание схемы в Visio

В Visio 2010 появился новый шаблон – Microsoft SharePoint Workflow (присутствует только в Premium-редакции Visio). Полученную из этого шаблона схему можно будет экспортировать в Designer для дальнейшей работы.
Итак, открываем Visio и ищем шаблон в категории Flowchart.

После открытия шаблона слева будут расположены элементы схемы — условия, действия, начало и конец (на скриншоте показаны только «быстрые» действия, вообще их гораздо больше):


Теперь продумываем логику бизнес-процесса и составляем схему, используя необходимые элементы. Я для примера сделал простейший бизнес-процесс согласования:
  • существует 2 списка — «Входящие» и «Ответственные»
  • в списке «Ответственные» находятся категории запросов (предложение/вопрос/жалоба и т.д.) и соответствующие ответственные лица
  • пользователь создает элемент в списке «Входящие» и указывает категорию
  • рабочий процесс находит ответственного за эту категорию и создает задачу на него
  • ответственный реагирует на задачу, и у запроса в списке «Входящие» меняется статус

Конечно на словах тяжело это воспринимать, поэтому приведу сразу готовую схему рабочего процесса:


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


Привязка процесса к данным в SharePoint Designer

Открываем Designer, подключаемся к нужному сайту, переходим в папку Workflows. На риббоне нажимаем кнопку «Import from Visio» и указываем файл с сохраненной схемой. Пишем имя рабочего процесса и список, к которому его привязываем (в данном случае — «Входящие»). Designer сам сгенерирует код и комментарии к нему, нам останется лишь указать поля, откуда брать данные (конкретно в данном случае у меня возникли небольшие проблемы из-за использования поля типа Lookup, но обычно все просто):


После доработки рабочего процесса, переходим в настройки. Там указываем необходимое условие запуска (запускать автоматически при создании элемента), а так же ставим галочку у опции «Show workflow visualization on status page» (требуется активировать возможности SharePoint Server Enterprise на коллекции сайтов). Это именно то, ради чего стоит создавать рабочие процессы именно в Visio. Теперь перейдем на сайт, создадим любой элемент в списке «Входящих», перейдем в список задач и завершим задачу, а затем откроем окно статуса рабочего процесса:


Итак, мы видим достаточно симпатичную схему рабочего процесса, на котором отмечены все пройденные этапы. Если бы процесс остановился на каком-либо этапе (например ждал согласования от нас), то это было бы так же отмечено на схеме. Благодаря этому каждый пользователь сможет увидеть, на какой стадии согласования находится его запрос.

Заключение

В качестве итога приведу положительные и отрицательные стороны использования Visio для создания рабочих процессов (на мой субъективный взгляд).
Плюсы:
  • Простота создания, не нужно быть программистом
  • Пользователь может легко посмотреть и понять статус запроса

Минусы:
  • Требуется SharePoint Enterprise Server и Visio Premium
+3
20,1k 25
Комментировать