TRANSITION XML 項目
您可以使用 TRANSITION 項目,針對某個工作項目類型,指定有效的進展,或從某個狀態回復到另一個。 TRANSITION 項目是 TRANSITIONS 項目的必要子項目。
若要修改工作流程,您可以修改工作項目類型的定義。 請參閱 修改或加入自訂工作項目類型 (WIT)。
結構描述階層架構
TRANSITION
<TRANSITION from="NameOfStartingState" to="NameOfEndingState" for="UserGroupName" not="UserGroupName"> <ACTIONS> . . . </ACTIONS> <REASONS> . . . </REASONS> <FIELDS> . . . </FIELDS> </TRANSITION>
屬性和項目
下列章節說明屬性、子項目和父項目。
屬性
屬性 |
描述 |
---|---|
from |
必要項。 正在轉換的工作項目的狀態名稱。 |
to |
必要項。 工作項目正在轉換的狀態名稱。 |
for |
Transition 屬性。 選擇項。 可以執行轉換的使用者或群組名稱。 |
not |
Transition 屬性。 選擇項。 限制執行轉換的使用者或群組名稱。 |
子項目
項目 |
描述 |
---|---|
選擇項。 定義 ACTION 的集合,其中每個會定義可以在呼叫 WorkItem.GetNextState 方法來取得工作項目的後續動作狀態時使用的動作字串。 |
|
必要項。 DEFAULTREASON 和 REASON 的項目集合,定義工作項目可以完成轉換的有效理由。 |
|
選擇項。 FIELD (工作流程) 項目的集合,其參考針對工作項目類型所定義的欄位定義。 |
父項目
項目 |
描述 |
---|---|
必要項。 TRANSITION 的集合,其定義工作項目類型的有效狀態轉換。 |
備註
TRANSITION 是 TRANSITIONS 的必要子項目。
您必須定義剛好一個轉換,將工作項目從無 (from="") 移至具名的狀態,例如「作用中」。 這項轉換會識別新工作項目的預設狀態。
minOccurs="1"
maxOccurs="unbounded"
必須指定兩個狀態之間所有有效的轉換。 如果沒有指定任何轉換,則預設會不允許轉換。
此外,您可以選擇性地在工作流程的轉換項目中使用屬性 for 和 not,來縮小對象範圍,以及誰無法執行轉換。 這樣做時,請使 denies 的優先順序高於 allows。 如果兩個屬性都未指定,則任何人都可以修改工作項目。
只有建立父群組並在 TRANSITION 項目中指定該父群組,才支援多個群組。 若要深入了解 for 和 not 屬性,請參閱將規則套用至工作項目欄位。
範例
在下列範例中,會定義從作用中到已解決工作流程狀態的轉換原因。
<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>
下列規則中,將工作項目從已解決轉換到已完成狀態的能力,會限定在除了剛加入小組的新測試人員之外的所有專案測試人員。
<TRANSITION from="Resolved" to="Complete" for="[project]\AllTesters" not="[project]\NewTesters">
</TRANSITION>