在TFS升级之后,标题字段需要"标识"

时间:2016-05-06 13:54:37

标签: tfs tfs2013 tfs2015 tfs-workitem workitem

我已从tfs 2013 update 3升级到tfs 2015 update 2.我有两个项目集合,一个工作正常。另一个系列让我头疼不已!

我有团队项目使用自定义模板,但也有scrum / agile,所有团队项目在有问题的集合中都有相同的问题。

当我升级旧版本的tfs(tfs 2013 update 3)时,一切看起来都不错,但是在收集团队项目中,工作项“标题”字段都是“00000000-0000-0000-0000-000000000000”。我更深入地研究了问题,看起来system.title字段正在寻找“身份”。

创建新的产品备份日志项目时,我在“标题”字段中输入“test”,我收到以下错误“值的标识”TEST“for field”TITLE“是一个未知的标识”。该系列的先前版本的TFS(2013更新3)也附加了,在网络前端没有任何问题。 我们已经导出了XML工作项定义,没有任何“标题”字段具有链接到用户列表的任何约束,或者任何列表 - 唯一的限制是该字段是必需的。

有没有人有这个问题或者可以说明发生了什么?从旧环境到新环境的唯一变化是旧环境具有SharePoint服务器。

仅确认所有工作项包含值“00000000-0000-0000-0000-000000000000。

Identity error - Backlog Item

System.Title After Upgrade

Product Backlog Item system.title example

pbi.layout

<?xml version="1.0" encoding="UTF-8"?>

-<witd:WITD xmlns:witd="http://schemas.microsoft.com/VisualStudio/2008/workitemtracking/typedef" version="1.0" application="Work item type editor">


-<WORKITEMTYPE name="Product Backlog Item">

<DESCRIPTION>Tracks an activity the user will be able to perform with the product.</DESCRIPTION>


-<FIELDS>

<FIELD name="Iteration Path" reportable="dimension" type="TreePath" refname="System.IterationPath"/>

<FIELD name="Iteration ID" type="Integer" refname="System.IterationId"/>

<FIELD name="External Link Count" type="Integer" refname="System.ExternalLinkCount"/>

<FIELD name="Team Project" reportable="dimension" type="String" refname="System.TeamProject"/>

<FIELD name="Hyperlink Count" type="Integer" refname="System.HyperLinkCount"/>

<FIELD name="Attached File Count" type="Integer" refname="System.AttachedFileCount"/>

<FIELD name="Node Name" type="String" refname="System.NodeName"/>

<FIELD name="Area Path" reportable="dimension" type="TreePath" refname="System.AreaPath"/>

<FIELD name="Revised Date" reportable="detail" type="DateTime" refname="System.RevisedDate"/>

<FIELD name="Changed Date" reportable="dimension" type="DateTime" refname="System.ChangedDate"/>

<FIELD name="ID" reportable="dimension" type="Integer" refname="System.Id"/>

<FIELD name="Area ID" type="Integer" refname="System.AreaId"/>

<FIELD name="Authorized As" type="String" refname="System.AuthorizedAs" syncnamechanges="true"/>


-<FIELD name="Title" reportable="dimension" type="String" refname="System.Title">

<REQUIRED/>

</FIELD>

<FIELD name="State" reportable="dimension" type="String" refname="System.State"/>

<FIELD name="Authorized Date" type="DateTime" refname="System.AuthorizedDate"/>

<FIELD name="Watermark" type="Integer" refname="System.Watermark"/>

<FIELD name="Rev" reportable="dimension" type="Integer" refname="System.Rev"/>

<FIELD name="Changed By" reportable="dimension" type="String" refname="System.ChangedBy" syncnamechanges="true"/>

<FIELD name="Reason" reportable="dimension" type="String" refname="System.Reason"/>


-<FIELD name="Assigned To" reportable="dimension" type="String" refname="System.AssignedTo" syncnamechanges="true">

<ALLOWEXISTINGVALUE/>

<VALIDUSER group="[project]\Scrum Team"/>

</FIELD>

<FIELD name="Work Item Type" reportable="dimension" type="String" refname="System.WorkItemType"/>

<FIELD name="Created Date" reportable="dimension" type="DateTime" refname="System.CreatedDate"/>

<FIELD name="Created By" reportable="dimension" type="String" refname="System.CreatedBy" syncnamechanges="true"/>

<FIELD name="Description" type="HTML" refname="System.Description"/>

<FIELD name="History" type="History" refname="System.History"/>

