共用方式為


所有 WORKFLOW XML 項目參考

您可以使用本主題中的資訊,快速參考所有用於控制工作項目類型之工作流程的項目和主要屬性。 這些項目都是在 WORKFLOW 項目容器中指定,這是工作項目類型定義的第二個主要區段。 STATESTRANSITIONS 子項目用來定義使用者可針對工作項目類型指定的不同狀態,以及允許的狀態間轉換。 如需如何定義這些項目的詳細資訊,請參閱設計工作流程

本主題內容

  • WORKFLOW 範例

  • WORKFLOW 項目的語法結構

WORKFLOW 範例

下列範例會示範 WORKFLOW 項目的整體結構。 首先在 STATES 容器內指定使用者可指派給工作項目類型的所有狀態。 接著指定允許從某個狀態到另一個狀態的所有轉換。 每個狀態對應於一個 STATE 項目,而每個轉換對應於一個 TRANSITION 項目。 在每個 STATESTRANSITIONS 容器項目內,您可以依需要以任何順序定義狀態和轉換。

對於每個轉換,指定一組變更工作項目狀態的原因,包括預設原因。 您可以針對每個狀態、轉換或原因指派值,也可以使用 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 (工作流程) 項目

概念

設計工作流程

其他資源

定義和自訂工作項目工作流程