计划优化故障排除

本文介绍如何解决在使用计划优化时可能遇到的常见问题。

无法完成计划优化加载项的安装或失败并显示错误

如果您在安装计划优化加载项时遇到问题,请考虑以下小节中提供的建议。

确保您的环境满足先决条件

计划优化需要已启用 Lifecycle Services (LCS) 的第 2 层或更高层高可用性环境(非 OneBox 环境),并且具有 Dynamics 365 Supply Chain Management 版本 10.0.23 或更高版本。 如果尝试在 OneBox 环境中安装此加载项,将无法完成安装。

修复:取消安装并使用第 2 层或更高层的高可用性环境(不是 OneBox 环境)。

确保您的用户帐户满足先决条件

计划优化加载项需要成功链接的 Power Platform 环境。 要安装此加载项,您必须使用具有管理员权限和读-写访问模式的帐户登录您的 Microsoft Power Platform 环境。 如果您尝试使用权限不足的帐户安装加载项,您可能会看到以下错误消息之一:

当前用户在 Power platform 环境上没有足够的权限完成计划优化的安装。 请考虑在 Power platform 管理中心将用户访问模式更改为“读/写”。

当前用户在 Power platform 环境中不存在。 请联系您的管理员通过 Power platform 管理中心分配用户。

当前用户没有被分配许可证来完成计划优化的安装。 考虑在 Microsoft 管理中心分配许可证。

修复:按照“主计划入门 中的先决条件 部分 所述设置用户帐户

查看错误详细信息

由于 Power Platform 环境中的错误,计划优化加载项可能无法安装。

修复:检查错误详细信息并相应地修改您的 Power Platform 组织设置。 这可能是暂时错误,因此稍后尝试再次安装。 如果问题仍然存在,请联系 Microsoft 支持部门。

计划优化作业超时

计划优化的超时时间设置为 60 分钟。 因此,如果它运行超过 60 分钟,计划作业将因超时而停止。

如果您的计划优化作业经常超时,请考虑实施以下小节中描述的一个或多个选项。

查看您的设置,删除不需要的时限和选项

按照以下步骤查看您的设置并删除您不需要的时限和其他选项:

  1. 调整时限,使其尽可能小,同时仍能满足您的业务需求。

    1. 覆盖范围组页面检查每个覆盖范围组的以下设置:

      • 覆盖时限(天)
      • 物料清单分解时限(天)
      • 产能计划时限(天)
      • 预测计划时限
      • 行动时限
      • 计算的延迟时限
    2. 主计划页面,检查时限是否被覆盖,并考虑值是否可以更小,同时仍能满足您对于各个时限的业务需求。 检查每个计划的以下设置:

      • 覆盖
      • 爆炸
      • 预测计划
      • 能力
      • 行动消息
      • 计算的延迟
      • 已审核的申请时限(天)

    注意

    覆盖时限对计划的运行所需的时间影响最大。 请将其调整为能够满足您的业务需求的最低可能值。

  2. 主计划页面上,查看每个计划的以下设置。 将每个选项设置为,除非它适用于您的主计划。 不要将任何选项保留为,即使您的业务流程不需要该选项。

    • 使用保质期日期
    • 有限产能
    • 包括现有库存
    • 包括库存交易记录
    • 包括询价
    • 包括销售报价单
    • 包括供应预测
    • 包括需求预测
    • 包括申请
  3. 仅在必要时使用有限产能。 对于不需要它的计划,在主计划页面将有限产能选项设置为

减少计划时间

查看您的计划编制配置以优化运行时间,这一点始终有益。 若要检查计划编制是否是计划优化超时的主要原因,请尝试在计划设置中禁用有限产能,然后重新运行计划以查看问题是否得到解决。

有关如何减少计划编制时间的详细信息,请参阅提高计划编制引擎性能

只为您需要的产品计划

