TF51005: 查询引用了不存在的字段。该错误是由“[Custom.ReflectedWorkItemId]”引起的

2024-03-26

我尝试将 Azure DevOps 板从一个组织迁移到另一个组织。 我使用这个工具:https://github.com/nkdAgility/azure-devops-migration-tools https://github.com/nkdAgility/azure-devops-migration-tools

我按照文档中的说明进行操作,但出现错误:

[16:43:59 INF] Processor: WorkItemMigration 
[16:43:59 INF] Migration Context Start: WorkItemMigration [16:43:59 INF] WorkItemMigrationContext::InternalExecute ... 
[16:44:00 INF] MigrationClient: Access granted to https://dev.azure.com/yyy/ for xxx ([email protected] /cdn-cgi/l/email-protection) ... 
[16:44:03 INF] MigrationClient: Access granted to https://dev.azure.com/zzz/ for xxx ([email protected] /cdn-cgi/l/email-protection) 
[16:44:04 INF] Migrating all Nodes before the Processor run. 
[16:44:05 WRN] The node \xxx\Iteration\Sprint 1 is being excluded due to your basePath setting. 
[16:44:06 INF] Querying items to be migrated: SELECT [System.Id], [System.Tags] FROM WorkItems WHERE [System.TeamProject] = @TeamProject AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan') ORDER BY [System.ChangedDate] desc ... 
[16:44:13 INF] Replay all revisions of 20 work items? 
[16:44:13 INF] Found target project as test-han [16:44:13 INF] [FilterWorkItemsThatAlreadyExistInTarget] is enabled. Searching for work items that have already been migrated to the target... 
[16:44:13 ERR] Error running query Microsoft.TeamFoundation.WorkItemTracking.Client.ValidationException: TF51005: The query references a field that does not exist. The error is caused by «[Custom.ReflectedWorkItemId]». 
at Microsoft.TeamFoundation.WorkItemTracking.Client.Query.Initialize(WorkItemStore store, String wiql, IDictionary context, Int32[] ids, Int32[] revs, Boolean dayPrecision) 
at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.Query(String wiql, IDictionary context) 
at MigrationTools._EngineV1.Clients.TfsWorkItemQuery.GetWorkItemsFromQuery(TfsWorkItemMigrationClient wiClient) 
in D:\a\1\s\src\MigrationTools.Clients.AzureDevops.ObjectModel\_EngineV1\Clients\TfsWorkItemQuery.cs:line 40 

[16:44:13 FTL] Error while running WorkItemMigration Microsoft.TeamFoundation.WorkItemTracking.Client.ValidationException: TF51005: The query references a field that does not exist. The error is caused by «[Custom.ReflectedWorkItemId]». 
at Microsoft.TeamFoundation.WorkItemTracking.Client.Query.Initialize(WorkItemStore store, String wiql, IDictionary context, Int32[] ids, Int32[] revs, Boolean dayPrecision) 
at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.Query(String wiql, IDictionary context) 
at MigrationTools._EngineV1.Clients.TfsWorkItemQuery.GetWorkItemsFromQuery(TfsWorkItemMigrationClient wiClient) 
in D:\a\1\s\src\MigrationTools.Clients.AzureDevops.ObjectModel\_EngineV1\Clients\TfsWorkItemQuery.cs:line 70 at MigrationTools._EngineV1.Clients.TfsWorkItemQuery.GetWorkItems() 
in D:\a\1\s\src\MigrationTools.Clients.AzureDevops.ObjectModel\_EngineV1\Clients\TfsWorkItemQuery.cs:line 30 
at MigrationTools._EngineV1.Clients.TfsWorkItemMigrationClient.FilterExistingWorkItems(List 1 sourceWorkItems, TfsWiqlDefinition wiqlDefinition, TfsWorkItemMigrationClient sourceWorkItemMigrationClient) 
in D:\a\1\s\src\MigrationTools.Clients.AzureDevops.ObjectModel\_EngineV1\Clients\TfsWorkItemMigrationClient.cs:line 54 
at VstsSyncMigrator.Engine.WorkItemMigrationContext.InternalExecute() 
in D:\a\1\s\src\VstsSyncMigrator.Core\Execution\MigrationContext\WorkItemMigrationContext.cs:line 120 
at MigrationTools._EngineV1.Processors.MigrationProcessorBase.Execute() 
in D:\a\1\s\src\MigrationTools\_EngineV1\Processors\MigrationProcessorBase.cs:line 47 [16:44:13 ERR] WorkItemMigration The Processor MigrationEngine entered the failed state...stopping run
[16:44:13 INF] Application is shutting down...

下面是我的配置文件

