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


Справка по всем XML-элементам WORKFLOW

Информацию данного раздела можно использовать для быстрого перехода ко всем элементам и основным атрибутам, управляющим рабочим процессом типа рабочего элемента. Эти элементы задаются в контейнере элемента WORKFLOW, втором по важности разделе определения типа рабочего элемента. Дочерние элементы STATES и TRANSITIONS определяют различные состояния, которые пользователь может указывать для типа рабочего элемента, и переходы, разрешенные между состояниями. Дополнительные сведения об определении этих элементов см. в разделе Разработка рабочего процесса

Содержание раздела

  • Пример определения WORKFLOW

  • Структура синтаксиса элементов WORKFLOW

Пример определения WORKFLOW

В следующем примере показана общая структура элемента WORKFLOW. К контейнере STATES задаются все состояния, которые пользователь может изначально назначить типу рабочего элемента. Затем задаются все переходы, разрешенные между состояниями. Каждое состояние соответствует элементу STATE, а каждый переход соответствует элементу TRANSITION. Внутри каждого элемента-контейнера STATES и TRANSITIONS состояния и переходы можно определять в любой последовательности.

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

<WORKFLOW>
<STATES>
  <STATE value="Active">
    <FIELDS> . . . </FIELDS>
  </STATE>
  <STATE value="Resolved">
    <FIELDS> . . . </FIELDS>
  </STATE>
  <STATE value="Closed" />
</STATES>
<TRANSITIONS>
  <TRANSITION from="" to="Active">
    <REASONS>
      <DEFAULTREASON value="New" />
    </REASONS>
    <FIELDS> . . . </FIELDS>
  </TRANSITION>
  <TRANSITION from="Active" to="Resolved">
    <REASONS> . . . </REASONS>
    <FIELDS> . . . </FIELDS>
    <ACTIONS > . . . </ACTIONS >
</TRANSITION>
<TRANSITION from="Resolved" to="Closed">
    <REASONS> . . . </REASONS>
    <FIELDS> . . . </FIELDS>
    <ACTIONS > . . . </ACTIONS >
</TRANSITION>
<TRANSITION from="Resolved" to="Active">
    <REASONS> . . . </REASONS>
    <FIELDS> . . . </FIELDS>
</TRANSITION>
<TRANSITION from="Active" to="Closed ">
    <REASONS> . . . </REASONS>
    <FIELDS> . . . </FIELDS>
</TRANSITION>
<TRANSITION from="Closed" to="Active">
    <REASONS> . . . </REASONS>
    <FIELDS> . . . </FIELDS>
</TRANSITION>
</TRANSITIONS>
</WORKFLOW>

К началу

Структура синтаксиса элементов WORKFLOW

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

Элемент

Описание и синтаксис

Обязательный?

ACTION

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

<ACTION value="NameOfAction" />

Дополнительные сведения см. в разделе Автоматизация назначений полей на основе состояния, перехода или причины.

Необязательный

ACTIONS

Определяет коллекцию элементов ACTION.

<ACTIONS>
   <ACTION>. . . </ACTION>
</ACTIONS>

Необязательный

DEFAULTREASON

Определяет наиболее распространенную причину изменения членом команды рабочего элемента с переходом из одного заданного состояния в другое.

<DEFAULTREASON value="ValueOfDefaultReason">
   <FIELDS>. . . </FIELDS>
</DEFAULTREASON>

Обязательно

FIELD

Задает поле для типа рабочего элемента, а также правила и условия, применяемые к этому полю, когда член команды изменяет состояние рабочего элемента этого типа и указывает причину изменения.

<FIELD refname="FieldReferenceName">
   <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
   <ALLOWEXISTINGVALUE />
   <CANNOTLOSEVALUE />
   <COPY />
   <DEFAULT />
   <EMPTY />
   <FROZEN />
   <MATCH />
   <NOTSAMEAS />
   <PROHIBITEDVALUES /> . . . </PROHIBITEDVALUES>
   <READONLY />
   <SERVERDEFAULT />
   <SUGGESTEDVALUES /> . . . </SUGGESTEDVALUES>
   <VALIDUSER />
   <WHEN>> . . . </WHEN>
   <WHENNOT> . . . </WHENNOT>
   <WHENCHANGED> . . . </WHENCHANGED>
   <WHENNOTCHANGED> . . . </WHENNOTCHANGED>
<FIELD>

Дополнительные сведения см. в разделе Элемент FIELD (рабочий процесс).

Необязательный

FIELDS

Задает коллекцию элементов FIELD.

<FIELDS>
   <FIELD . . . </FIELD>
</FIELDS>

Необязательный

REASON

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

<REASON value="NameOfReason">
   <FIELDS>. . . </FIELDS>
</REASON>

Необязательный

REASONS

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

<REASONS>
   <DEFAULTREASON>. . . </DEFAULTREASON>
   <REASON>. . . </REASON>
</REASONS>

STATE

Определяет допустимое состояние типа рабочего элемента. Этот элемент может содержать элемент FIELDS, который ссылается на правила и условия, применяемые к определенному полю, когда член команды изменяет состояние рабочего элемента этого типа.

<STATE value="NameOfState">
  <FIELDS>. . . </FIELDS>
</STATE>

Обязательно

STATES

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

<STATES>
   <STATE>. . . </STATE>
</STATES>

Обязательно

TRANSITION

Задает допустимую прогрессию или регрессию из одного состояния в другое для рабочих элементов определенного типа.

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

Дополнительные сведения см. в разделе Элемент TRANSITION.

Обязательно

TRANSITIONS

Задает коллекцию элементов TRANSITION.

<TRANSITIONS>
    <TRANSITION>. . . </TRANSITION>
</TRANSITIONS>

Обязательно

WORKFLOW

Задает коллекцию контейнерных элементов STATES и TRANSITIONS, которые совместно определяют рабочий процесс для типа рабочего элемента.

<WORKFLOW>
   <STATES>. . . </STATES>
   <TRANSITIONS>. . . </TRANSITIONS>
</WORKFLOW>

Обязательно

К началу

См. также

Ссылки

Элемент FIELD (рабочий процесс)

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

Разработка рабочего процесса

Другие ресурсы

Определение и настройка рабочего процесса рабочего элемента