在“任务”网格中工作故障排除

适用于:基于资源/非库存场景的 Project Operations、精简部署 - 估价交易开单、Project for the Web

Dynamics 365 Project Operations 使用的“任务”网格是 Microsoft Dataverse 内的托管 iframe。 由于使用了这一项,因此必须满足特定要求,才能确保身份验证和授权能够正常运行。 本文概述的常见问题可能会影响用于呈现网格或在工作分解结构 (WBS) 中管理任务的功能。

常见问题包括:

  • “任务”网格上的任务选项卡为空。
  • 当您打开项目时,项目不会加载,且用户界面 (UI) 停滞在旋转图标上。
  • Project for the Web 的特权管理。
  • 创建、更新或删除任务时不会保存更改。

问题:“任务”选项卡为空

缓解 1:启用 Cookie

Project Operations 需要启用第三方 Cookie 来呈现工作分解结构。 如果未启用第三方 Cookie,在选择项目页上的任务选项卡时,您会看到空白页面,而不是看到任务。

对于 Microsoft Edge 或 Google Chrome 浏览器,以下过程概述了如何更新浏览器设置以启用第三方 Cookie。

Microsoft Edge

  1. 打开 Edge 浏览器。
  2. 在右上角选择省略号 (...),然后选择设置
  3. Cookie 和站点权限下,选择 Cookie 和站点数据
  4. 关闭阻止第三方 Cookie
  5. 刷新浏览器。

Google Chrome

  1. 打开 Chrome 浏览器。
  2. 在右上角,选择三个垂直排列的点,然后选择设置
  3. 隐私和安全性下,选择 Cookie 和其他站点数据
  4. 选择允许所有 Cookie
  5. 刷新浏览器。

备注

如果您阻止第三方 Cookie,将阻止其他站点的所有 Cookie 和站点数据,即使您的例外列表中允许该站点。

缓解 2:验证是否正确配置了 PEX 终结点

Project Operations 需要项目参数引用 PEX 终结点。 需要使用此终结点才能与用于呈现工作分解结构的服务通信。 如果未启用此参数,您将收到错误“项目参数无效”。要更新 PEX 终结点,请完成以下步骤。

  1. PEX 终结点字段添加到项目参数页中。

  2. 识别您正在使用的产品类型。 设置 PEX 终结点时使用此值。 检索后,已在 PEX 终结点中定义了产品类型。 保留该值。

  3. 使用以下值更新字段: https://project.microsoft.com/<lang>/?org=<cdsServer>&clientType=ProjectOperations#/taskgrid?projectId=<id>&type=2。 下表提供了应该根据产品类型使用的类型参数。

    产品类型 类型参数
    默认组织中的 Project for the Web 类型=0
    名为 CDS 的组织中的 Project for the Web 类型=1
    Project Operations 类型=2
  4. 项目参数页删除此字段。

缓解 3:登录到 project.microsoft.com

在您的浏览器中,打开一个新选项卡,转到 project.microsoft.com,然后使用您用于访问 Project Operations 的用户角色登录。 只有一个用户在浏览器中登录到 Microsoft 产品很重要。 当多个用户登录时,最常出现“login.microsoftonline.com 拒绝连接”错误消息,如下图所示。

显示有两个用户已登录的“选择帐户”登录页面的屏幕截图。

问题:项目未加载且 UI 停滞在旋转图标上

为了执行身份验证,必须启用弹出窗口以便加载“任务”网格。 如果未启用弹出窗口,则加载旋转图标时屏幕将会停滞。 下图显示了地址栏中具有阻止的弹出窗口标签的 URL,这会导致在尝试加载页面时旋转图标停滞。

旋转图标停滞并且阻止弹出窗口的屏幕截图。

缓解 1:启用弹出窗口

当项目停滞在旋转图标上时,可能未启用弹出窗口。

Microsoft Edge

在 Edge 浏览器中启用弹出窗口的方法有两种。

  1. 在 Edge 浏览器中,选择浏览器右上角的通知。

  2. 选择始终允许出现弹出窗口并从特定 Dataverse 环境重定向

    阻止弹出窗口的窗口的屏幕截图。