{
"ChangeSetMappingFile": null,
"Source": {
"$type": "TfsTeamProjectConfig",
"Collection": "https://dev.azure.com/yyy/",
"Project": "y01",
"ReflectedWorkItemIDFieldName": "Custom.ReflectedWorkItemId",
"AllowCrossProjectLinking": false,
"AuthenticationMode": "AccessToken",
"PersonalAccessToken": "MY_TOKEN",
"LanguageMaps": {
"AreaPath": "Area",
"IterationPath": "Iteration"
}
},
"Target": {
"$type": "TfsTeamProjectConfig",
"Collection": "https://dev.azure.com/zzz/",
"Project": "z01",
"ReflectedWorkItemIDFieldName": "Custom.ReflectedWorkItemId",
"AllowCrossProjectLinking": false,
"AuthenticationMode": "AccessToken",
"PersonalAccessToken": "MY_TOKEN2",
"LanguageMaps": {
"AreaPath": "Area",
"IterationPath": "Iteration"
}
},
"GitRepoMapping": null,
"LogLevel": "Information",
"Processors": [
{
"$type": "WorkItemMigrationConfig",
"Enabled": true,
"ReplayRevisions": false,
"PrefixProjectToNodes": false,
"UpdateCreatedDate": true,
"UpdateCreatedBy": true,
"WIQLQueryBit": "AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan')",
"WIQLOrderBit": "[System.ChangedDate] desc",
"LinkMigration": false,
"AttachmentMigration": false,
"AttachmentWorkingPath": "c:\temp\WorkItemAttachmentWorkingFolder\",
"FixHtmlAttachmentLinks": false,
"SkipToFinalRevisedWorkItemType": true,
"WorkItemCreateRetryLimit": 5,
"FilterWorkItemsThatAlreadyExistInTarget": true,
"PauseAfterEachWorkItem": false,
"AttachmentMaxSize": 480000000,
"AttachRevisionHistory": false,
"LinkMigrationSaveEachAsAdded": false,
"GenerateMigrationComment": false,
"NodeStructureEnricherEnabled": null,
"NodeBasePaths": [
"/"
],
"WorkItemIDs": null,
"MaxRevisions": 0
}
],
"Version": "11.11",
"workaroundForQuerySOAPBugEnabled": false,
"WorkItemTypeDefinition": {
"sourceWorkItemTypeName": "targetWorkItemTypeName"
},
"Endpoints": {
"InMemoryWorkItemEndpoints": [
{
"Name": "Source",
"EndpointEnrichers": null
},
{
"Name": "Target",
"EndpointEnrichers": null
}
]
}
}

我遵循其他文章中的一些解决方案,为工作项类型“产品待办事项列表”设置一个名为“ReflectedItemId”的自定义列(就是这个 类型)。 并将这个自定义流程(继承自 Scrum)应用于源项目和目标项目。并且仍然无法修复它。

然后,我尝试在源项目上使用 Wiql Playground 扩展运行上面显示的查询(错误日志)。 它说“@TeamProject”不是有效名称,这意味着来自源项目的查询不起作用,更不用说后续任务了 。我理解的对吗?

请给我一些建议。


该字段用于关联WorkItems迁移了。您需要通过继承现有流程来创建自定义流程。将此自定义流程设置为目标项目的流程类型。

此外,在每个WorkItemInterited流程类型,需要添加字段ReflectedWorkItemId.

Steps

  1. 要创建继承流程,请遵循相应的文档 https://learn.microsoft.com/en-us/azure/devops/organizations/settings/work/manage-process?view=azure-devops:

  2. 添加字段ReflectedWorkItemId对于每个工作项目,请遵循文档 https://learn.microsoft.com/en-us/azure/devops/organizations/settings/work/customize-process-field?view=azure-devops。您必须创建一个字段(对于第一个 WI)或使用带有名称的现有字段(对于下一个 WI)ReflectedWorkItemId:

  3. 重试迁移

注意:如果您已按照上述步骤操作,则应将此值放入您的配置文件中Custom.ReflectedWorkItemId for ReflectedWorkItemIDFieldName.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

TF51005: 查询引用了不存在的字段。该错误是由“[Custom.ReflectedWorkItemId]”引起的 的相关文章

