TF293000:数据仓库检测到以下工作项字段的数据冲突

TF293000: The data warehouse has detected data conflicts for the following work item fields

您好,我正在寻求有关以下问题的帮助:

在我们的 SSRS 报告服务器上的 TFS 中,每当我 运行 任何开箱即用的 Sprint Burndown 报告报告似乎 运行 成功,但我在右下角收到以下错误:

通过一些研究,我发现问题是由于特定 Collection 中的字段定义与 TFS 中的其他 collection 不匹配。简单...

为了确定 collection 中的哪个字段定义是问题所在,我对所有 collection 使用了 witadmin 命令 listfields

witadmin listfields /collection:Collection /n:Microsoft.VSTS.Common.ReviewedBy

这导致我发现TF293000错误中提到的collection中的Synchronizes Identity Name Changes定义被设置为true的值,而它是false在我所有其他 collection 中。发现问题!从这里应该很容易......错了。

以下命令应该可以解决我的问题:

witadmin changefield /collection:Collection /n:Microsoft.VSTS.Common.ReviewedBy /syncnamechanges:false

*当然用适当的 collection url 代入 Collection

然而,当 运行 并且在我确认我想要进行更改后,我收到以下错误:

TF401327: The operation is not supported. The feature is obselete.

我查找了错误,然后转到此页面 TFS Known Issue,它告诉我这是一个已知问题,但已在更新 1 中解决...我们有更新 3。

然后我尝试简单地编辑 WIT .xml 文件并使用 false 更新 collection 上该 WIT 的属性,但是当我将更改导入服务器时它告诉我它已成功导入,但是当我导出它时,我发现文件没有更改。

我也试过从另一个 collection 中的同一个 WIT 复制 .​​xml 文件,然后将其上传到有问题的 collection,但这是行不通的。我从未遇到过上传 WIT 的问题,因为我们之前对 TFS 工作流程进行了多项更改。我很困在这一点上,只是想知道是否有其他人以前遇到过这个问题,谢谢!

根据错误信息,似乎在 TFS 数据仓库中存在冲突,这是因为不同集合中的 2 个字段在数据仓库中具有不同的属性,因为它只有一个数据仓库。为避免在将数据导出和处理到数据仓库数据库时发生架构冲突,您必须为所有集合中的这些属性分配相同的值:

  • 字段类型(不能更改此字段的值 现有字段)。
  • 报告类型。
  • 举报姓名。

您所做的是正确的操作,change/update一个项目集合中字段的属性与在其他项目集合中所做的分配相匹配。

如果此问题仅发生在团队项目集合中的特定字段上,您可以尝试缩小问题范围。归档的所有其他工作项是否正常工作?也可以尝试使用其他集合,例如更改 syncnamechanges=true,然后将其设置回 syncnamechanges=false,以查看是否出现任何问题。

运行 TFS 服务器机器上的命令行而不是您的开发机器。 Clear TFS cahce。如果该文件不用于报告这些项目集合,您也可以尝试将其标记为不可报告。更多详情请参考以下链接: