變更工作項目類型的工作流程
您可以透過匯出 XML 檔並修改其內容,變更工作項目類型的工作流程。 一旦您修改了工作流程,就可以匯入 XML 檔,以便開始使用更新的工作項目類型。
必要的使用權限
您必須是 [Team Foundation Administrators] 群組的成員或專案之 [Project Administrators] 群組的成員,才能執行此程序。 如需詳細資訊,請參閱 Team Foundation Server 使用權限。
若要變更工作流程
如果您要修改單一專案中的工作項目類型,請執行 witadmin exportwitd,以便針對想要修改的工作項目類型匯出 XML 檔。 如需詳細資訊,請參閱 自訂和管理工作項目類型 [witadmin]。
在 Visual Studio 中,依序按一下 [檔案]、[開啟] 和 [檔案]。
如此會顯示 [開啟檔案] 對話方塊。
在 [查詢] 下,移至匯出檔案的位置。
如果您要修改工作項目類型,以便自訂流程範本,請移至存放所下載之流程範本的位置。
注意事項 如果您是執行 Windows Vista,則可能沒有存取特定資料夾的權限。 如果嘗試將工作項目類型匯出至您無法存取的位置,登錄模擬技術便會自動重新導向至已匯出的檔案,並將該檔案儲存在虛擬存放區中。 若要避免此重新導向,可以將此檔案匯出至您能存取的位置。 如需登錄模擬的詳細資訊,請參閱 Microsoft 網站的下列頁面:登錄模擬 (英文) 和 Windows Vista 中常見的檔案及登錄模擬問題。
選取您想要更新的工作項目類型 XML 檔,然後按一下 [開啟]。 然後在收到關於行尾結束符號的提示時,按一下 [否]。
在 XML 檔的 <WORKFLOW> 區段中尋找工作項目類型的工作流程定義,如下列 XML 程式碼所示:
<WORKFLOW> <STATES> <STATE value="Active"> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ClosedDate"> <EMPTY /> </FIELD> <FIELD refname="Microsoft.VSTS.Common.ClosedBy"> ...
插入另一個 <STATE> 項目,在型別定義中加入 Unapproved 狀態。 在下列範例中,新的狀態會以粗體顯示:
<WORKFLOW> <STATES> <STATE value="Unapproved"> </STATE> <STATE value="Active"> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ClosedDate"> <EMPTY /> </FIELD> <FIELD refname="Microsoft.VSTS.Common.ClosedBy"> ...
在 null 狀態和 Unapproved 狀態之間建立轉換; 若要這麼做,請先在工作流程定義的區段中找出轉換, 接著,插入下列範例中以粗體顯示的 XML 程式碼。
注意事項 由於這項變更的緣故,所有這個類型的新工作項目都將以 Unapproved 狀態開始,且預設原因為 New。
<TRANSITIONS> <TRANSITION from="" to="Unapproved"> <REASONS> <DEFAULTREASON value="New" /> </REASONS> </TRANSITION> <TRANSITION from="" to="Active"> <REASONS> <DEFAULTREASON value="New" /> </REASONS> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ActivatedBy"> <COPY from="currentuser" /> </FIELD> <FIELD refname="Microsoft.VSTS.Common.ActivatedDate"> <COPY from="clock" /> </FIELD> <FIELD refname="System.AssignedTo"> <COPY from="currentuser" /> </FIELD> </FIELDS> </TRANSITION>
刪除在下列 XML 程式碼中反白顯示的 Active 轉換。
這樣做是因為只能有一個開始轉換。
<TRANSITIONS> <TRANSITION from="" to="Unapproved"> <REASONS> <DEFAULTREASON value="New" /> </REASONS> </TRANSITION> <TRANSITION from="" to="Active"> <REASONS> <DEFAULTREASON value="New" /> </REASONS> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ActivatedBy"> <COPY from="currentuser" /> </FIELD> <FIELD refname="Microsoft.VSTS.Common.ActivatedDate"> <COPY from="clock" /> </FIELD> <FIELD refname="System.AssignedTo"> <COPY from="currentuser" /> </FIELD> </FIELDS> </TRANSITION>
插入下列範例中以粗體顯示的 XML 程式碼,為開始轉換加入 "Ported" 原因, 如此可讓使用者知道此工作項目是全新的,還是從另一個追蹤系統移植而來。
<TRANSITIONS> <TRANSITION from="" to="Unapproved"> <REASONS> <DEFAULTREASON value="New" /> <REASON value="Ported" /> </REASONS> </TRANSITION> ...
插入下列範例中以粗體顯示的 COPY 規則。 這個規則會將 [指派給] 欄位預設為建立此工作項目的使用者,而且只有在開始轉換期間才會評估此規則。
<TRANSITIONS> <TRANSITION from="" to="Unapproved"> <REASONS> <DEFAULTREASON value="New" /> <REASON value="Ported" /> </REASONS> <FIELDS> <FIELD refname="System.AssignedTo"> <COPY from="currentuser" /> </FIELD> </FIELDS> </TRANSITION> ...
注意事項 在其他 <TRANSITION> 或 <STATE> 項目之下插入這個規則會將此規則的範圍設定為其他轉換或狀態。 如需詳細資訊,請參閱評估規則的方式。
加入下列範例中反白顯示的 XML 程式碼,建立從 Unapproved 狀態到 Active 狀態的轉換。 由於這項變更的緣故,當此工作項目獲得核准時,它可以經歷這個轉換。
<TRANSITIONS> <TRANSITION from="" to="Unapproved"> <REASONS> <DEFAULTREASON value="New" /> <REASON value="Ported" /> </REASONS> <FIELDS> <FIELD refname="System.AssignedTo"> <COPY from="currentuser" /> </FIELD> </FIELDS> </TRANSITION> <TRANSITION from="Unapproved" to="Active"> <REASONS> <DEFAULTREASON value="Approved" /> </REASONS> </TRANSITION> <TRANSITION from="Active" to="Closed"> <REASONS> <DEFAULTREASON value="Completed" /> <REASON value="Deferred" /> <REASON value="Obsolete" /> <REASON value="Cut" /> </REASONS> ...
在工具列上,按一下 [儲存] 儲存對 XML 檔所做的變更。
若要將新的工作項目類型匯入單一專案,請參閱 自訂和管理工作項目類型 [witadmin]。 若要將工作項目類型加入至流程範本,請參閱將工作項目的類型定義加入至流程範本。
若要驗證匯入單一專案的變更
在 Team 總管中,按一下 [重新整理],從伺服器下載最新的更新檔。
這些更新檔含有您剛匯入的變更。 等候數秒,直到載入 [工作項目] 節點為止。 仍在載入中的節點會顯示 [正在執行] 一詞。
使用您所修改的工作項目類型,建立新的工作項目。 若要這樣做,請以滑鼠右鍵按一下 [工作項目] 節點、指向 [加入工作項目],然後按一下工作項目類型。
此工作項目是根據您所變更並匯入的工作項目類型建立。
請注意,初始的 [狀態] 現在成為 [Unapproved],而 [原因] 則為 [New]。 此外,[指派給] 值就是您的帳戶名稱。 按一下 [原因] 欄位,即可看見列出 [New] 和 [Ported] 原因的清單。
在 [標題] 欄位中輸入標題,然後按一下 [儲存],儲存此工作項目。 等候儲存作業完成,可以參考狀態列上的 [項目已儲存] 指示。
在 [狀態] 欄位中,選取 [Active] 值來核准此工作項目,並再次將它轉換。 請注意,[原因] 欄位成為 [Approved]。
在工具列上,按一下 [儲存] 儲存這項轉換。
按一下 [關閉] 關閉工作項目。