事务BP的用户出口EXIT_SAPMF02D_001

2020-08-16 17:45发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在为Customer Master进行支付数据验证,如果验证失败,则调用一个事件来触发工作流程以进行批准。 使用自定义业务对象ZKNA1并绑定到KNA1。

为了进行验证,我使用出口EXIT_SAPMF02D_001,该出口工作正常,除非客户编号是内部编号范围。 (在内部编号范围内,I-KNA1-KUNNR为空,并且无法使用空白键启动BO:KNA1)

在这种情况下,我在BAdI中编写了代码:Customer _add_data方法:Save_data。 - 没有任何问题。 (此BAdI具有多种用途,它已经实现,我为此目的创建了一个单独的实现)

现在,从功能团队了解到,在实施此BAdI之后-不会为事务:BP触发相同的验证(客户出口EXIT_SAPMF02D_001和BAdI:Customer_add_data)。 我确实通过在此处放置一个断点来进行检查,但是程序并未在出口和BAdI的断点处停止。 还检查了cl_exithandler; 说BAdI没有执行。

Q:是什么原因导致客户出口和BAdI停用?

谢谢

Janisar

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在为Customer Master进行支付数据验证,如果验证失败,则调用一个事件来触发工作流程以进行批准。 使用自定义业务对象ZKNA1并绑定到KNA1。

为了进行验证,我使用出口EXIT_SAPMF02D_001,该出口工作正常,除非客户编号是内部编号范围。 (在内部编号范围内,I-KNA1-KUNNR为空,并且无法使用空白键启动BO:KNA1)

在这种情况下,我在BAdI中编写了代码:Customer _add_data方法:Save_data。 - 没有任何问题。 (此BAdI具有多种用途,它已经实现,我为此目的创建了一个单独的实现)

现在,从功能团队了解到,在实施此BAdI之后-不会为事务:BP触发相同的验证(客户出口EXIT_SAPMF02D_001和BAdI:Customer_add_data)。 我确实通过在此处放置一个断点来进行检查,但是程序并未在出口和BAdI的断点处停止。 还检查了cl_exithandler; 说BAdI没有执行。

Q:是什么原因导致客户出口和BAdI停用?

谢谢

Janisar

付费偷看设置
发送
3条回答
悻福寶寶
1楼 · 2020-08-16 17:56.采纳回答

在BP事务期间未调用用户出口。 万一我们需要解决这个问题,我们应该实施相关的BTE之一来解决该问题。 在事务XD01/XD02和BP期间都将调用BTE。

SC_Yao
2楼-- · 2020-08-16 18:04

您好Janisar

从理论上讲不应该,但是这完全取决于实现,例如:执行期间的错误或缺少逻辑可能会阻止执行。

>

在另一个注释上,阅读SAP OSS注释# 2023421 使我认为用户退出 BP事务完全不会触发EXIT_SAPMF02D_001。 您是否在关闭新的BADI实施后进行了检查? munshi"> janisar munshi

CUSTOMER_ADD_DATA BADI(与CUSTOMER_ADD_DATA_CS BADI一起)旨在实现客户屏幕及其逻辑。

对于您的情况,请查看CUSTOMER_EXTENSION增强点。

亲切的问候,
Mateusz
微wx笑
3楼-- · 2020-08-16 18:17

是的Mateusz,

我在关闭新的实现后尝试过,但程序仍未在客户出口处停止。 就像我所说的,该BAdI可以实现多种方式,并且由于该BAdI已经存在较旧的实现方式。

因此,我更倾向于根本不从BP事务触发退出EXIT_SAPMF02D_001的可能性。

谢谢

Janisar

一周热门 更多>