随机推荐

  • 具有位字段的结构中的偏移量

    如果我们有一个带有位字段的结构体 那么结构体中的后续成员如何对齐 考虑以下代码 struct A int a 1 char b at offset 1 struct B int a 16 int b 17 char c at offset
  • 如何从当前文件夹旁边的文件夹导入模块?

    我已经检查了尽可能多的页面 并尝试了我找到的所有内容 但没有一个成功 我还检查了有关导入的 PEP 页面并尝试了每个示例 但没有一个起作用 我有一个包含单元测试的测试文件夹 我需要导入我想要测试的模块 这些模块位于 src 文件夹旁边的名为
  • 子类化 datetime.timedelta 时出现奇怪的行为

    为了方便起见 我想创建 datetime timedelta 的子类 这个想法是这样定义一个类 class Hours datetime timedelta def init self hours super Hours self init
  • 如何将 SQLite 与 AngularJS 集成?

    我正在使用 google 地图 api v3 和一个名为 ng map 的插件制作一个 angularjs 应用程序 但我想将一些坐标存储在 SQLite 数据库中 然后从应用程序中检索 基本上 你不能 但是 如果您正在开发混合移动应用程序
  • MySQL 中的 CASE 性能?

    我想知道是否在 MySQL 查询中使用 CASE WHEN THEN 表达式对性能有负面影响吗 而不是使用 CASE 表达式 例如在 UPDATE 查询中 你总是有可能在你的程序中做出 if else 语句用 php python perl
  • ARM 汇编不能同时使用立即值和 ADDS/ADCS

    我目前正在尝试使用汇编来加速 Cortex M0 Freescale KL25Z 上的一些 C 函数 我遇到这个最小测试程序的问题 syntax unified cpu cortex m0 text global test code 16
  • 有没有办法在 Shiny 中构建时显示绘图,而不是等待所有绘图?

    我有一个闪亮的仪表板 里面有很多图 所有这些都需要几秒钟的时间来构建 一旦最后一个构建完成 它们就会全部显示 我希望每个图在完成后立即显示 我知道 R 是单线程的 但似乎必须有一种方法 将执行返回到显示代码 或类似的东西 这段代码演示了这个
  • tr1::function 可以吞掉返回值吗?

    boost 函数常见问题解答第 3 项 http www boost org doc libs 1 46 1 doc html function faq html具体解决了我感兴趣的场景 为什么有 void 的解决方法 回报 C 允许它们
  • 什么是 JavaScript 的服务器端渲染?

    一些 JavaScript 框架 例如 Dust js 声称它们还支持服务器端渲染 除了客户端渲染之外 有人可以解释这是如何工作的吗 我的理解是JS总是在浏览器运行时执行 JavaScript 可以使用以下系统在服务器上运行Node js
  • setInterval() 对性能有害吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Leaflet图层控制:选择图层组内的图层?

    我想要一个传单图层控件 我可以在其中选择一个基础图层 并使该基础图层本身成为一个图层组 我可以从中选择要显示的子图层 我正在考虑一种设置 在其中单击单选按钮来选择基础图层 图层组 然后在其下方我会看到一个复选框列表 用于显示其中的哪些图层
  • vb.net 复选框标签位置

    有没有办法将复选框放在 asp 复选框标签的右侧 默认情况下 此代码放置复选框 然后放置标签
  • java中静态变量的初始化

    静态变量在类加载时初始化 到底是什么意思 我在网上阅读了很多讨论 但仍然感到困惑 第 2 步是初始化步骤 对吗 那么第 1 步 加载类时 会发生什么 public class NewClass static int arr Step 1 N
  • 当未进行 4 字节对齐时,Monotouch 浮点指针会抛出 NullReferenceException

    我面临着一个我无法理解的问题 在使用 Monotouch 在 C 中使用不安全指针时 我在设备 ARM 上收到 NullReferenceException 但我无法解释原因 让我们看一些代码 var rand new Random var
  • 如何从 C++ 调用 Java 方法

    我正在使用 JNI 从 Java 调用我的 C 函数 C 函数的参数之一是jobject thiz 据我所知 所有 JNI 原生函数都有这个参数 该功能需要很长时间才能完成 我想向jobject thizJava 对象 以便我可以向用户显示
  • tensorflow.pad 是如何工作的?

    有tensorflow pad 的例子 t is 1 2 3 4 5 6 paddings is 1 1 2 2 rank of t is 2 tf pad t paddings CONSTANT gt 0 0 0 0 0 0 0 0 0
  • NPM 不安装任何模块:网络套接字挂起

    Salam 意思是你好 我在 ubuntu 12 04 上安装了最新版本的 node js 我没有使用任何代理 并且我的网络设置配置正确 并且自上次 NPM 正常工作以来一直保持完好 但现在 NPM 挂起任何模块的安装 并出现以下错误 na
  • 内部类放在哪里? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 将javascript变量传递给php而不刷新页面

    我有一个 5x5 网格的 div 框 其中 25 个 当我将一个项目放入其中时 我使用 jQuery UI 进行注册 它将收到它所放入的盒子的标题和项目的名称 该部分起作用 我想将标题和名称传递给 PHP 而不刷新页面 因为这样项目将重置
  • TF51005: 查询引用了不存在的字段。该错误是由“[Custom.ReflectedWorkItemId]”引起的

    我尝试将 Azure DevOps 板从一个组织迁移到另一个组织 我使用这个工具 https github com nkdAgility azure devops migration tools https github com nkdAg