查看以下设置,确保只为您需要的产品计划:

  • 使用产品生命周期状态字段指示不必通过主计划来履行的产品或变体。 对于每个此类产品,选择将对于计划有效选项设置为的产品生命周期状态。 您可以使用更改过时产品的生命周期状态页面来确定一段时间内没有在任何交易中使用的产品。 这些产品现在可能已经过时。 因此,您可以将它们从计划中删除。
  • 对于应仅适用于特定物料集的计划,设置计划筛选器来将运行限制为这些物料。 另请参阅为一部分物料运行计划
  • 将主计划不需要提供的每个仓库的物料覆盖范围设置为手动。 对于仓库页面上列出的每个此类仓库,展开主计划快速选项卡,在物料覆盖范围字段组中,将手动设置为

将大型计划作业拆分为若干小作业

如果您有一个经常超时的大型计划作业,可以通过将作业拆分为若干小作业来防止超时。

选项 1:仅针对产品的某个子集运行相同的主计划

例如,您有一个名为 PlanA 的主计划。 它作为 1,000 个物料的批处理作业每晚运行,这些物料的物料编号范围从 A0001A1000。 如果此作业经常在 60 分钟后超时,您可以将其拆分为三个作业,每个作业为三分之一的物料运行。 您对前三分之一(A0001A0333)运行 PlanA,然后对第二个三分之一(A0334A0666)运行,再然后对最后三分之一(A0667A1000)运行。 这样,每个小作业都有完整的 60 分钟超时窗口。 您没有尝试使用相同的 60 分钟来计划所有 1,000 个物料。

要将一个大型作业拆分为多个作业,请执行以下步骤。

  1. 转到系统管理 > 查询 > 批处理作业

  2. 在网格中,找到正在超时的定期计划作业。然后在作业 ID 列中选择值打开作业详细信息。

  3. 在操作窗格上,选择更改状态

  4. 选择新状态对话框中,选择保留,然后选择确定

  5. 批处理任务快速选项卡上,网格应包括用于计划优化的单个行,其中类名称字段设置为 MpsMasterPlanningRunnerRegen。 选择此任务,然后在“快速选项卡”工具栏上选择参数

  6. 此时会出现一个对话框,您可以在其中为任务设置值。 在要包括的记录快速选项卡上,选择筛选器打开标准查询编辑器对话框。

  7. 范围选项卡上,添加一行,并为其设置以下字段:

    • –选择 物料
    • 派生表 –选择 项目
    • 字段 - 选择 物料编号
    • 条件 –指定要包含在第一个缩小作业中的物料编号范围。 将范围内的第一个物料编号和最后一个物料编号用三个句点分隔。 例如,输入 A0001...A0333
  8. 选择确定关闭查询编辑器。 然后选择确定关闭任务设置对话。

  9. 批处理任务快速选项卡上,选择工具栏上的添加添加任务。

  10. 为新任务设置以下字段:

    • 任务描述 - 输入任务的描述(例如, 计划 A 第 2 部分)。
    • 类名称 –选择 MpsMasterPlanningRunnerRegen
    • 公司 - 选择为原始任务选择的同一公司。
  11. 为新任务设置筛选器来查找第二个三分之一物料(例如,范围 A0334...A0666 中的物料编号)。

  12. 重复前面的三个步骤添加第三个任务,并设置筛选器来查找最后三分之一物料(例如,范围 A0667...A1000 中的物料编号)。

  13. 选择第一个任务的任务 ID 值,将其复制到剪贴板(通过选择 Ctrl+C)。

  14. 选择第二个任务。 然后,在批处理任务详细信息快速选项卡上,在约束选项卡上,选择工具栏上的新建向网格添加一行。

  15. 为新行设置以下字段。 这些设置会让第二个任务在第一个任务完成运行或遇到错误后运行。

    • 任务 ID - 粘贴复制到剪贴板的值。
    • 预期状态 - 选择 已结束或错误
  16. 重复前面的三个步骤,将第三个任务设置为在第二个任务完成运行或遇到错误后运行。

  17. 在操作窗格上,选择更改状态

  18. 选择新状态对话框中,选择等待,然后选择确定

  19. 在操作窗格上,选择保存

提示

此过程只显示了一种将一个大型作业拆分为几个小作业,并将它们设置为串行运行的方法。 您可以根据需要将作业拆分为更多作业和/或根据不同条件进行筛选。

