我创建了一个名为'Bug_Tracker'的工作项类型,其状态为&传统定义明确。 当使用此工作项创建新错误时,它会被分配给开发人员,但是当开发人员将其标记为“已解决”并分配回QA时,保存工作项会出现以下错误: -
“TF26212:Team Foundation Server无法保存您的更改。工作项类型定义可能存在问题。请重试或联系您的Team Foundation Server管理员。”
以下是工作项的 XML -
<q1:WITD application="Work item type editor" version="1.0" xmlns:q1="http://schemas.microsoft.com/VisualStudio/2008/workitemtracking/typedef">
<WORKITEMTYPE name="Bug Tracker">
DESCRIPTION>Describes a divergence between required and actual behavior, and tracks the work done to correct the defect and verify the correction.</DESCRIPTION>
<FIELDS>
FIELD reportable="dimension" refname="System.Title" name="Title" type="String">
<REQUIRED />
<HELPTEXT>Stories affected and how</HELPTEXT>
</FIELD>
<FIELD reportable="dimension" refname="System.State" name="State" type="String">
<HELPTEXT>Change on reviewing, fixing or verifying the fix. Active = not yet fixed; Resolved = fix not yet verified; Closed = fix verified.</HELPTEXT>
</FIELD>
FIELD reportable="dimension" refname="System.Rev" name="Rev" type="Integer" />
<FIELD reportable="dimension" refname="System.ChangedBy" name="Changed By" syncnamechanges="true" type="String">
<ALLOWEXISTINGVALUE />
<VALIDUSER />
</FIELD>
<FIELD refname="Microsoft.VSTS.TCM.SystemInfo" name="System Info" type="HTML">
<HELPTEXT>Test context, provided automatically by test infrastructure</HELPTEXT>
</FIELD>
FIELD refname="Microsoft.VSTS.TCM.ReproSteps" name="Repro Steps" type="HTML">
<HELPTEXT>How to see the bug. End by contrasting expected with actual behavior.</HELPTEXT>
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.StateChangeDate" name="State Change Date" type="DateTime">
<WHENCHANGED field="System.State">
<SERVERDEFAULT from="clock" />
</WHENCHANGED>
<WHENNOTCHANGED field="System.State">
<READONLY />
</WHENNOTCHANGED>
/FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.ActivatedDate" name="Activated Date" type="DateTime">
<WHENNOTCHANGED field="System.State">
<READONLY />
</WHENNOTCHANGED>
/FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.ActivatedBy" name="Activated By" syncnamechanges="true" type="String">
<WHENNOTCHANGED field="System.State">
<ALLOWEXISTINGVALUE />
<READONLY />
</WHENNOTCHANGED>
</FIELD>
<FIELD reportable="dimension" refname="System.Reason" name="Reason" type="String">
<HELPTEXT>The reason why the bug is in the current state</HELPTEXT>
</FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.ResolvedBy" name="Resolved By" syncnamechanges="true" type="String">
<WHENNOTCHANGED field="System.State">
<ALLOWEXISTINGVALUE />
<READONLY />
</WHENNOTCHANGED>
</FIELD>
<FIELD reportable="dimension" refname="System.AssignedTo" name="Assigned To" syncnamechanges="true" type="String">
<ALLOWEXISTINGVALUE />
<VALIDUSER />
<HELPTEXT>The person currently working on this bug</HELPTEXT>
</FIELD>
<FIELD reportable="dimension" refname="System.WorkItemType" name="Work Item Type" type="String" />
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.ClosedBy" name="Closed By" syncnamechanges="true" type="String">
<WHENNOTCHANGED field="System.State">
<ALLOWEXISTINGVALUE />
<READONLY />
</WHENNOTCHANGED>
</FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.Priority" name="Priority" type="Integer">
<ALLOWEDVALUES>
<LISTITEM value="1" />
<LISTITEM value="2" />
<LISTITEM value="3" />
<LISTITEM value="4" />
</ALLOWEDVALUES>
<DEFAULT from="value" value="2" />
<HELPTEXT>Business importance. 1=must fix; 4=unimportant.</HELPTEXT>
</FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.ResolvedReason" name="Resolved Reason" type="String">
<ALLOWEDVALUES>
<LISTITEM value="As Designed" />
<LISTITEM value="Cannot Reproduce" />
<LISTITEM value="Deferred" />
<LISTITEM value="Duplicate" />
<LISTITEM value="Fixed" />
<LISTITEM value="Obsolete" />
</ALLOWEDVALUES>
<FROZEN />
<HELPTEXT>The reason why the bug was resolved</HELPTEXT>
</FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.StackRank" name="Stack Rank" type="Double">
<HELPTEXT>Work first on items with lower-valued stack rank. Set in triage.</HELPTEXT>
</FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Build.IntegrationBuild" name="Integration Build" type="String">
<SUGGESTEDVALUES>
<LISTITEM value="<None>" />
</SUGGESTEDVALUES>
<SUGGESTEDVALUES filteritems="excludegroups">
<GLOBALLIST name="Builds - TranstutorsProjects" />
</SUGGESTEDVALUES>
<HELPTEXT>The build in which the bug was fixed</HELPTEXT>
</FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Build.FoundIn" name="Found In" type="String">
<SUGGESTEDVALUES>
<LISTITEM value="<None>" />
</SUGGESTEDVALUES>
<SUGGESTEDVALUES filteritems="excludegroups">
<GLOBALLIST name="Builds - TranstutorsProjects" />
</SUGGESTEDVALUES>
<HELPTEXT>The build in which the bug was found</HELPTEXT>
</FIELD>
<FIELD reportable="dimension" refname="System.CreatedDate" name="Created Date" type="DateTime" />
<FIELD reportable="dimension" refname="System.CreatedBy" name="Created By" syncnamechanges="true" type="String" />
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.Severity" name="Severity" type="String">
<ALLOWEDVALUES>
<LISTITEM value="1 - Critical" />
<LISTITEM value="2 - High" />
<LISTITEM value="3 - Medium" />
<LISTITEM value="4 - Low" />
</ALLOWEDVALUES>
<DEFAULT from="value" value="3 - Medium" />
<HELPTEXT>Assessment of the effect of the bug on the project</HELPTEXT>
</FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.ResolvedDate" name="Resolved Date" type="DateTime">
<WHENNOTCHANGED field="System.State">
<READONLY />
</WHENNOTCHANGED>
</FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.ClosedDate" name="Closed Date" type="DateTime">
<WHENNOTCHANGED field="System.State">
<READONLY />
</WHENNOTCHANGED>
</FIELD>
<FIELD refname="System.Description" name="Description" type="PlainText" />
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.ReopenedDate" name="Reopened Date" type="DateTime">
<WHENNOTCHANGED field="System.State">
<READONLY />
</WHENNOTCHANGED>
</FIELD>
<FIELD refname="System.History" name="History" type="History">
<HELPTEXT>Discussion thread plus automatic record of changes</HELPTEXT>
</FIELD>
<FIELD reportable="dimension" refname="Microsoft.VSTS.Common.ReopenedBy" name="Reopened By" type="String">
<WHENNOTCHANGED field="System.State">
<ALLOWEXISTINGVALUE />
<READONLY />
</WHENNOTCHANGED>
</FIELD>
<FIELD refname="System.RelatedLinkCount" name="Related Link Count" type="Integer" />
<FIELD reportable="dimension" refname="System.IterationPath" name="Iteration Path" type="TreePath">
<HELPTEXT>The iteration within which this bug will be fixed</HELPTEXT>
</FIELD>
<FIELD refname="System.IterationId" name="Iteration ID" type="Integer" />
<FIELD refname="System.ExternalLinkCount" name="External Link Count" type="Integer" />
<FIELD reportable="dimension" refname="System.TeamProject" name="Team Project" type="String" />
<FIELD refname="System.HyperLinkCount" name="Hyperlink Count" type="Integer" />
<FIELD refname="System.AttachedFileCount" name="Attached File Count" type="Integer" />
<FIELD refname="System.NodeName" name="Node Name" type="String" />
<FIELD reportable="dimension" refname="System.AreaPath" name="Area Path" type="TreePath">
<HELPTEXT>The area of the product with which this bug is associated</HELPTEXT>
</FIELD>
<FIELD reportable="detail" refname="System.RevisedDate" name="Revised Date" type="DateTime" />
<FIELD reportable="dimension" refname="System.ChangedDate" name="Changed Date" type="DateTime" />
<FIELD reportable="dimension" refname="System.Id" name="ID" type="Integer" />
<FIELD refname="System.AreaId" name="Area ID" type="Integer" />
<FIELD refname="System.AuthorizedAs" name="Authorized As" syncnamechanges="true" type="String" />
</FIELDS>
<WORKFLOW>
<STATES>
<STATE value="Resolved">
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<REQUIRED />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ResolvedDate">
<EMPTY />
</FIELD>
</FIELDS>
</STATE>
<STATE value="Closed">
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<READONLY />
</FIELD>
</FIELDS>
</STATE>
<STATE value="Verified">
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedDate">
<SERVERDEFAULT from="clock" />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<REQUIRED />
</FIELD>
</FIELDS>
</STATE>
<STATE value="New">
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ActivatedDate">
<SERVERDEFAULT from="clock" />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ActivatedBy">
<COPY from="currentuser" />
<REQUIRED />
<VALIDUSER />
</FIELD>
<FIELD refname="System.AssignedTo">
<DEFAULT from="currentuser" />
</FIELD>
</FIELDS>
</STATE>
</STATES>
<TRANSITIONS>
<TRANSITION from="" to="New">
<REASONS>
<DEFAULTREASON value="New Bug" />
</REASONS>
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ActivatedBy">
<ALLOWEXISTINGVALUE />
<COPY from="currentuser" />
<VALIDUSER />
<REQUIRED />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ActivatedDate">
<SERVERDEFAULT from="clock" />
</FIELD>
<FIELD refname="System.AssignedTo">
<COPY from="field" field="System.CreatedBy" />
</FIELD>
</FIELDS>
</TRANSITION>
<TRANSITION from="New" to="Resolved">
<ACTIONS>
<ACTION value="Microsoft.VSTS.Actions.Checkin" />
</ACTIONS>
<REASONS>
<REASON value="Deferred">
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<COPY from="value" value="Deferred" />
<ALLOWEDVALUES>
<LISTITEM value="Deferred" />
</ALLOWEDVALUES>
</FIELD>
</FIELDS>
</REASON>
<REASON value="Duplicate">
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<COPY from="value" value="Duplicate" />
<ALLOWEDVALUES>
<LISTITEM value="Duplicate" />
</ALLOWEDVALUES>
</FIELD>
</FIELDS>
</REASON>
<REASON value="As Designed">
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<COPY from="value" value="As Designed" />
<ALLOWEDVALUES>
<LISTITEM value="As Designed" />
</ALLOWEDVALUES>
</FIELD>
</FIELDS>
</REASON>
<REASON value="Cannot Reproduce">
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<COPY from="value" value="Cannot Reproduce" />
<ALLOWEDVALUES>
<LISTITEM value="Cannot Reproduce" />
</ALLOWEDVALUES>
</FIELD>
</FIELDS>
</REASON>
<REASON value="Obsolete">
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<COPY from="value" value="Obsolete" />
<ALLOWEDVALUES>
<LISTITEM value="Obsolete" />
</ALLOWEDVALUES>
</FIELD>
</FIELDS>
</REASON>
<DEFAULTREASON value="Fixed">
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<COPY from="value" value="Fixed" />
<ALLOWEDVALUES>
<LISTITEM value="Fixed" />
</ALLOWEDVALUES>
</FIELD>
</FIELDS>
</DEFAULTREASON>
</REASONS>
<FIELDS>
<FIELD refname="System.AssignedTo">
<COPY from="field" field="System.CreatedBy" />
<ALLOWEXISTINGVALUE />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ActivatedDate">
<READONLY />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ActivatedBy">
<ALLOWEXISTINGVALUE />
<READONLY />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ResolvedBy">
<ALLOWEXISTINGVALUE />
<COPY from="currentuser" />
<VALIDUSER />
<REQUIRED />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ResolvedDate">
<SERVERDEFAULT from="clock" />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<COPY from="value" value="Fixed" />
</FIELD>
</FIELDS>
</TRANSITION>
<TRANSITION from="Resolved" to="Verified">
<REASONS>
<DEFAULTREASON value="Fixed" />
</REASONS>
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedBy">
<ALLOWEXISTINGVALUE />
<COPY from="currentuser" />
<VALIDUSER />
<REQUIRED />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ResolvedDate">
<SERVERDEFAULT from="clock" />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ResolvedReason">
<COPY from="value" value="Fixed" />
</FIELD>
</FIELDS>
</TRANSITION>
<TRANSITION from="Verified" to="Resolved">
<REASONS>
<REASON value="Reopened" />
<DEFAULTREASON value="Not fixed" />
</REASONS>
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ActivatedBy">
<ALLOWEXISTINGVALUE />
<COPY from="currentuser" />
<VALIDUSER />
<REQUIRED />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ActivatedDate">
<SERVERDEFAULT from="clock" />
</FIELD>
<FIELD refname="System.AssignedTo">
<COPY from="field" field="Microsoft.VSTS.Common.ResolvedBy" />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ReopenedBy">
<ALLOWEXISTINGVALUE />
<COPY from="currentuser" />
<VALIDUSER />
<REQUIRED />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ReopenedDate">
<SERVERDEFAULT from="clock" />
</FIELD>
</FIELDS>
</TRANSITION>
<TRANSITION from="Verified" to="Closed">
<REASONS>
<DEFAULTREASON value="Verified Fixed" />
</REASONS>
<FIELDS>
<FIELD refname="Microsoft.VSTS.Common.ResolvedBy">
<ALLOWEXISTINGVALUE />
<READONLY />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ResolvedDate">
<READONLY />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ClosedDate">
<SERVERDEFAULT from="clock" />
</FIELD>
<FIELD refname="Microsoft.VSTS.Common.ClosedBy">
<ALLOWEXISTINGVALUE />
<COPY from="currentuser" />
<VALIDUSER />
<REQUIRED />
</FIELD>
</FIELDS>
</TRANSITION>
</TRANSITIONS>
</WORKFLOW>
<FORM>
<Layout>
<Group>
<Column PercentWidth="100">
<Control FieldName="System.Title" Type="FieldControl" Label="&Title:" LabelPosition="Left" />
</Column>
</Group>
<Group>
<Column PercentWidth="50">
<Group Label="Status">
<Column PercentWidth="100">
<Control FieldName="System.State" Type="FieldControl" Label="&State:" LabelPosition="Left" />
<Control FieldName="System.Reason" Type="FieldControl" Label="&Reason:" LabelPosition="Left" />
<Control FieldName="Microsoft.VSTS.Common.ResolvedReason" Type="FieldControl" Label="Resolved Reason:" LabelPosition="Left" ReadOnly="True" />
<Control FieldName="System.AssignedTo" Type="FieldControl" Label="Assigned To:" LabelPosition="Left" />
</Column>
</Group>
</Column>
<Column PercentWidth="50">
<Group Label="Classification">
<Column PercentWidth="100">
<Control FieldName="System.AreaPath" Type="WorkItemClassificationControl" Label="&Area:" LabelPosition="Left" />
<Control FieldName="System.IterationPath" Type="WorkItemClassificationControl" Label="Ite&ration:" LabelPosition="Left" />
</Column>
</Group>
</Column>
</Group>
<Group>
<Column PercentWidth="100">
<Group Label="Planning">
<Column PercentWidth="33">
<Control FieldName="Microsoft.VSTS.Common.StackRank" Type="FieldControl" Label="Stack Ran&k:" LabelPosition="Left" NumberFormat="DecimalNumbers" MaxLength="10" />
</Column>
<Column PercentWidth="33">
<Control FieldName="Microsoft.VSTS.Common.Priority" Type="FieldControl" Label="&Priority:" LabelPosition="Left" />
</Column>
<Column PercentWidth="33">
<Control FieldName="Microsoft.VSTS.Common.Severity" Type="FieldControl" Label="Se&verity:" LabelPosition="Left" />
</Column>
</Group>
</Column>
</Group>
<TabGroup>
<Tab Label="Details">
<Group>
<Column PercentWidth="50">
<Control FieldName="Microsoft.VSTS.TCM.ReproSteps" Type="HtmlFieldControl" Label="Steps to Repro&duce:" LabelPosition="Top" Dock="Fill" MinimumSize="(100,200)" />
</Column>
<Column PercentWidth="50">
<Control FieldName="System.History" Type="WorkItemLogControl" Label="&History:" LabelPosition="Top" Dock="Fill" />
</Column>
</Group>
</Tab>
<Tab Label="System Info">
<Group>
<Column PercentWidth="50">
<Control FieldName="Microsoft.VSTS.Build.FoundIn" Type="FieldControl" Label="&Found in Build:" LabelPosition="Left" />
</Column>
<Column PercentWidth="50">
<Control FieldName="Microsoft.VSTS.Build.IntegrationBuild" Type="FieldControl" Label="In&tegrated in Build:" LabelPosition="Left" />
</Column>
</Group>
<Control FieldName="Microsoft.VSTS.TCM.SystemInfo" Type="HtmlFieldControl" Label="System I&nfo:" LabelPosition="Top" Dock="Fill" />
</Tab>
<Tab Label="Test Cases">
<Control Type="LinksControl" Label="Test &Cases testing this Bug:" LabelPosition="Top" Name="TestedBy">
<LinksControlOptions>
<LinkColumns>
<LinkColumn RefName="System.ID" />
<LinkColumn RefName="System.WorkItemType" />
<LinkColumn RefName="System.Title" />
<LinkColumn RefName="System.AssignedTo" />
<LinkColumn RefName="System.State" />
<LinkColumn LinkAttribute="System.Links.Comment" />
</LinkColumns>
<WorkItemLinkFilters FilterType="include">
<Filter LinkType="Microsoft.VSTS.Common.TestedBy" FilterOn="forwardname" />
</WorkItemLinkFilters>
<ExternalLinkFilters FilterType="excludeAll" />
<WorkItemTypeFilters FilterType="include">
<Filter WorkItemType="Test Case" />
</WorkItemTypeFilters>
</LinksControlOptions>
</Control>
</Tab>
<Tab Label="All Links">
<Control Type="LinksControl" LabelPosition="Top" Name="GeneralLinks">
<LinksControlOptions>
<LinkColumns>
<LinkColumn RefName="System.ID" />
<LinkColumn RefName="System.WorkItemType" />
<LinkColumn RefName="System.Title" />
<LinkColumn RefName="System.AssignedTo" />
<LinkColumn RefName="System.State" />
<LinkColumn LinkAttribute="System.Links.Comment" />
</LinkColumns>
<WorkItemLinkFilters FilterType="includeAll" />
<ExternalLinkFilters FilterType="includeAll" />
<WorkItemTypeFilters FilterType="includeAll" />
</LinksControlOptions>
</Control>
</Tab>
<Tab Label="Attachments">
<Control Type="AttachmentsControl" LabelPosition="Top" />
</Tab>
</TabGroup>
</Layout>
</FORM>
</WORKITEMTYPE>
</q1:WITD>
对此方面的任何帮助表示高度赞赏!