使用工作項目欄位
工作項目欄位可用來追蹤某個工作項目類型的資料、定義查詢的篩選準則,以及產生報表。必須定義任何資料項目,除了核心的 Team Foundation Server (TFS) 系統資料欄位),您要追蹤、用以定義工作流程,或要在工作項目類型的表單當做工作項目欄位。您可以在工作項目類型或全域工作流程的定義內定義工作項目欄位。
工作項目欄位是以 Team 專案集合為單位受到維護。執行下列其中一項工作時會加入欄位:
建立 Team 專案:工作項目類型或全域工作流程的定義內所定義的欄位,以及為選取之流程範本所定義的欄位都會建立。針對 Team 專案所定義的每個工作項目類型,都會自動定義核心系統欄位。如需這些欄位的清單,請參閱Visual Studio ALM 的工作項目欄位參考。
匯入工作項目類型的定義。工作項目類型定義內所定義的所有新欄位都會加入至集合。如需詳細資訊,請參閱所有 WITD XML 項目參考。
匯入全域工作流程定義。全域工作流程內所定義的所有新欄位都會加入至集合。當您要維護一組可供數個工作項目類型共用的工作項目欄位時,可以定義全域工作流程。如需詳細資訊,請參閱自訂全域工作流程。
將專案設定為 Project Web App (PWA) 執行個體。在您安裝 Project Server 後的 Team Foundation Server 擴充功能,請將對應 Team Foundation各種元件設定整合。對應集合時,會匯入 Project Server 欄位中支援數個欄位的全域工作流程定義。如需詳細資訊,請參閱加入以支援資料同步處理的 Project Server 欄位。
所有 Team 專案的所有工作項目類型和所有全域工作流程內所定義的所有欄位,構成集合所定義的完整欄位集。您可以變更現有欄位的屬性,也可以重新命名和刪除現有欄位。不過在變更欄位時,需要付出一些代價。如需詳細資訊,請參閱自訂專案追蹤資料、表單、工作流程和其他物件。
若要加入或自訂集合的欄位,請修改工作項目類型或全域工作流程的類型定義的 XML 內容。您可以在定義的 FIELDS 區段中的 FIELD 項目定義每個欄位的工作項目類型或全域工作流程的類型。如需這些檔案之結構與位置的詳細資訊,請參閱所有 WITD XML 項目參考和自訂全域工作流程。
本主題內容
FIELD (定義) 語法結構
欄位資料型別
指派給欄位的可報告屬性
索引欄位
FIELD (定義) 子項目
系統欄位和預先定義的欄位
FIELD (定義) 語法結構
每個 FIELD (定義) 項目都有選擇性易記名稱和必要的參考名稱。參考名稱在集合內必須是唯一的。如需詳細資訊,請參閱工作項目追蹤物件的命名慣例。
重要事項 |
---|
您可以使用 witadmin changefield 命令列工具,變更欄位的易記名稱。不過,如果重新命名欄位,新名稱會影響集合內所有 Team 專案的所有工作項目類型。 |
由定義檔的下列 XML 語法來定義欄位的工作項目類型的。
<FIELD name="fieldDisplayName"
refname="fieldReferenceName" type="String | Integer | Double | DateTime | PlainText | HTML | History | TreePath | GUID"
syncnamechanges="true | false"
reportingname="reportingDisplayName"
reportingrefname="reportingReferenceName"
reportable="Dimension | Detail | Measure"
formula="sum" >
<ALLOWEDVALUES> . . . </ALLOWEDVALUES>
<ALLOWEXISTINGVALUE />
<CANNOTLOSEVALUE />
<COPY />
<DEFAULT />
<EMPTY />
<FROZEN />
<HELPTEXT> . . . </HELPTEXT>
<MATCH />
<NOTSAMEAS />
<PROHIBITEDVALUES /> . . . </PROHIBITEDVALUES>
<READONLY />
<REQUIRED />
<SERVERDEFAULT />
<SUGGESTEDVALUES /> . . . </SUGGESTEDVALUES>
<VALIDUSER />
<WHEN>> . . . </WHEN>
<WHENNOT> . . . </WHENNOT>
<WHENCHANGED> . . . </WHENCHANGED>
<WHENNOTCHANGED> . . . </WHENNOTCHANGED>
</FIELD>
如需詳細資訊,請參閱FIELD (定義) 項目。
回到頁首
欄位資料型別
欄位型別會定義您可以在欄位中儲存的資料類型和大小。欄位只能在 Team 專案集合中定義的型別。這項限制可促使組織在各個專案與工作項目類型中使用共通的欄位。
下列清單顯示支援的欄位型別:
資料型別 |
描述 |
---|---|
DateTime |
根據國際標準時間 (UTC) 時間點來指定日期。 使用 FieldControl 或 DateTimeControl 的 type 屬性,將 DateTime 欄位加入至工作項目表單。 |
Double |
指定浮點值。Double 欄位通常是用於查詢篩選條件和結果清單中。 使用 FieldControltype 屬性,將 Double 欄位加入至工作項目表單。 |
GUID |
指定要用來包含唯一識別項的欄位。 您無法將 GUID 欄位加入至工作項目表單。 |
History |
支援檢視討論區和追蹤其他歷程資訊。
注意事項
System.History 欄位是唯一使用此資料型別的欄位。您無法使用這個資料型別來定義自訂欄位。
將 System.History 欄位加入至工作項目表單使用支援 RTF 文字格式控制項的 WorkItemLogControl 的 type 屬性。 |
HTML |
支援擷取 RTF 文字資料和使用較長的文字描述,例如工作項目描述。HTML 欄位與 PlainText 欄位的不同之處在於 HTML 欄位為 HTML 的強型別 (Strongly Typed),因為 HTML 欄位能夠以較豐富的方式顯示資訊。 使用 HTMLControltype 屬性,將 HTML 欄位加入至工作項目表單,支援 RTF 文字格式控制項。 |
Integer |
指定 32 位元帶正負號的整數值。Integer 欄位通常是用於查詢篩選條件和結果清單中。 使用 FieldControltype 屬性,將 Integer 欄位加入至工作項目表單。 |
PlainText |
支援輸入可以包含超過 255 個 Unicode 字元的文字字串。 將 PlainText 欄位加入至工作項目表單使用 FieldControl 型別的屬性和限制為純文字或支援 RTF 文字格式控制項的 HTMLControl 的 type 屬性。 |
String |
支援輸入可以包含最多 255 個 Unicode 字元的文字字串。String 欄位適用於標籤,或其他最長只有一行的簡短文字字串。String 欄位經常用於查詢篩選條件和結果清單中。 使用 FieldControltype 屬性,將 String 欄位加入至工作項目表單。 |
TreePath |
指定一個以階層或樹狀結構顯示項目的欄位,例如需要顯示產品的區域和反覆項目路徑時。
注意事項
System.AreaPath 和 System.IterationPath 欄位是唯一使用這個資料型別的欄位。您無法使用這個資料型別來定義自訂欄位。
使用 WorkItemClassificationControl type 屬性,將 System.AreaPath 和 System.IterationPath 欄位加入至工作項目表單。 |
回到頁首
指派給欄位的可報告屬性
某些欄位值特別適合用於報告。透過使用工作項目類型定義語言,您可以指定下列選擇性屬性:
reportable.如果設定了可報告的屬性設定為 None、 Detail、 Dimension或 Measure,視,以及如何在報表要欄位中。欄位的這個屬性值如果不是 None,則此欄位的資料會匯出至資料倉儲,並且可以納入報表中。
在您將現有欄位加入至工作項目類型時,會使用 reportable 屬性目前的值。在您將欄位加入至工作項目類型時,除非您使用 reportable 屬性明確指定要啟用報告,否則會停用報告。
reportingname.將不同的標籤所使用的欄位時,資料會出現在報表時。如果您未指定值,則會使用指派給 name 屬性的易記名稱。
reportingrefname.將不同的參考名稱所使用的欄位,而資料匯出至關聯式資料倉儲時。如果您未指定值,則會使用指派給 refname 屬性的值。
使用這個屬性來合併或分離在報表中的欄位。若要合併有不同的參考名稱和定義於不同的專案集合中的兩個欄位,您可以指派相同的 reportingrefname 給這兩個欄位。若要分離有相同的參考名稱但定義於不同的專案集合中的兩個欄位,您可以指派不同的 reportingrefname 給每個欄位。
在定義欄位之後,您可以在命令提示字元中使用 witadmin changefield 命令,變更除了 refname 屬性以外之所有屬性的值。
如需基於報告目的標示欄位的最佳做法資訊,請參閱加入和修改工作項目欄位以支援報告。
回到頁首
Reportable 屬性值
如下表所述,您可以將下列其中一個值指派給 reportable 屬性:none、dimension、detail 和 measure。
注意事項 |
---|
在欄位用於工作項目之後,您就可以讓它成為可報告。在設定 reportable 值之後,複製到倉儲之工作項目的新修訂將會包含欄位值。不過,已經在倉儲中的修訂將不會使用現有的值進行資料回填。 |
屬性值 |
描述 |
---|---|
Detail |
Detail 型別只適用於 Integer、Double、String 或 DateTime 欄位。 這個欄位中的資料會移入工作項目和目前工作項目資料表中的關聯式倉儲資料庫,但不會移入 SQL Server Analysis Services Cube。對無限制的文字欄位使用這個型別,您就能在報表中使用這些欄位,而且 Cube 不會變得過大。 |
Dimension |
Dimension 型別只適用於 Integer、Double、String 或 DateTime 欄位。 這個欄位中的資料會進入關聯式倉儲資料庫以及 Analysis Services Cube 成為工作項目維度的屬性,以便讓資料可用來篩選報表。請對具有有效值清單的欄位使用這個型別。Work Item Type 和 State 是 dimension 的良好範例。 |
Measure |
Measure 型別只適用於 Integer 和 Double 欄位。Measure 是報表中的數值。 在 Analysis Services Cube 處理期間,設為 Measure 的欄位上會預先計算資料。例如,工作項目和目前的工作項目量值群組包含下列欄位的累積資料:[原始評估]、[剩餘時數] 和 [已完成的時數]。如需量值群組的詳細資訊,請參閱Team System 之 Analysis Services Cube 中提供的透視圖和測量群組。 在您指定 Measure 時,您必須在 formula 屬性中指定 sum,此值會傳回查詢中所參考之每個 measure 的總和。 |
None |
當您不要將欄位包含在報表時,指定 None。這個值是預設指派。 |
回到頁首
示範如何指定報告的範例
Detail 範例
<FIELD refname="MyCorp.Summary" name="Summary" type="String" reportable="detail">
Dimension 範例
<FIELD refname="MyCorp.Category" name="Category" type="String" reportable="dimension">
Measure 範例
<FIELD refname="MyCorp.Cost" name="Cost" type="Integer" reportable="measure" formula="sum">
索引欄位
您可以使用 witadmin indexfield 命令,啟用或停用工作項目欄位的索引。啟用欄位的索引時,如果工作項目的查詢指定了該欄位,則尋找這些工作項目的效能可能會提高。如果您加入會在許多工作項目查詢中使用的自訂欄位,則可以考慮啟用該欄位的索引。如需詳細資訊,請參閱管理工作項目欄位 [witadmin]。
回到頁首
FIELD (定義) 子項目
您可以為工作項目 (Item) 欄位指定一些選擇性子項目 (Element),例如:
說明文字:定義會針對工作項目表單上的欄位顯示的工具提示或說明資訊 (HELPTEXT)。
欄位限制:將欄位指定為必要項、唯讀、空白、凍結或需符合特定模式 (REQUIRED、READONLY、EMPTY、FROZEN、MATCH)。
自動填入欄位值:指定欄位的值 (DEFAULT、COPY、SERVERDEFAULT)。
欄位清單:指定允許值、建議值或禁用值。(ALLOWEDVALUES, SUGGESTEDVALUES, PROHIBITEDVALUES)
欄位條件:在另一個欄位已變更或未變更、另一個欄位具有或不具有特定值,或其他情況時,將一個或多個規則套用至欄位 (WHEN、WHENNOT、WHENCHANGED、WHENNOTCHANGED、CANNOTLOSEVALUE、 NOTSAMEAS)。
如需詳細資訊,請參閱所有 FIELD XML 項目參考。
回到頁首
系統欄位和預先定義的欄位
系統定義的所有欄位都具有開頭為 System 的參考名稱,例如 System.AreaPath、System.AssignedTo,依此模式類推。
預設定義的預先定義欄位處理 TFS 提供從 Microsoft.VSTS 起始範本進一步然後不同以它們的使用方式。預先定義欄位的範例包括 (分別為共用用途、排程用途及 Microsoft Project 整合、Team Foundation Build 整合和 Team Foundation 整合):
Microsoft.VSTS.Common.Priority
Microsoft.VSTS.Scheduling.DueDate
Microsoft.VSTS.Build.FoundIn
Microsoft.VSTS.TCM.Steps
如需預設流程範本定義 TFS 提供所有系統欄位和預先定義欄位的概觀,請參閱 Visual Studio ALM 的工作項目欄位參考。如需指定欄位名稱的詳細資訊,請參閱工作項目追蹤物件的命名慣例。
回到頁首
隱藏和非可變屬性和工作項目欄位總管
除了您可以為工作項目欄位變更的屬性之外,還有一些不可變更和實際隱藏屬性每個欄位。使用工作項目欄位總管工具,您可以搜尋這些欄位的指派。從流程編輯器 (的強大工具存取工作項目欄位總管工具。
工作項目欄位總管
注意事項 |
---|
流程編輯器 (的強大工具為自訂 Team Foundation Server 提供圖形化使用者介面處理範本。您可以使用這個工具匯入和匯出工作項目類型,修改流程範本的內容和探索為 Team 專案集合定義的欄位集合。如需詳細資訊,請參閱下列 Microsoft 網站的網頁:Team Foundation Server Power Tools (英文)。 |