Team Foundation Server 和 Project Server 集成支持的已知问题和解决方法

更新:2011 年 4 月

本主题介绍有关 Visual Studio Team Foundation Server 2010 Service Pack 1 (SP1) 与 Project Server 2007 Service Pack 2 (SP2) 或 Project Server 2010 之间的集成的已知问题。 要支持此集成,必须已安装 Team Foundation Server 和 Project Server 集成功能包。 有关更多信息,请参见支持 Team Foundation Server 和 Project Server 集成的系统要求和安装要求

可以通过执行建议的操作解决大多数问题。

提示

有关更多信息,请参见 Microsoft 网站上的以下论坛文章:Team Foundation Server and Project Server Integration(Team Foundation Server 和 Project Server 集成)。

主题内容

  • 含有映射子任务的摘要任务未在项目计划中更新

  • 通过 SQL Server Reporting Services 显示的报表中出现的小时数不准确

  • 解决特定错误条件

  • 资源名称不能包含特殊字符

  • “工作项类型”字段列出所有工作项类型

  • 管理命令的错误消息不能标识缺少的权限

  • 定义指定 Null 或空字段值的查询

  • 更改映射的企业项目计划的名称需要刷新映射的团队项目

  • 在高负荷环境下可能会报告多个错误和死锁条件

  • 同步引擎会在卸载 Service Pack 1 后继续记录错误

  • 网络负载平衡配置出现访问被拒绝问题

  • 在主项目打开时更新子项目可能会导致发生多个错误

含有映射子任务的摘要任务未在项目计划中更新

按照设计,Team Foundation 不更新摘要任务(含有映射到 Team Foundation 中工作项的子任务的任务)的项目字段。 同步过程会跳过摘要任务的更新,因为项目计划将计算摘要任务上的工作。 对非工作字段(如标题)的更改也未针对摘要任务进行更新。 此行为是两个服务器产品的集成的已知限制。

返回页首

通过 SQL Server Reporting Services 显示的报表中出现的小时数不准确

当通过 SQL Server Reporting Services 提供的报表显示的小时数超过 Visual Studio 或 Microsoft Excel 显示的小时数时,父工作项的小时数会被计算两次。 要改正“情景概述”、“情景进度”、“要求概述”或“要求进度”等报表,您应该清除为父工作项定义的剩余小时数。

返回页首

解决特定错误条件

下表提供了集成两个服务器产品时可能发生的特定错误的纠正操作:

错误条件

解决方法

TF80070:Team Foundation 在执行操作时遇到错误。 建议您保存工作,然后重新启动该应用程序。

如果您指定大于 Project Server 允许的数字,则可能会出现此错误。 不能指定晚于 12/31/2049 的日期或大于 100,000,000,000,000(10 的 14 次幂)的数值。 Project Server 规定了对 DateTime 和 Integer 字段的这些限制。

要解决此错误条件,请修改超出特定限制的字段。

TF244069:检查 PWA 实例的报告数据库架构的设置状态时出错。Project Server 返回下列错误:“TF289004: An error occurred while communicating with Project Server. Contact your Project Server administrator.”(TF289004:与 Project Server 通信时发生错误。请联系您的 Project Server 管理员。)

必须为该应用程序池使用的帐户设置承载 Project Server 的 Web 应用程序的权限。 将此帐户设置为 Project Server 报告数据库的 db_owner。 有关更多信息,请参见分配权限以支持 Project Server 和 Team Foundation Server 集成

TF244069:检查 PWA 实例的报告数据库架构的设置状态时出错。Project Server 返回下列错误:“Server was unable to process request. -INVALID USE OF SYMBOLS The request failed with HTTP status 502: Proxy Error (No data record is available. ).”(服务器无法处理请求。使用的符号无效。请求失败,HTTP 状态 502:代理错误(没有可用的数据记录)。)

对于出现错误的 Project Web Access 或 Project Web App (PWA) 实例,需要更改 web.config 文件中默认代理的 autoDetect 特性的设置。 可以在以下位置找到 web.config 文件:驱动器:\inetpub\wwwroot\wss\VirtualDirectories\80\web.config。 将下列元素标记添加到 <system. net> 部分:

<defaultProxy>
   <proxy autoDetect="false" />
</defaultProxy>

TF244069:检查 PWA 实例的报告数据库架构的设置状态时出错。Project Server 返回下列错误:“TF289004: An error occurred while communicating with Project Server. Contact your Project Server administrator.”(TF289004:与 Project Server 通信时发生错误。请联系您的 Project Server 管理员。)

TF244079:检索共享服务的 URL 时出错。

验证是否正确设置了权限。 必须为该应用程序池使用的帐户设置承载 Project Server 报告数据库的 Web 应用程序的权限。 授予该帐户报告数据库的 db_owner 权限。 有关更多信息,请参见分配权限以支持 Project Server 和 Team Foundation Server 集成

TF244079:检索共享服务的 URL 时出错。

必须安装支持 Project Server 2010 所需的两个更新。安装这两个更新后,您必须运行 SharePoint 配置向导。 有关更多信息,请参见支持 Team Foundation Server 和 Project Server 集成的系统要求和安装要求

TF244087:必须在承载 Project Server 的计算机上安装 Team Foundation Server 2010 和 Project Server 集成的功能包。 可从 Microsoft 网站的下列页面下载功能包:https://go.microsoft.com/fwlink/?LinkId=201922

必须在下列计算机上安装 Team Foundation Server 2010 和 Project Server 集成功能包:

  • 对于 Project Server 2007 SP2:将参与和 Team Foundation Server 同步数据的每个应用层服务器。

  • 对于 Project Server 2010:将参与和 Team Foundation Server 同步数据的每个 Web 层和应用层服务器。

有关更多信息,请参见支持 Team Foundation Server 和 Project Server 集成的系统要求和安装要求

TF208104: 您已修改可能已由其他进程(如 Project Server)锁定的一个或多个分层链接关系。

已发布对各个工作项进行的更改。 已自动更正对锁定的链接进行的更改。

在 Excel 中对已同步并且其任务层次结构已锁定的工作项的分层链接关系进行更改时,可能会发生此错误 (链接被锁定)。 此消息指示对字段进行的更改已发布,但是对链接层次结构进行的所有更改都未发布(无论链接是已锁定还是未锁定)。 树层次结构会自动恢复至其原始结构。 有关更多信息,请参见处理错误 TF208104:分层链接关系已锁定

TF285019:无法提交用户“{0}”的请求。 联系您的 Project Server 管理员,验证是否已将 Project Server 权限授予同步引擎使用的服务帐户。

在创建或更新一个工作项后,当同步引擎尝试将其提交至 Project Server 时,此错误将显示在其“历史记录”字段中。 要解决此错误,必须为运行同步引擎的服务帐户提供更多权限。 对于 Project Server 2007,必须提供访问共享服务提供程序 (SSP) 的权限。 对于 Project Server 2010,必须提供完全控制权限来调用 Project Server 服务应用程序以供 SharePoint Web 应用程序使用。 有关更多信息,请参见分配权限以支持 Project Server 和 Team Foundation Server 集成

TF287030:尝试同步 ID 为 TaskID 的任务时返回错误。 错误为“TF287035: Cannot find the following work item types for team project 'Project': . The work item types may have been deleted or renamed. The administrator for Team Foundation Server should restore the named work item type for the mapped team project, or the project manager should update the project plan with the name of the new work item type.”(TF287035:找不到团队项目“Project”的下列工作项类型。这些工作项类型可能已被删除或重命名。Team Foundation Server 管理员应还原映射的团队项目的已命名工作项,否则项目经理应使用新工作项类型的名称更新项目计划。)。 联系您的 Team Foundation Server 管理员,验证是否分配了执行此操作所需的权限,以及该工作项类型和团队项目是否存在。

验证所有项目经理是否均安装了 Visual Studio 2010 Service Pack 1 (SP1)。

注意注意
可以在所有 Visual Studio 2010 产品(包括 Visual Studio 旗舰版、Visual Studio 高级专业版、Visual Studio Professional 和 团队资源管理器)上安装此 Service Pack。可从 Microsoft 网站的下列页面下载团队资源管理器:Microsoft Visual Studio 团队资源管理器 2010 - ISO