<FIELD name="Related Link Count" type="Integer" refname="System.RelatedLinkCount"/>

<FIELD name="Tags" type="PlainText" refname="System.Tags"/>

<FIELD name="Board Column" reportable="dimension" type="String" refname="System.BoardColumn"/>

<FIELD name="Board Column Done" reportable="dimension" type="Boolean" refname="System.BoardColumnDone"/>

<FIELD name="Board Lane" reportable="dimension" type="String" refname="System.BoardLane"/>


-<FIELD name="Integration Build" reportable="dimension" type="String" refname="Microsoft.VSTS.Build.IntegrationBuild">


-<SUGGESTEDVALUES expanditems="true">

<LISTITEM value="<None>"/>

</SUGGESTEDVALUES>


-<SUGGESTEDVALUES expanditems="true" filteritems="excludegroups">

<GLOBALLIST name="Builds - Software"/>

</SUGGESTEDVALUES>

</FIELD>


-<FIELD name="Description HTML" type="HTML" refname="Microsoft.VSTS.Common.DescriptionHtml">

<DEFAULT value="The User Story must include: A Role, the Requirement and a Justification for the requirement. EXAMPLE USER STORY: As an [Electrical Lead], I want [to be able to navigate to the Results Analyser from a web browser], so that [I can analyse test results]." from="value"/>

</FIELD>

<FIELD name="Backlog Priority" reportable="detail" type="Double" refname="Microsoft.VSTS.Common.BacklogPriority"/>


-<FIELD name="Effort" reportable="measure" type="Double" refname="Microsoft.VSTS.Scheduling.Effort" formula="sum">


-<ALLOWEDVALUES expanditems="true">

<LISTITEM value="1"/>

<LISTITEM value="13"/>

<LISTITEM value="2"/>

<LISTITEM value="3"/>

<LISTITEM value="5"/>

<LISTITEM value="8"/>

</ALLOWEDVALUES>

</FIELD>


-<FIELD name="Business Value" reportable="measure" type="Integer" refname="Microsoft.VSTS.Common.BusinessValue" formula="sum">


-<ALLOWEDVALUES expanditems="true">

<LISTITEM value="1"/>

<LISTITEM value="2"/>

<LISTITEM value="3"/>

<LISTITEM value="4"/>

<LISTITEM value="5"/>

</ALLOWEDVALUES>

<DEFAULT value="3" from="value"/>

</FIELD>


-<FIELD name="Detailed Requirement" type="HTML" refname="Custom.DetailedRequirement">

<HELPTEXT>Detailed Business Requirement</HELPTEXT>

</FIELD>


-<FIELD name="Department" type="String" refname="Custom.Department">

<HELPTEXT>Department</HELPTEXT>

</FIELD>


-<FIELD name="Office" type="String" refname="Custom.Office">

<HELPTEXT>Stakeholder's Office</HELPTEXT>

</FIELD>


-<FIELD name="Telephone Number" type="String" refname="Custom.Telephone">

<HELPTEXT>Telephone Number</HELPTEXT>

</FIELD>


-<FIELD name="Email Address" type="String" refname="Custom.Email">

<HELPTEXT>Stakeholder's email address</HELPTEXT>

</FIELD>


-<FIELD name="Acceptance Test" type="HTML" refname="Custom.AcceptanceTest">

<HELPTEXT>Acceptance Test</HELPTEXT>

</FIELD>


-<FIELD name="Stakeholder" type="String" refname="Custom.StakeholderName">

<HELPTEXT>Stakeholder Name</HELPTEXT>

</FIELD>


-<FIELD name="WorkItem Notes" type="HTML" refname="Custom.WINotes">

<HELPTEXT>Work Item Notes</HELPTEXT>

</FIELD>


-<FIELD name="Dependancy" type="String" refname="Custom.Dependancy">

<HELPTEXT>Story is dependant on another story</HELPTEXT>


-<ALLOWEDVALUES expanditems="true">

<LISTITEM value="No"/>

<LISTITEM value="Yes"/>

</ALLOWEDVALUES>

<DEFAULT value="No" from="value"/>

</FIELD>


-<FIELD name="Relates" type="String" refname="Custom.Relates">

<HELPTEXT>Story relates to another story</HELPTEXT>


-<ALLOWEDVALUES expanditems="true">

<LISTITEM value="No"/>

<LISTITEM value="Yes"/>

</ALLOWEDVALUES>

<DEFAULT value="No" from="value"/>

</FIELD>


