SAP S/4 HANA SD-PP,aATP – BOP(延期交货订单处理)

2024-02-06 12:59

本文主要是介绍SAP S/4 HANA SD-PP,aATP – BOP(延期交货订单处理),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1 用途

1.1 aATP

1.2 aATP – BOP(延期交货订单处理)

2 需要用到的 BOP FIORI 应用和它们的主要功能

3 BOP 确认策略

4 使用 BOP 的主要业务场景

4.1 先到先得

4.2 同级别订单,按比例分配(对应 - 7.2 使用‘可用性检查’+‘供应分配’的 BOP 执行结果)

4.3 一个订单项,多个计划行

4.4 同时响应不同客户们的需求(对应 - 7.1 使用‘可用性检查’的 BOP 执行结果)

5 BOP 系统配置

5.1 使用‘可用性检查’的 BOP 后台配置

5.2 使用‘可用性检查’的 BOP 权限配置

5.3 使用‘可用性检查’+‘供应分配’的 BOP 后台配置

​5.4 使用‘可用性检查’+‘供应分配’的 BOP 权限配置

6 BOP FIORI 主数据配置

6.1 使用‘可用性检查’的 BOP 主数据配置

​6.2 使用‘可用性检查’+‘供应分配’的 BOP 主数据配置

7 系统准备工作完毕,查看系统执行结果

7.1 使用‘可用性检查’的 BOP 执行结果

7.2 使用‘可用性检查’+‘供应分配’的 BOP 执行结果

7.3 执行 BOP job(作业)


1 用途

1.1 aATP

1. 写‘aATP – BOP(延期交货订单处理)’之前,先搞清楚什么是‘aATP’。

2. ‘aATP’即‘高级可承诺量’。

3. 附上SAP Help Portal上的说明。

总结下来有几点:

1. ‘aATP’是 SAP S/4 HANA中的一项业务功能,可响应销售和生产计划中的订单履行查询。

2. 订单履行查询包括所需的 1)产品 2)工厂 3)需求数量 4)可用产品日期。

3. 对于需求的响应,‘aATP’是基于 1) 当前库存情况 2)未来预期或计划的库存收货 3)考虑并发订单,此外也可以增加限制条件如区域和客户。

4. 对于需求产品的数量、日期和对应的工厂,‘aATP’生成确认的建议。

1.2 aATP – BOP(延期交货订单处理)

1. aATP – BOP(延期交货订单处理)以下简称:BOP

2. 同理,先附上SAP Help Portal上的说明。

 总结下来有几点:

1. 订单履行过程中,发生需求变化或供应变化时,利用 SAP S/4 HANA 的 BOP 功能来检查产品可用性。

2. 利用 SAP S/4 HANA的 BOP 功能,可以检查之前确认过的订单或之前发生过的业务需求是否依然符合现实业务情况。举例:1)取消销售订单,从而释放库存数量 2)重要客户临时增加了订单,取消其他客户已经确认过的订单,满足重要客户临时增加的需求 3)生产订单提供的计划供应周期的延期。

3. 不对更改的可用性情况做出反应,会导致确认过的订单数量大于可用数量,从而可用性检查失败,最后无法创建外向交货单。

2 需要用到的 BOP FIORI 应用和它们的主要功能

注意:以下功能只能在FIORI上实现,SAP GUI 没有相关的T-code可以实现。

序号

FIORI 应用

主要功能

1

配置 BOP 细分

1. 增删改查‘细分对象’

2. 选择条件,如‘售达方’

3. 优先排序,如‘记录创建日期’、‘交货优先级’、‘交货日期’

4. 模拟需求

5. 显示(查)‘细分对象’相关的延期交货订单处理变式

2

配置 BOP 变式

1. 增删改查‘变式’

2. 选择‘回退变式’来处理异常行为

3. 选择业务场景,如‘销售订单’和‘交货单’

4. 选择执行方法,如‘可用性检查’或‘供应分配’或‘可用性检查 + 供应分配’

5. 选择‘BOP 确认策略’

6. 选择‘全局细分’

7. 模拟 BOP 运行或只运行 BOP 一次

3

BOP job(作业)

1. 定期跑 BOP job(作业),实现自动化

4

监控 BOP

1. 监控 BOP 执行结果

3 BOP 确认策略

1. S/4 HANA 2022 最新版本 BOP 确认策略如下

确认策略

评估顺序

检查顺序

系统行为

赢得

2

1

1. 按时完全确认订单

2. 没有按时完全确认订单,系统会报错

收益

3

2

1. 保持已经确认过的订单

2. 不能保持已经确认过的订单,系统会报错

提高

4

3

1. 保持已经确认过的订单

2. 不能保持已经确认过的订单,系统不会报错,并且减少确认订单的数量

重新分配

5

4

1. 确认过的订单数量重新分配给更高级别的策略

2. 订单确认数量不能满足订单数量,系统不会报错

填充

6

5

1. 确认过的订单数量重新分配给更高级别的策略

2. 订单确认数量不能满足订单数量,系统不会报错

损失

