Создание быстрых и настраиваемых действий для запуска рабочего процесса SharePoint 2013

Исходная статья опубликована в пятницу, 28 сентября 2012 г.

Здравствуйте! Меня зовут Джонг Хва Лим (JongHwa Lim). Я — член команды разработчиков SharePoint. фото джонг хва

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

Если вы уже использовали настраиваемые действия или быстрые действия для запуска рабочего процесса SharePoint 2010, вы можете попробовать и создать действие, запускающее рабочий процесс SharePoint 2013. Поскольку процедура практически ничем не отличается, пользователи, имеющие определенный опыт, смогут легко создать действие. 

Быстрые действия

Я подробно объясню процесс создания быстрого действия для запуска рабочего процесса SharePoint 2013. 

Подготовка

Для создания быстрых действий следует провести определенную подготовительную работу.

Сначала необходимо подготовить файл значка ленты для отображения на ленте быстрого действия, которое будет определено далее. Я решил использовать библиотеку документов Site Assets (Материалы сайта) и отправил в нее файл изображения.

clip_image001

У вас должен быть список или библиотека документов, где вы хотите создать быстрое действие. В этом примере я буду использовать список Vacation Request (Заявление на отпуск) и создам быстрое действие, которое запускает рабочий процесс для запроса утверждения заявления на отпуск.

clip_image002 

Создание быстрого действия

Итак, список есть; можно создать быстрое действие. Это совсем несложно. Просто нажмите кнопку New Quick Step (Создать быстрое действие) в группе Customize List (Настройка списка) на вкладке ленты LIST (СПИСОК), как показано ниже.

clip_image003

clip_image004

Если используется библиотека документов, кнопка находится в группе Customize Library (Настройка библиотеки) на вкладке ленты LIBRARY (БИБЛИОТЕКА), как показано ниже.

clip_image005

clip_image006

После нажатия кнопки откроется диалоговое окно, где необходимо всего лишь нажать кнопку Allow (Разрешить).

clip_image007

Затем запускается SPD со списком Vacation Request (Заявление на отпуск), отображенным в следующем всплывающем диалоговом окне.

clip_image008

Посвятите некоторое время изучению интерфейса в этом диалоговом окне. Вы узнаете, что можно создать новый рабочий процесс на основе рабочего процесса SharePoint 2013 или SharePoint 2010 или использовать некоторые существующие рабочие процессы. Вы увидите возможность определения надписи для кнопки и ее изображения. Поскольку мы будем создавать рабочий процесс на основе рабочего процесса SharePoint 2013, выберите пункт Start a new workflow (Запуск нового рабочего процесса), а затем выберите SharePoint 2013 Workflow (Рабочий процесс SharePoint 2013) в качестве значения параметра Platform Type (Тип платформы). В поле Button Label (Надпись для кнопки) введите "Vacation Approval" (Утверждение заявления на отпуск). И, наконец, нажмите кнопку Browse (Обзор), чтобы найти изображение значка, загруженное на этапе подготовки. Диалоговое окно должно выглядеть следующим образом.

clip_image009

После нажатия кнопки ОК конструктор рабочих процессов для SharePoint 2013 будет иметь следующий вид. Завершите логику рабочего процесса. Как говорилось ранее, в этом примере будет создан рабочий процесс Vacation Approval (Утверждение заявления на отпуск).

clip_image010

Создание быстрого действия завершается после публикации рабочего процесса. На вкладке ленты ITEMS (ЭЛЕМЕНТЫ) можно увидеть созданную группу Quick Steps (Быстрые действия) и новое меню ленты Vacation Approval (Утверждение заявления на отпуск).

clip_image011

Открыв сводную страницу для списка Vacation Request (Заявление на отпуск) в SPD, вы увидите рабочий процесс с именем "Button – Vacation Approval" (Кнопка — Утверждение заявления на отпуск) и созданное настраиваемое действие с именем Vacation Approval (Утверждение заявления на отпуск). По сути, быстрое действие является определенным типом настраиваемых действий. Поэтому если вы знакомы с функциями настраиваемых действий, вы сможете применить их и к быстрым.

clip_image012 

Изменение быстрого действия (дополнительное)

Поскольку быстрое действие представляет собой сочетание настраиваемого действия (настраиваемые действия типа View Ribbon (Лента для представления)) и рабочего процесса списка, можно применить некоторые функции быстрого действия, чтобы изменить созданное быстрое действия. После щелчка Vacation Approval (Заявление на отпуск) в слое Custom Actions (Настраиваемые действия) откроется следующее диалоговое окно.

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

clip_image013

Если немного прокрутить страницу вниз, можно увидеть несколько дополнительных параметров. С помощью полей Ribbon Location (Расположение на ленте) и Sequence number (Порядковый номер) можно изменять расположение кнопки на ленте.

clip_image014

Теперь предположим, что нам требуется кнопка, которая будет отображаться в группе Workflows (Рабочие процессы), а не в группе Quick Steps (Быстрые действия), причем она должна отображаться в самом конце группы. Это легко можно сделать, изменив значения на следующие.

clip_image015

После этого кнопка будет отображаться в нужном месте, как показано ниже.

clip_image016

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

https://msdn.microsoft.com/en-us/library/ee537543.aspx

Для маски Rights (Права) можно использовать значения, разделенные точкой с запятой, с указанного ниже сайта, чтобы просматривать и (или) использовать настраиваемые действия могли только уполномоченные пользователи.

https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spbasepermissions.aspx 

Настраиваемые действия

Теперь предположим, что при наличии нового меню ленты для запуска рабочего процесса Vacation Request (Заявление на отпуск) необходимо аналогичное меню в List Item Menu (Меню элементов списка), чтобы пользователи могли запускать рабочий процесс, щелкнув элемент правой кнопкой мыши, как показано ниже.

clip_image017

Для этого необходимо создать новое настраиваемое действие с типом List Item Menu (Меню элементов списка). Расположенная на ленте кнопка Custom Action (Настраиваемое действие) находится на сводной странице списка для списка Vacation Request (Заявление на отпуск) в SPD. После ее нажатия будут доступны следующие параметры. В этом примере выберите List Item Menu (Меню элементов списка).

clip_image018

В открывшемся диалоговом окне выберите параметр Initiate workflow (Начать рабочий процесс) и выберите рабочий процесс "Button – Vacation Approval" (Кнопка — Утверждение заявления на отпуск), который был создан во время создания быстрого действия, чтобы два пользовательских интерфейса запускали один и тот же рабочий процесс. Затем нажмите кнопку "ОК".

clip_image019

Вот и все. Меню создано. Если перейти в список Vacation Request (Заявление на отпуск), выбрать один элемент и просмотреть меню элемента списка, его можно будет найти. 

Известные проблемы

Существует ряд известных проблем, связанных с быстрыми и настраиваемыми действиями.

  • После запуска рабочий процесс переходит на страницу сайта по умолчанию, а не в список.
  • Следующий параметр на сводной странице рабочего процесса отключен по умолчанию для рабочего процесса, созданного из списка быстрых действий.
    clip_image020
  • Если нажать кнопку New (Создать) из слоя Custom Actions (Настраиваемые действия), автоматически создается настраиваемое действие типа View Ribbon (Лента для представления).clip_image021 

Это — локализованная публикация в блоге. Исходная статья — How to create a Quick Step and Custom Action to start SharePoint 2013 workflow