Gebi_uncle_Wang 2021-05-11 20:27 采纳率: 0%
浏览 104

SAP MRP运算需求数量无法传递至下层物料问题

离散型制造业实际问题。如截图,L0550W3114G29MB为成品,计划主策略为40,次级策略为20。指定工厂内关联至L955T5的BOM(L955T5可配置物料,组合多),并已设置配置变量和计划变量,CS12能查到L0550W3114G29MB的BOM,下层存在L0550W3114G29A9\LG29010064021等物料,MD11创建计划订单时能带出下层物料。MRP4设置由订单数量选择。创建独立需求VSF/051101后,MD02运行L0550W3114G29MB,应该采购的数量始终无法传递至下层的LG4110003229等物料(MD04查询L0550W3114G29A9等无对应需求)。由于测试的是MTS订单,不想用生产版本数据,未创建工艺路线等参数,想用订单数量或者开始日期。请大神看下什么原因、如何调整,谢谢(MRP新手)

 

  • 写回答

1条回答 默认 最新

  • 码农阿豪@新空间 新星创作者: 前端开发技术领域 2024-07-02 15:14
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
    根据提供的问题描述,以下是对每个问题的解答:
    1. 问题:在MD02运行L0550W3114G29MB时,无法将应采购的数量传递至下层的LG4110003229等物料,MD04查询L0550W3114G29A9等无对应需求。 解答:该问题可能是由于不正确的配置变量和计划变量导致的。请检查工厂内关联至L955T5的BOM是否正确配置了相关的配置变量和计划变量。如果配置变量和计划变量没有正确设置,系统将无法正确传递采购数量至下层物料。请确保在创建BOM时,配置变量和计划变量的设置与所需的采购数量的传递需求相匹配。 示例代码:
      // 获取BOM
      BOM bom = getBOM(L955T5);
      // 设置配置变量和计划变量
      bom.setConfigurationVariable(configVariable);
      bom.setPlanningVariable(planningVariable);
      // 创建独立需求
      Demand demand = createDemand(VSF/051101);
      // 运行MD02
      MD02.run(L0550W3114G29MB);
      // 获取MD04结果
      MD04Result result = MD04.query(L0550W3114G29A9);
      // 检查MD04结果中是否有对应的需求
      if (result.containsDemand(demand)) {
         // 采购数量成功传递至下层物料
         // 进行后续处理
      } else {
         // 采购数量未成功传递至下层物料
         // 需要检查和调整配置变量和计划变量的设置
      }
      
    2. 问题:如何调整使采购数量能够正确传递至下层的LG4110003229等物料。 解答:如果采购数量未能正确传递至下层物料,可以尝试以下调整措施:

      • 确保BOM的正确性:检查BOM中的物料编码和层级关系是否正确,确保下层物料与上层物料的关联正确。

      • 检查配置变量和计划变量的设置是否正确:在配置BOM时,确保配置变量和计划变量的设置与所需的采购数量的传递需求相匹配。如果配置变量和计划变量没有正确设置,系统将无法正确传递采购数量至下层物料。

      • 检查需求创建的方式:如果创建独立需求时使用的是订单数量或开始日期,确保这些参数正确设置,并且与BOM的配置匹配。如果使用的是其他需求创建方式,请确保相关参数设置正确。

      • 检查MRP的配置:在MRP4中配置“由订单数量选择”时,确认该配置符合要求。如果没有正确配置MRP4,系统将无法正确处理订单数量的选择。

      示例代码:

      // 检查BOM的正确性
      BOM bom = getBOM(L955T5);
      if (bom.isValid()) {
         // BOM设置正确
         // 进行后续处理
      } else {
         // BOM设置不正确
         // 需要进行调整
      }
      // 检查配置变量和计划变量的设置
      boolean isConfigVariableSetCorrectly = bom.isConfigVariableSetCorrectly();
      boolean isPlanningVariableSetCorrectly = bom.isPlanningVariableSetCorrectly();
      if (isConfigVariableSetCorrectly && isPlanningVariableSetCorrectly) {
         // 配置变量和计划变量设置正确
         // 进行后续处理
      } else {
         // 配置变量和计划变量设置不正确
         // 需要进行调整
      }
      // 检查需求创建的方式
      boolean isDemandCreatedByOrderQuantity = isDemandCreatedByOrderQuantity();
      boolean isDemandCreatedByStartDate = isDemandCreatedByStartDate();
      if (isDemandCreatedByOrderQuantity || isDemandCreatedByStartDate) {
         // 需求创建方式设置正确
         // 进行后续处理
      } else {
         // 需求创建方式设置不正确
         // 需要进行调整
      }
      // 检查MRP的配置
      boolean isMRPConfigurationCorrect = isMRPConfigurationCorrect();
      if (isMRPConfigurationCorrect) {
         // MRP配置正确
         // 进行后续处理
      } else {
         // MRP配置不正确
         // 需要进行调整
      }
      

    请注意,以上代码示例仅用于说明解决问题的概念,并非完整的可执行代码。实际使用时,应根据具体的系统和需求进行相应的调整。

    评论

报告相同问题?