1

6

1. 所有确认过的订单数量都释放掉

2. 订单确认数量不能满足订单数量,系统不会报错

不适用

不适用

不会参与’可用性检查’

2. 根据实际测试结果画了个ppt,但由于受限于笔者使用的系统版本,缺少 BOP 确认策略‘提高’和‘略’😒

4 使用 BOP 的主要业务场景

4.1 先到先得

根据销售订单排序定期跑 BOP job(作业), 实现‘先到先得’。但是不使用 BOP 也可以实现‘先到先得’😄,利用 BOP 实现‘先到先得’有点大材小用了。

4.2 同级别订单,按比例分配(对应 - 7.2 使用‘可用性检查’+‘供应分配’的 BOP 执行结果)

按照比例分配给同级别下单的客户,供货给多个客户方,避免如何分配供应的烦恼 😄

4.3 一个订单项,多个计划行

1. 使用 BOP 之前:

一个订单项,多个计划行都会根据交货日期排序确认订单。举个例子2月份的计划行订单,必须是1月份的计划行订单确认完之后才可以确认。

2. 使用 BOP 之后:

根据‘交货日期’或‘产品可用性日期’等等筛选条件,一个订单项里分成几种类别的计划行确认订单。

4.4 同时响应不同客户们的需求(对应 - 7.1 使用‘可用性检查’的 BOP 执行结果)

1. 使用 BOP 之前:

基于不同客户们的促销活动、特殊客户协议、开票冻结等等,需要同时处理大量的不同业务情况。

2. 使用 BOP 之后:

结合 BOP 确认策略,有序的确认不同客户们的订单。

5 BOP 系统配置

5.1 使用‘可用性检查’的 BOP 后台配置

1. 设定可用性检查组使用aATP功能:跨应用组件 > 高级可承诺量(aATP)> 产品可用性检查(PAC)> 定义可用性检查

2. 可用性检查和物料主数据对应关系

3. 设定工厂级别延期交货订单处理:跨应用组件 > 高级可承诺量(aATP)> 延期交货订单处理(BOP)> 配置用于更新延期交货订单的业务场景 

5.2 使用‘可用性检查’的 BOP 权限配置

1. FIORI Launchpad Designer上找到‘延期交货订单处理’应用对应的‘组’和‘目录’。

2. 把‘组’和‘目录’的标识信息都加在新创建的角色‘YJ_PAL’。

5.3 使用‘可用性检查’+‘供应分配’的 BOP 后台配置

1. 激活业务功能‘SUPPLY_ASSIGNMENT_01’。

2. 使用供应分配优先级功能:跨应用组件 > 高级可承诺量(aATP)> 供应分配(分配运行)> 供应分配中的常规设置 > 启用基于确认的细分和优先级划分

5.4 使用‘可用性检查’+‘供应分配’的 BOP 权限配置

1. FIORI Launchpad Designer上找到‘供应分配’应用对应的‘组’和‘目录’。

2. 把‘组’和‘目录’的标识信息都加在新创建的角色‘YJ_PAL’。 

6 BOP FIORI 主数据配置

6.1 使用‘可用性检查’的 BOP 主数据配置

1. 创建5个‘BOP 细分’,凭证类型 = ‘销售订单’,选择条件 = ‘售达方’,排序条件 = ‘记录创建日期’升序。

2. 创建 BOP 变式。基于5个 BOP 确认策略,分配 BOP 细分,执行方法:可承诺量

6.2 使用‘可用性检查’+‘供应分配’的 BOP 主数据配置

1. 创建‘供给排序规则’。

2. 创建‘供给分配原则’。分配策略:成比例的

3. 创建‘BOP 细分’,凭证类型 = ‘销售订单’,选择条件 = ‘交货优先级’和‘物料号’,排序条件 = ‘记录创建时间’升序

4. 创建 BOP 变式。分配 BOP 细分,执行方法:可承诺量供应分配

7 系统准备工作完毕,查看系统执行结果

7.1 使用‘可用性检查’的 BOP 执行结果

1. 使用 BOP 之前,客户确认订单信息:

销售订单

客户

产品

订单数量

确认订单数量

确认订单日期

BOP 确认策略

可用性检查数量

4166

5000000006

SSD_BOP

50

0

-

赢得

50

4167

5000000003

SSD_BOP

50

0

-

收益

4168

5000000007

SSD_BOP

25

25

2023/7/3

重新分配

4169

5000000008

SSD_BOP

15

15

2023/7/3

填充

4170

5000000009

SSD_BOP

10

10

2023/7/3

损失

2. 使用 BOP 之后,客户确认订单信息:

1)‘赢得’确认订单数量 = ‘重新分配’确认订单数量 +‘填充’确认订单数量 + ‘损失’确认订单数量。‘损失’不会往后确认订单,只管损失订单。

2)‘收益’,‘重新分配’和‘填充’确认订单日期根据补货时间往后延,这里举的例子是7天。

3)‘损失’不会往后确认订单,只管损失订单。

销售订单

客户

产品

订单数量

确认订单数量