-<FIELD name="Support" type="String" refname="Custom.Support">

<HELPTEXT>Related to a Support Ticket</HELPTEXT>


-<ALLOWEDVALUES expanditems="true">

<LISTITEM value="No"/>

<LISTITEM value="Yes"/>

</ALLOWEDVALUES>

<DEFAULT value="No" from="value"/>

</FIELD>


-<FIELD name="Rank" reportable="detail" type="Integer" refname="Custom.Rank">

<HELPTEXT>Delivery Order</HELPTEXT>

</FIELD>


-<FIELD name="Planned Sprint" type="String" refname="Custom.PlannedSprint">


-<ALLOWEDVALUES expanditems="true">

<LISTITEM value="Sprint 1"/>

<LISTITEM value="Sprint 2"/>

<LISTITEM value="Sprint 3"/>

</ALLOWEDVALUES>

</FIELD>


-<FIELD name="Planned Release" type="String" refname="Custom.PlannedRelease">


-<ALLOWEDVALUES expanditems="true">

<LISTITEM value="Rel 1"/>

<LISTITEM value="Rel 2"/>

<LISTITEM value="Rel 3"/>

<LISTITEM value="Rel 4"/>

<LISTITEM value="Rel 5"/>

<LISTITEM value="Rel 6"/>

<LISTITEM value="Rel 7"/>

<LISTITEM value="Rel 8"/>

<LISTITEM value="Rel 9"/>

</ALLOWEDVALUES>

</FIELD>

<FIELD name="Version" type="String" refname="Custom.Version"/>

</FIELDS>


-<WORKFLOW>


-<STATES>


-<STATE value="Accepted">


-<FIELDS>


-<FIELD refname="Microsoft.VSTS.Common.BusinessValue">

<READONLY/>

</FIELD>


-<FIELD refname="Microsoft.VSTS.Scheduling.Effort">

<READONLY/>

</FIELD>

</FIELDS>

</STATE>

<STATE value="Deleted"/>

<STATE value="In Analysis"/>

<STATE value="In Development"/>

<STATE value="In test"/>

<STATE value="New"/>

<STATE value="Pending Approval"/>

<STATE value="Ready For Analysis"/>

<STATE value="Ready for Development"/>

<STATE value="Ready for Signoff"/>

<STATE value="Ready For Test"/>

<STATE value="Test Failed"/>

</STATES>


-<TRANSITIONS>


-<TRANSITION from="Ready for Development" for="[project]\Scrum Team" to="In Development">


-<REASONS>

<DEFAULTREASON value="Backlog Item: Assigned"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="In Development" for="[project]\Scrum Team" to="Ready For Test">


-<REASONS>

<DEFAULTREASON value="Backlog Item: Development Completed"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="Ready For Test" for="[project]\Scrum Team" to="In test">


-<REASONS>

<DEFAULTREASON value="Backlog Item: In Test"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="In test" for="[project]\Scrum Team" to="Ready for Signoff">


-<REASONS>

<DEFAULTREASON value="Backlog Item: QA Tests Completed"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="Ready for Signoff" for="[project]\Scrum Master" to="Accepted">


-<REASONS>

<DEFAULTREASON value="Backlog Item: Stakeholder Accepted"/>

</REASONS>


-<FIELDS>


-<FIELD refname="Custom.Version">

<REQUIRED for="[global]\Project Collection Valid Users"/>

</FIELD>

</FIELDS>

</TRANSITION>


-<TRANSITION from="In test" to="In Development">


-<REASONS>

<DEFAULTREASON value="Backlog Item - Development Issues Found"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="In test" for="[project]\Scrum Team" to="Test Failed">


-<REASONS>

<DEFAULTREASON value="Backlog Item: Failed Quality Assurance"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="Test Failed" for="[project]\Scrum Team" to="In Development">


-<REASONS>

<DEFAULTREASON value="Backlog Item: In Re-test"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="" for="[project]\Scrum Team" to="New">


-<REASONS>

<DEFAULTREASON value="New backlog item"/>

<REASON value="Build Failure"/>

</REASONS>


-<FIELDS>


-<FIELD refname="Microsoft.VSTS.Common.DescriptionHtml">

<DEFAULT value="As a &lt;type of user&gt; I want &lt;some goal&gt; so that &lt;some reason&gt;" from="value"/>

</FIELD>


-<FIELD refname="Microsoft.VSTS.Common.BacklogPriority">

<DEFAULT value="3" from="value"/>

</FIELD>

</FIELDS>

