Поделиться через


TRANSITION - XML-элемент

Элемент TRANSITION можно использовать для указания допустимого продвижения или регрессии из одного состояния в другое для типа рабочего элемента. Элемент TRANSITION является обязательным дочерним элементом элемента TRANSITIONS.

Для изменения рабочего процесса выполняется изменение определения типа рабочего элемента. См. раздел Изменение или добавление пользовательского типа рабочего элемента (WIT).

Схема иерархии

WITD

    WORKITEMTYPE

        WORKFLOW

            TRANSITIONS

                TRANSITION

<TRANSITION from="NameOfStartingState" to="NameOfEndingState" for="UserGroupName" not="UserGroupName">     <ACTIONS> . . . </ACTIONS>     <REASONS> . . . </REASONS>     <FIELDS> . . . </FIELDS> </TRANSITION>

Атрибуты и элементы

В следующих разделах описаны атрибуты, дочерние и родительские элементы.

Атрибуты

Атрибут

Описание

from

Обязательный. Имя состояния, из которого переходит рабочий элемент.

to

Обязательный. Имя состояния, в которое переходит рабочий элемент.

for

атрибут Transition.

Необязательно. Имя пользователя или группы, которым разрешено выполнять переход.

not

атрибут Transition.

Необязательно. Имя пользователя или группы, которым запрещено выполнять переход.

Дочерние элементы

Элемент

Описание

ACTIONS

Необязательно. Определяет коллекцию элементов ACTION, каждый из которых определяет строку действия, которую можно использовать при вызове метода WorkItem.GetNextState для получения состояния рабочего элемента после действия.

REASONS

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

FIELDS (рабочий процесс)

Необязательно. Коллекция элементов FIELD (Workflow), которые ссылаются на определения полей, заданные для типа рабочего элемента.

Родительские элементы

Элемент

Описание

TRANSITIONS

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

Заметки

TRANSITION — обязательный дочерний элемент элемента TRANSITIONS.

Вы должны задать ровно один переход рабочего элемента из ничего (from= "") в именованное состояние, например Active (Активен). Этот переход определяет состояние по умолчанию для нового рабочего элемента.

minOccurs="1"

maxOccurs="unbounded"

Необходимо указать все допустимые переходы между двумя состояниями. Если никакие переходы не указаны, то по умолчанию никакие переходы не разрешены.

Кроме того, при желании вы можете использовать атрибуты for и not в элементе перехода рабочего процесса, чтобы уточнить, кто может и кто не может выполнять переход. При этом denies имеет приоритет над allows. Если не указан ни один из этих атрибутов, любой пользователь может изменить рабочий элемент.

Несколько групп поддерживается только путем создания родительской группы и указания ее в элементе TRANSITION. Дополнительные сведения об атрибутах for и not см. в статье Применение правила к полю рабочего элемента.

Пример

В следующем примере определяются причины для перехода от состояния рабочего процесса Active (Активен) в состояние Resolved (Разрешен).

<TRANSITION from="Active" to="Resolved">
   . . .
   <REASONS>
      <DEFAULTREASON value="Fixed"/>
      <REASON value="Deferred"/>
      <REASON value="Duplicate"/>
      <REASON value="As Designed"/>
      <REASON value="Unable to Reproduce"/>
      <REASON value="Obsolete"/>
   </REASONS>
   . . .
</TRANSITION>

В следующем правиле возможность перехода рабочего элемента от состояния Resolved (Разрешен) в состояние Completed (Завершен) разрешается всем тест-инженерам проекта, кроме новых тест-инженеров, недавно включенных в команду.

<TRANSITION from="Resolved" to="Complete" for="[project]\AllTesters" not="[project]\NewTesters">
</TRANSITION>

См. также

Основные понятия

Изменение рабочего процесса для типа рабочего элемента