一、认识BTE
BTE(Business Transaction Event)也称之为“业务交易事件”,一般的增强(Tcode:SMOD|CMOD)依旧使用ABAP进行二次开发,然而BTE则提供了RFC调用其它产品的可能(Tcode:FIBF)。BTE的设计思路更加简单,和BADI有点类似。在标准程序中留有OPEN_FI的出口(以函数OPEN_FI_PERFORM_eventid_type的形式存在),提供一个可配置的TABLE,可以在里面针对某个特定的Event维护自己定义的出口函数,标准程序走到这里,如果查出用户定义了出口函数,则会调用,达到增强的目的。
BTE增强有2种类型,类似于会计凭证的验证和替代。
P/S函数模块(Publish and Subscribe Interface):只提供SAP数据源,可以供外部程序使用或者达到数据检查的目的。
处理函数模块(Process Interface):可以达到数据修改的目的,用来增强标准的业务流程。
讯享网
二、查找BTE增强
通常有两种方法查找BTE增强:
1、在标准程序中查找字符串“OPEN_FI_PERFORM”,如果找到的函数最后是“_E”,则说明这是“P/S函数模块”,如果是“_P”,则是“处理函数模块”。

2、利用事务代码FIBF,通过菜单“环境”→“信息系统(P/S)”/“环境”→“信息系统(处理)”进行查找,或者直接利用事务代码BERE(for Publishand Subscribe Interface)和BERP (for Process Interface)。

三、BTE实现
利用事务代码FIBF,通过菜单“环境”→“信息系统(P/S)”选择需要实现的BTE,如下:

选择后单击“样本函数模块”(Sample function moudle)按钮,复制样本函数(注意首先需要准备好函数组)。

FM创建完成后根据需要编辑自己的代码。

之后回到事务代码FIBF,创建一个客户的产品。注意需要勾选激活复选框后进行保存。

接着利用事务代码FIBF将之前创建的函数(FM)和事件(EVENT)通过产品连接起来。
最后保存激活,调试测试。
利用事务代码SE80找到某个程序所在的“Package”,点击“显示上级对象列表”按钮即可。

运行程序“SNIF”,输入包名,如果勾上“也选择SAP实施业务加载项”就会把SAP标准的也显示出来。

运行我们可以发现各类增强会分门别类的按照页签进行显示。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/70616.html