如果将 Project Server 设置为需要安全套接字层 (SSL) 证书,应确保正确配置了支持参与数据同步的 PWA 实例的 SharePoint Web 应用程序的 SSL。 有关更多信息,请参见为 Team Foundation Server 设置 HTTPS 和安全套接字层 (SSL)

TF291011:将不支持的字段类型“{0}”分配给了 Project Server 字段:“{1}”。

将 Team Foundation 中的字段映射至 Project Server 中的字段时,这些字段的数据类型必须符合字段映射标准。 有关更多信息,请参见数据类型和字段映射标准

TF294003:无法访问下列 PWA 实例:pwaUrl。 Project Server 返回下列错误:“The request failed with HTTP status 401: Unauthorized.”(请求失败,HTTP 状态 401:未经授权。)。验证 PWA 实例是否存在,所需权限是否已授予给团队项目集合的服务帐户以访问 PWA。

必须向 Team Foundation Server 服务帐户授予访问 PWA 实例的权限。 有关更多信息,请参见配置集成和支持数据同步所需的权限

TF294026:下列工作项字段不存在:Microsoft.VSTS.Scheduling.CompletedWork。 请于您的 Team Foundation Server 管理员联系,添加此工作项字段。

在下列条件下,可能会出现此错误:

  • 尝试将默认的字段映射上载至仅包含根据 Microsoft Solutions Framework (MSF) Scrum 1.0 过程模板创建的团队项目的团队项目集合。 此模板不包含 Team Foundation 字段中的“已完成工作”或“初始估计”字段。 默认情况下,必须映射这些字段。

    可通过下载默认字段映射的内容、删除不支持的映射,然后上载经过修改的字段映射来解决此问题。 有关更多信息,请参见映射到使用 Scrum 1.0 过程模板创建的团队项目时修改字段映射

  • 尝试将字段映射上载至不包含任何团队项目的团队项目集合。 上载字段映射之前,必须首先在该集合中创建一个团队项目。 有关更多信息,请参见管理 Team Foundation Server 与 Project Server 集成的字段映射

返回页首

资源名称不能包含特殊字符

当您在 Active Directory 和 Project Server 之间同步用户名时,有几个字符(如方括号或尖括号)可能会引起问题。 有关更多信息,请参见 Microsoft 网站上的以下页面:在 Project Server 2007 中管理 Active Directory 同步

返回页首

“工作项类型”字段列出所有工作项类型

Text30 是与用于同步任务和工作项的**“工作项类型”列相关联的默认 Project 字段。 如果使用“团队”功能区菜单上的“选择团队项目”选项将项目计划连接到 Team Foundation Server,则另外一个标为“工作项类型”的 Project 字段将变得可用。 该字段的默认 Project 字段为 Text24,支持对绑定到 Team Foundation 的项目计划进行映射,但是不支持计划同步。 基于 Text24 的字段包含团队项目的完整工作项类型列表。 通过指向字段并验证是否显示了“Text30”**,可以验证字段是否正确。

返回页首

管理命令的错误消息不能标识缺少的权限

运行 TfsAdmin 命令行工具时,可能出现以下错误消息:

请求失败,HTTP 状态 401: 未经授权。

该消息未指明哪个服务器上需要哪个权限。 您必须查看尝试运行的特定命令所需的权限。 有关更多信息,请参见分配权限以支持 Project Server 和 Team Foundation Server 集成

返回页首

定义指定 Null 或空字段值的查询

可以通过创建未定义**“值”**的工作项查询,以便在 Team Foundation 中查找未定义的工作项字段。 映射的相应 Project Server 字段可能包含值 0。 例如,可以在查询中指定以下子句来排除包含未定义的工作或零工作的工作项:

  • And 已完成工作 <>(不定义 Value)

  • Or Project Server 已完成工作 <> 0

  • And 剩余工作 < >(不定义 Value)

  • Or Project Server 剩余工作 <> 0

有关更多信息,请参见How to: Resolve Conflicts of Mapped Work Items

返回页首

更改映射的企业项目计划的名称需要刷新映射的团队项目