确认订单日期

BOP 确认策略

可用性检查数量

4166

5000000006

SSD_BOP

50

50(+50)

2023/7/3

赢得

50

4167

5000000003

SSD_BOP

50

0

2023/7/10

收益

4168

5000000007

SSD_BOP

25

0(-25)

2023/7/10

重新分配

4169

5000000008

SSD_BOP

15

0(-15)

2023/7/10

填充

4170

5000000009

SSD_BOP

10

0(-10)

-

损失

4)以上截图是根据不同客户和不同销售订单,确认订单或更改确认订单。‘BOP 细分’里不一定非要用客户区分,你也可以选择用‘客户组’、‘分销渠道’、‘产品组’等多个维护灵活安排 BOP 执行。

7.2 使用‘可用性检查’+‘供应分配’的 BOP 执行结果

1. 使用 BOP 之前,客户确认订单信息:

销售订单

交货优先级

客户

产品

确认订单数量

BOP 确认策略

可用性检查数量

4171

1

5000000010

SSD_PAL

35

赢得

85

4174

2

5000000011

SSD_PAL

50

重新分配

4175

2

5000000012

SSD_PAL

50

重新分配

2. 使用 BOP 之后,客户确认订单和供应分配信息:

按照均匀比例供应分配。

销售订单

交货优先级

客户

产品

确认订单数量

供应分配数量

供应分配百分比

BOP 确认策略

可用性检查数量

4171

1

5000000010

SSD_PAL

35

23

66%

赢得

85

4174

2

5000000011

SSD_PAL

50

31

62%

重新分配

4175

2

5000000012

SSD_PAL

50

31

62%

重新分配

7.3 执行 BOP job(作业)

使用 BOP job(作业),实现自动化。创建 job(作业)的具体方法就不提了,感兴趣的小伙伴可以自己研究研究(简单😄)。但是值得一提的是,既然有 job(作业),就得考虑归档的问题。使用系统标准的数据销毁对象‘ATP_CHECK_LOG_DESTRUCTION’归档。

1. T-code: ILM_DESTRUCTION,直接跑数据销毁对象‘ATP_CHECK_LOG_DESTRUCTION’。

2. T-code: DOBJ,找到数据销毁对象对应的程序,后台创建 job(作业)定期归档。

这篇关于SAP S/4 HANA SD-PP,aATP – BOP(延期交货订单处理)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/684397

相关文章

Python进行JSON和Excel文件转换处理指南

《Python进行JSON和Excel文件转换处理指南》在数据交换与系统集成中,JSON与Excel是两种极为常见的数据格式,本文将介绍如何使用Python实现将JSON转换为格式化的Excel文件,... 目录将 jsON 导入为格式化 Excel将 Excel 导出为结构化 JSON处理嵌套 JSON:

Spring Boot 中的默认异常处理机制及执行流程

《SpringBoot中的默认异常处理机制及执行流程》SpringBoot内置BasicErrorController,自动处理异常并生成HTML/JSON响应,支持自定义错误路径、配置及扩展,如... 目录Spring Boot 异常处理机制详解默认错误页面功能自动异常转换机制错误属性配置选项默认错误处理

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

Java堆转储文件之1.6G大文件处理完整指南

《Java堆转储文件之1.6G大文件处理完整指南》堆转储文件是优化、分析内存消耗的重要工具,:本文主要介绍Java堆转储文件之1.6G大文件处理的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言文件为什么这么大?如何处理这个文件?分析文件内容(推荐)删除文件(如果不需要)查看错误来源如何避

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

Java docx4j高效处理Word文档的实战指南

《Javadocx4j高效处理Word文档的实战指南》对于需要在Java应用程序中生成、修改或处理Word文档的开发者来说,docx4j是一个强大而专业的选择,下面我们就来看看docx4j的具体使用... 目录引言一、环境准备与基础配置1.1 Maven依赖配置1.2 初始化测试类二、增强版文档操作示例2.

MyBatis-Plus通用中等、大量数据分批查询和处理方法

《MyBatis-Plus通用中等、大量数据分批查询和处理方法》文章介绍MyBatis-Plus分页查询处理,通过函数式接口与Lambda表达式实现通用逻辑,方法抽象但功能强大,建议扩展分批处理及流式... 目录函数式接口获取分页数据接口数据处理接口通用逻辑工具类使用方法简单查询自定义查询方法总结函数式接口

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

Python使用vllm处理多模态数据的预处理技巧

《Python使用vllm处理多模态数据的预处理技巧》本文深入探讨了在Python环境下使用vLLM处理多模态数据的预处理技巧,我们将从基础概念出发,详细讲解文本、图像、音频等多模态数据的预处理方法,... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核

Spring Boot @RestControllerAdvice全局异常处理最佳实践

《SpringBoot@RestControllerAdvice全局异常处理最佳实践》本文详解SpringBoot中通过@RestControllerAdvice实现全局异常处理,强调代码复用、统... 目录前言一、为什么要使用全局异常处理?二、核心注解解析1. @RestControllerAdvice2