选项 2:不同的主计划,每个针对一个产品子集

如果您的产品在计划方面有不同的特点,您应该考虑运行不同的主计划,每个主计划针对一个产品子集。

例如,您有一个提前期较长(如一年)但用于生产制造提前期较短(如一周)的制造产品的物料采购总计划。 在这种情况下,您可以为购买的产品制定一个覆盖时限为 365 天的主计划 (PlanPurch)。 然后为覆盖时限为 30 天的制造物料制定另一个计划 (PlanManuf)。 由于每个产品集在不同的主计划中,所以您可以并行运行两个主计划作业。 当您在不同的批处理任务中运行不同的计划时,每个批处理任务可以并行运行。 它们不必按顺序运行。

要实施此策略,请按照以下步骤操作。

  1. 打开您的现有主计划,对其进行修改,使其仅覆盖原始物料的一个子集(例如,已购买物料)。 您可以通过添加筛选器进行此修改,如应用计划筛选器中所述。

  2. 创建另一个主计划来覆盖其余物料。 同样,设置一个计划筛选器来仅包括您希望包含在此计划中的物料(例如,制造物料)。 此计划可以是原始计划的副本,您可以对其进行修改来筛选不同的物料集。

  3. 转到系统管理 > 查询 > 批处理作业

  4. 在网格中,找到正在超时的定期计划作业。然后在作业 ID 列中选择值打开作业详细信息。

  5. 在操作窗格上,选择更改状态

  6. 选择新状态对话框中,选择保留,然后选择确定

  7. 批处理任务快速选项卡上,网格应包括用于计划优化的单个行,其中类名称字段设置为 MpsMasterPlanningRunnerRegen。 在快速选项卡工具栏上,选择添加添加任务。

  8. 为新任务设置以下字段:

    • 任务描述 - 输入新任务的描述。
    • 类名称 –选择 MpsMasterPlanningRunnerRegen
    • 公司 - 选择为原始任务选择的同一公司。
  9. 选择新任务,然后在快速选项卡工具栏上选择参数

  10. 此时会出现一个对话框,您可以在其中为任务设置值。 在参数快速选项卡上,将主计划字段设置为您创建的新计划的名称。

  11. 在操作窗格上,选择更改状态

  12. 选择新状态对话框中,选择等待,然后选择确定

  13. 在操作窗格上,选择保存

因为您已将每个批处理任务设置为运行不同的主计划,所以两个批处理任务将并行运行。

查看您的物料覆盖范围设置

  • 查看物料覆盖范围设置。 对于使用多个物料覆盖行以对同一站点的所有仓库应用相同设置的物料,将这些行替换为该站点的单个行(仓库列为空白)。 然后该设置将应用于该站点的所有仓库。

考虑减少资源组的大小

考虑是否可以将大型资源组(具有很多资源)拆分为若干小组(每个组具有较少的资源)。 例如,您可以根据位置将名为 AssemblyStations 的大型资源组(包含 20 个资源)拆分为两个小资源组(如 AssemblyStationsNorthAssemblyStationsSouth),每个资源组仅包含 10 个装配站。 拆分组后,根据产品是在工厂的北部还是南部生产,将每个新的资源组重新分配到正确的工艺路线。

数据导出超时

如果计划优化的数据导出超,将出现以下消息:

导出数据以执行计算时主计划作业超时。 这可能是一个暂时的问题 - 请稍后再次尝试运行此作业。 如果您经常看到此消息,请检查您的设置,以限制用于计划的数据量,如(此页面)所示。

如果您收到此消息,我们建议您尝试以下小节中描述的一种或两种方法。

查看您的设置,找出不需要的时限和选项