如果您使用其他名称保存映射的企业项目,然后将该项目发布到 Project Server,则必须刷新映射的团队项目。 否则,新名称将不会出现在**“Project Server”选项卡上的“企业项目”**字段中。 有关更多信息,请参见刷新 Team Foundation Client

返回页首

在高负荷环境下可能会报告多个错误和死锁条件

在特定负载条件下,可能会在 Windows 事件日志中以及同步消息中报告多个错误和死锁问题。 例如,如果多个团队项目集合映射到一个 PWA 实例,则可能会出现这些消息。 无需任何用户操作。

可能会出现以下类型的错误:

Error_GeneralServerErrorSql|事务(进程 ID 156)与另一个进程被死锁在锁定资源上,并且已被选作死锁牺牲品。 请重新运行该事务。

Error_GeneralServerErrorSql|超时时间已到。 在操作完成之前超时时间已过或服务器未响应。

返回页首

同步引擎会在卸载 Service Pack 1 后继续记录错误

如果您在配置完两个服务器产品的集成后卸载 Visual Studio Team Foundation Server 2010 Service Pack 1 (SP1),则同步引擎将无法正常工作,并且作业代理将每隔 30 秒记录一个错误。

若要阻止此情况发生,您应在卸载 SP1 之前注销已注册的所有 PWA 实例。

提示

要注销 PWA 的所有实例,必须使用 TFSAdmin ProjectServer /UnregisterPWA 命令。 您只能从安装了 SP1 的 Visual Studio 2010 或团队资源管理器访问此命令。 有关更多信息,请参见移除参与数据同步的组件

如果计划继续同步两个服务器产品之间的数据,则必须重新安装 SP1,然后重新将 PWA 注册到 Team Foundation Server。 此过程将重新配置支持集成所需的全局规则。

返回页首

网络负载平衡配置出现访问被拒绝问题

如果您具有 Project Server 的管理权限,则 401 访问被拒绝消息可能会在配置两个服务器产品的集成后出现。 此消息会在部署包含以下组件的 Project Server 时出现:

  • 两个或两个以上的 Web 前端。

  • 用于平衡它们的 Windows 网络负载平衡 (NLB)。

  • 一个作为 NLB 前端的静态 IP,它具有注册到域名服务 (DNS) 的名称。

若要解决此问题,您必须设置两个注册表项之一。 有关更多信息,请参见 Microsoft 网站上的以下页面:当您浏览的网站使用集成身份验证并承载于 IIS 5.1 或更高版本时收到 401.1 错误

返回页首

在主项目打开时更新子项目可能会导致发生多个错误

可同步团队项目和作为子项目的企业项目计划之间的数据。 不能从包含映射子项目的主项目管理或更新任何数据。 虽然主计划可以包括映射到 Team Foundation Server 的子项目,但用于 Project Professional 的 Team Foundation 客户端加载项阻止编辑主计划中映射的子项目。 具体而言,该加载项阻止您从主计划修改或删除计划与 Team Foundation 同步的任务

如果同时打开子项目及其主项目,则可能会发生一些错误。 例如,可能会显示下列一个或多个错误消息:

  • 在此 Project 版本中不存在 Team Foundation Gantt 甘特图视图 (Project Server)。 请选择另一个视图。

  • 您选择用于跟踪此工作项类型的下列字段在此项目中已被使用:pjTaskText30。 如果继续,下列数据将被覆盖。

    单击“取消”,阻止覆盖或删除数据,然后将 pjTaskText30 中的数据复制到项目中未使用的字段,或者联系管理员更改本地字段。

    是否继续?

  • TF82041:Team Foundation 不支持从主项目中编辑子项目中的任务。 打开子项目来编辑、发布或刷新任务。

  • TF80069:Team Foundation 在更新应用程序中的数据时遇到错误。

要解决这些错误,请在修改映射的子项目时关闭主项目。

返回页首

请参见

其他资源

Team Foundation Server 与 Project Server 集成的同步过程概述

移除参与数据同步的组件

更改部署配置

管理 Team Foundation Server 和 Project Server 集成

修订记录

日期

修订记录

原因

2011 年 4 月

更正了在高负荷环境下可能会报告多个错误和死锁问题一节中介绍的映射引用。 添加了有关如何解决 TF208104 的信息。

内容 Bug 修复