</TRANSITION>


-<TRANSITION from="In Analysis" for="[project]\Product Owner" to="New">


-<REASONS>

<DEFAULTREASON value="Backlog Item: Out of Scope"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="Ready for Development" for="[project]\Scrum Master" to="New">


-<REASONS>

<DEFAULTREASON value="Backlog Item: Out of Scope"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="New" for="[project]\Scrum Team" to="Deleted">


-<REASONS>

<DEFAULTREASON value="Backlog Item: Obsolete"/>

<REASON value="Backlog Item: Created in Error"/>

<REASON value="Backlog Item: Duplicated"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="New" to="In Analysis">


-<REASONS>

<DEFAULTREASON value="-"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="In Analysis" to="Ready for Development">


-<REASONS>

<DEFAULTREASON value="Analysis Complete"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="Deleted" to="New">


-<REASONS>

<DEFAULTREASON value="Deleted in error"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="Ready for Signoff" to="Test Failed">


-<REASONS>

<DEFAULTREASON value="Failed Regression or UAT"/>

</REASONS>

</TRANSITION>


-<TRANSITION from="Ready for Signoff" to="In Analysis">


-<REASONS>

<DEFAULTREASON value="Customer Amendment"/>

</REASONS>

</TRANSITION>

</TRANSITIONS>

</WORKFLOW>


-<FORM>


-<Layout>


-<Group>


-<Column PercentWidth="100">

<Control LabelPosition="Left" Label="&Title:" Type="FieldControl" FieldName="System.Title"/>

<Control LabelPosition="Left" Label="&Sprint:" Type="WorkItemClassificationControl" FieldName="System.IterationPath"/>

<Control LabelPosition="Left" Label="Feature:" Type="WorkItemClassificationControl" FieldName="System.AreaPath"/>

</Column>

</Group>


-<Group>


-<Column PercentWidth="50">


-<Group Label="Status">


-<Column PercentWidth="100">

<Control LabelPosition="Left" Label="Assi&gned To:" Type="FieldControl" FieldName="System.AssignedTo"/>

<Control LabelPosition="Left" Label="&State:" Type="FieldControl" FieldName="System.State"/>

<Control LabelPosition="Left" Label="Reason:" Type="FieldControl" FieldName="System.Reason"/>

<Control LabelPosition="Left" Label="In Version:" Type="FieldControl" FieldName="Custom.Version"/>

</Column>

</Group>

</Column>


-<Column PercentWidth="50">


-<Group Label="Details">


-<Column PercentWidth="100">

<Control LabelPosition="Left" Label="Business Value:" Type="FieldControl" FieldName="Microsoft.VSTS.Common.BusinessValue"/>

<Control LabelPosition="Left" Label="Story Points:" Type="FieldControl" FieldName="Microsoft.VSTS.Scheduling.Effort"/>

<Control LabelPosition="Left" Label="Backlog Priority:" Type="FieldControl" FieldName="Microsoft.VSTS.Common.BacklogPriority"/>

<Control LabelPosition="Left" Label="Rank:" Type="FieldControl" FieldName="Custom.Rank"/>

</Column>

</Group>

</Column>

</Group>


-<Group Label="">


-<Column PercentWidth="20">

<Control LabelPosition="Top" Label="Dependant User Story?" Type="FieldControl" FieldName="Custom.Dependancy"/>

</Column>


-<Column PercentWidth="20">

<Control LabelPosition="Top" Label="Related User Story?" Type="FieldControl" FieldName="Custom.Relates"/>

</Column>


-<Column PercentWidth="20">

<Control LabelPosition="Top" Label="Related Support Ticket?" Type="FieldControl" FieldName="Custom.Support"/>

</Column>

</Group>


-<Group Label="">


-<Column PercentWidth="50">


-<TabGroup>


-<Tab Label="User Story">

<Control LabelPosition="Top" Label="" Type="HtmlFieldControl" FieldName="Microsoft.VSTS.Common.DescriptionHtml"/>

</Tab>


-<Tab Label="Detailed Requirement">

<Control LabelPosition="Left" Label="" Type="HtmlFieldControl" FieldName="Custom.DetailedRequirement" MinimumSize="(0,600)"/>

</Tab>


-<Tab Label="Acceptance Criteria">

<Control LabelPosition="Top" Label="" Type="HtmlFieldControl" FieldName="Custom.AcceptanceTest" MinimumSize="(0,600)"/>

</Tab>


-<Tab Label="Storyboards">