或者,您可以完成以下步骤。

  1. 打开 Edge 浏览器。
  2. 在右上角,选择省略号 (...),然后选择设置>站点权限>弹出窗口和重定向
  3. 关闭弹出窗口和重定向可以阻止弹出窗口,打开可以允许设备上出现弹出窗口。
  4. 启用弹出窗口后,刷新您的浏览器。

Google Chrome

  1. 打开 Chrome 浏览器。
  2. 导航到阻止弹出窗口的页面。
  3. 在地址栏中,选择已阻止弹出窗口
  4. 选择您所看到的弹出窗口的链接。
  5. 启用弹出窗口后,刷新您的浏览器。

备注

若要始终查看站点的弹出窗口,请选择始终允许出现弹出窗口并从 [站点] 进行重定向,然后选择完成

问题 3:Project for the Web 的特权管理

Project Operations 依赖于外部计划服务。 该服务要求为用户分配多个角色,以允许用户读取和写入与 WBS 相关的实体。 这些实体包括项目任务、资源分配和任务依赖关系。 如果用户在导航到任务选项卡时无法呈现 WBS,这可能是因为未对 Project Operations 启用项目。 用户可能会收到安全角色错误或与拒绝访问相关的错误。

缓解 1:验证应用程序用户和最终用户安全角色

  1. 转到设置>安全>用户>应用程序用户

    应用程序读取器的屏幕截图。

  2. 双击应用程序用户记录以验证:

    • 用户有权访问项目。 可以通过验证用户是否具有项目经理安全角色来执行此操作。
    • Microsoft Project 应用程序用户已存在并且配置正确。
  3. 如果该用户不存在,请创建新用户记录。

  4. 选择新建用户,将条目窗体更改为应用程序用户,然后添加应用程序 ID

    应用程序用户详细信息的屏幕截图。

问题 4:创建、更新或删除任务时不会保存更改

在对 WBS 进行一项或多项更新时,更改将失败并且不会保存。 在计划网格中发生了一个错误,消息指出“您最近所做的更改无法保存”。

缓解 1:验证许可证分配

  1. 在许可证的服务计划详细信息中验证是否为用户分配了正确的许可证,并且已启用了服务。
  2. 验证用户是否可以打开 project.microsoft.com

缓解 2:验证项目应用程序用户的配置

  1. 验证是否已创建项目应用程序用户。
  2. 向用户应用以下安全角色:
  • Dataverse 用户或基本用户
  • Project Operations 系统
  • 项目系统
  • Project Operations 双重写入系统。 基于资源/非库存场景的 Project Operations 部署方案需要此角色。

问题 5:更新项目时出现权限错误

在处理项目时,可能会出现问题。 PSS 错误日志会显示一条消息,指示用户在保存记录时存在权限访问问题。 此错误可能发生在项目复制、项目转换、项目导入等操作过程中,或在任务网格等位置工作时。

缓解 1:更新用户对特定实体的权限

在大多数情况下,此错误表明用户缺乏对实体记录执行特定操作(例如,读/写)所需的权限。

  1. 首先,检查错误消息来确定实体名称和用户名。 如果错误仅显示用户 ID,则可以使用以下 web API 获取用户名:<orgurl>/api/data/v9.2/systemusers(<Principal/User Id from the error message>)?$select=fullname,firstname,lastname,domainname,internalemailaddress,windowsliveid
  2. 如果用户名为“Microsoft Project”或“Microsoft Portfolios”,则表示 Project Operations 应用用户存在权限问题。 这是 Project Online 和客户组织之间集成的内置用户。

如果用户是内置应用用户::

  1. 确保为内置应用用户分配了所有现成可用 (OOB) 的角色。 有关详细信息,请参阅[项目应用程序用户的验证配置[(https://aka.ms/po-tasks-grid-setup-documentation). 在 Project Operations 的每个更新中,都会自动将安全角色重新分配给此用户。 但是,如果客户手动从此应用用户删除角色,可能会出现问题。
  2. 如果应用用户已经有所有 OOB 角色,请检查可能触发对其他实体的操作的任何客户插件。 客户可能需要修改客户/合作伙伴插件或为应用用户添加额外的角色/权限。

如果用户是普通用户:

  1. 客户应该检查负责触发对实体的 CRUD 操作的自定义/插件,应在用户上下文下操作。 他们可以在插件中使用系统服务,或为用户分配更多角色/权限。