按照以下步骤查看您对不需要的时限和选项的设置。

  1. 进入主计划 > 设置 > 覆盖范围 > 覆盖范围组

  2. 覆盖范围组页面上查看每个覆盖范围组的以下设置。 考虑部分或全部值是否可以更小,但仍能满足不同时限的业务需求。

    • 覆盖时限(天)
    • 物料清单分解时限(天)
    • 产能计划时限(天)
    • 预测计划时限
    • 行动时限
    • 计算的延迟时限
  3. 转到主计划 > 设置 > 计划 > 主计划

  4. 主计划页面上,检查时限是否已被覆盖,并考虑这些值是否可以更小,但仍能满足不同时限的业务需求。 查看每个计划的以下设置:

    • 覆盖
    • 爆炸
    • 预测计划
    • 能力
    • 行动消息
    • 计算的延迟
    • 已审核的申请时限(天)
  5. 如果您的计划因为生产大量订单而超时,可以考虑更改补货物料的业务策略。 下面举了一些示例加以说明:

    • 如果使用覆盖范围代码字段设置为要求的覆盖范围组,每次有需求时都会为其创建特定的供应。 考虑期间覆盖范围代码值是否适用于您的业务。 在这种情况下,系统会将选定天数的所有需求分组为一个覆盖该期间的单一供应订单。 此方法还将使计划订单更易于管理。 或者,考虑使用最小值/最大值覆盖范围代码值。 在这种情况下,只有当现有库存低于最小值时,才会创建计划订单。 然后将现有库存补充到最大值。
    • 考虑您是否可以购买或生产数量更多的物料。 如果可以,在默认订单设置页面上增加您在订购的每个物料的最大订单数量值。 值越大,您可以为该物料生成的订单就越少。

仅针对需要的产品计划

如果您减少每次计划运行所考虑的产品数量,您的数据导出可能会更快地完成。 考虑使用以下一种或两种策略:

  • 确定不必通过主计划来履行的产品和变体,将其产品生命周期状态值设置为对于计划有效选项设置为的状态。 (有关详细信息,请参阅排除具有特定产品生命周期状态的产品)。 更改过时产品的生命周期状态页面可以帮助您确定一段时间内没有在任何交易中使用的产品。 这些产品现在可能已经过时。 因此,您可以将它们从计划中删除。
  • 使用计划筛选器从计划中删除不需要的物料。

将不创建任何计划订单

如果运行的主计划没有创建任何订单,请检查以下设置:

  • 确保您希望为其生成供应的物料设置了生命周期状态,其中从主计划中排除设置为
  • 如果您运行的是筛选出的计划,请确保您的筛选器值中没有任何拼写错误(另请参阅为一部分物料运行计划)。
  • 确保对您希望主计划为其创建供应的物料有需求。

启用计划优化后计划批处理作业失败

启用计划优化时,将自动禁用已弃用的主计划引擎。 如果在启用了计划优化的情况下触发了为已弃用的主计划引擎创建的主计划批处理作业,这些作业将失败。 可能会收到如下错误消息:启用了计划优化时此操作触发了不支持的主计划

修复:取消为已弃用的主计划引擎创建的所有主计划批处理作业。

计划优化结果与之前结果不同

计划优化在某些方面与已弃用的主计划引擎的设计不同。 这也可能是待定功能导致的。

修复:运行计划优化拟合分析,然后分析结果,同时参考相关文档了解影响。 有关详细信息,请参阅计划优化拟合分析

不能启用计划优化

连接状态必须先为已连接,然后才能将使用计划优化设置为。 有关详细信息,请参阅开始使用计划优化

修复:请确保计划优化加载项已成功安装。

CTP 期间显示错误消息

如果在已启用了计划优化的情况下从销售订单运行可承诺量 (CTP),将收到以下错误消息:启用了计划优化时此操作触发了不支持的主计划

这与为了支持生产订单时计划的待定功能有关。

修复: 在启用计划优化时避免 CTP 计算,直到 CTP 支持可用。

有关活动计划维度不匹配的错误消息

运行主计划后,您可能会收到以下错误:

产品 <ProductID> 上 MinMax 的 ID 为 <SettingID> 的供应设置与此产品的活动计划属性不匹配,已忽略。

如果您看到此错误,请检查指定产品的跟踪和覆盖范围维度。 例如,如果按序列号跟踪产品,则序列号维度不能用作覆盖范围维度,因为系统不知道应供应哪些序列号。 取消选择序列号作为覆盖范围维度,或将物料覆盖范围组更改为不使用序列号跟踪的组(如果指定产品不需要序列号跟踪)。

其他资源