-<Control LabelPosition="Top" Type="LinksControl" Name="StoryboardsControl">


-<LinksControlOptions>


-<LinkColumns>

<LinkColumn RefName="System.Title"/>

<LinkColumn LinkAttribute="System.Links.Comment"/>

</LinkColumns>

<WorkItemLinkFilters FilterType="excludeAll"/>


-<ExternalLinkFilters FilterType="include">

<Filter LinkType="Storyboard"/>

</ExternalLinkFilters>

</LinksControlOptions>

</Control>

</Tab>

</TabGroup>

</Column>


-<Column PercentWidth="50">


-<TabGroup>


-<Tab Label="Tasks">


-<Control LabelPosition="Top" Type="LinksControl" Name="Task">


-<LinksControlOptions>


-<LinkColumns>

<LinkColumn RefName="System.Id"/>

<LinkColumn RefName="System.Title"/>

<LinkColumn RefName="System.AssignedTo"/>

<LinkColumn RefName="System.State"/>

</LinkColumns>


-<WorkItemLinkFilters FilterType="include">

<Filter LinkType="System.LinkTypes.Hierarchy" FilterOn="forwardname"/>

</WorkItemLinkFilters>

<ExternalLinkFilters FilterType="excludeAll"/>


-<WorkItemTypeFilters FilterType="include" Scope="project">

<Filter WorkItemType="Sprint Backlog Task"/>

</WorkItemTypeFilters>

</LinksControlOptions>

</Control>

</Tab>


-<Tab Label="Links">


-<Control LabelPosition="Top" Label="" Type="LinksControl" Name="GeneralLinks">


-<LinksControlOptions>


-<LinkColumns>

<LinkColumn RefName="System.Id"/>

<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 LabelPosition="Top" Label="" Type="AttachmentsControl"/>

</Tab>


-<Tab Label="Stakeholder Information">


-<Group Label="Contact Information">


-<Column PercentWidth="100">

<Control LabelPosition="Left" Label="Name:" Type="FieldControl" FieldName="Custom.StakeholderName"/>

<Control LabelPosition="Left" Label="Department:" Type="FieldControl" FieldName="Custom.Department"/>

<Control LabelPosition="Left" Label="Office:" Type="FieldControl" FieldName="Custom.Office"/>

<Control LabelPosition="Left" Label="Telephone:" Type="FieldControl" FieldName="Custom.Telephone"/>

<Control LabelPosition="Left" Label="Email Address:" Type="FieldControl" FieldName="Custom.Email"/>

</Column>

</Group>


-<Group Label="Additional Information">


-<Column PercentWidth="100">

<Control LabelPosition="Left" Label="Notes:" Type="HtmlFieldControl" FieldName="Custom.WINotes"/>

</Column>

</Group>

</Tab>


-<Tab Label="History">

<Control LabelPosition="Top" Label="" Type="WorkItemLogControl" FieldName="System.History" Dock="Fill"/>

</Tab>

</TabGroup>

</Column>

</Group>


-<Group>


-<Column PercentWidth="10">

<Control LabelPosition="Top" Label="Planned Release:" Type="FieldControl" FieldName="Custom.PlannedRelease"/>

</Column>


-<Column PercentWidth="10">

<Control LabelPosition="Top" Label="Planned Sprint:" Type="FieldControl" FieldName="Custom.PlannedSprint"/>

</Column>

</Group>

</Layout>

</FORM>

</WORKITEMTYPE>

</witd:WITD>

2 个答案:

答案 0 :(得分:0)

根据您的屏幕截图,您的标题字段未使用默认的system.Title引用,但使用System.AssignedTo引用。您需要检查您的工作项类型定义并更正此问题。

enter image description here

enter image description here

答案 1 :(得分:0)

我知道这是一个老帖子,但它可能在将来帮助某人。

从TFS 2013升级到TFS 2017时,我遇到了这个问题。问题是由于某些项目的WIT中包含这些行:

<FIELD refname="System.Title">
<WHEN field="System.WorkItemType" value="Test Case">
  <VALIDUSER for="{cliente_user_group}" />
</WHEN>
</FIELD>

有了这个,升级后,我们在System.Title集合字段中获得此设置:

>witadmin listfields /collection:{collection} /n:System.Title

...
Synchronizes Identity Name Changes: True

这个标志不能在System.Title上更改,所以我们不得不回到TFS 2013来更改有问题的WIT。

从受影响项目的WITD中删除这些行并重新升级后,问题不再发生。