隐式增强点不在呼叫事务VF01中执行

2020-08-19 02:50发布

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

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

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


嗨。

我们创建了一个隐式增强点,用于在保存VF01交易(SD帐单)时更改某些Ztable值。

我们在RV_INVOICE_REFRESH功能模块的最后一行中创建了一个隐式增强点。

此功能模块RV_INVOICE_REFRESH在创建SD账单时,在保存标准例程之后,总是直接通过VF01事务执行,并且当我们在Z程序内部调用事务VF01命令时始终执行。

我们通过在comamnd栏中输入来执行VF01事务,我将会话断点设置为catch,我们可以对其进行调试。

但是当我们使用Call Transaction VF01命令时,相同的中断不会停止执行。

尽管没有任何条件可以调用/执行此增强功能。

我也测试了一个无限循环,但是它没有停止。
我可以在Zprogram中调用一个新的功能模块,但是我真的很想知道它。

在通过sap主屏幕或通过Call Transaction在命令栏中执行事务时,实现隐式增强点时是否有所不同?为什么?

(61.9 kB)
5条回答
暮风yp
2020-08-19 03:51

嗨! 谢谢您的回答。

隐式增强的类型是我们直接在源代码中创建的(在atandard程序的开始或结束时)。

因此,我

在ABAP编辑器(ECC 6.0)的功能模块内部

单击增强按钮(Shift + F4)

该增强上的右键 在功能模块的最后一行指向点线:

在增强操作选项上下文菜单中,选择"创建实现"。

在弹出选项上选择代码(增强选项)。 。

单击"创建增强实施"按钮(F8)

增强实施新名称:zenh_test

短文本:测试

综合增强 。

点击按钮创建。

因此我们现在可以将ABAP代码放入新的增强功能和EndEnhancement中。

增强1 zenh_test。 "活动版本。

我将代码放在这里。

ENDENHANCEMENT。

""""""""""""""""""  """"""""""""""""""""""""""""""""""""""""""""""""""""""  """""""""""""""""""""""""" $" $ \ SE:(1)功能模块RV_INVOICE_REFRESH,结束

一周热门 更多>