zoukankan      html  css  js  c++  java
  • BTEs – 业务交易事件开发例子

    1, 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种类型,类似于会计凭证验证和替代。
    Publish and Subscribe Interface:只提供SAP数据源,可以供外部程序使用或者达到数据检查的目的。
    Process Interface:是达到数据修改的目的,用来增强标准的业务流程。

    2016-08-26_15-47-13

    2, 查找BTE增强

    通常有两种方法查找BTE增强

    1,在标准程序中查找String ‘OPEN_FI_PERFORM’,找到的函数如果最后是’_E’,则说明这是Publishand Subscribe Interface:,如果是’_P’,则是ProcessInterface。

    2016-08-26_15-53-38

    2,Tcode:FIBF,菜单   Environment->Info System (P/S ),或者直接BERE for Publishand Subscribe Interface  BERP for Process Interface。

    2016-08-26_15-55-41

    2016-08-26_15-57-42

    3, BTE实现

    tcode:FIBF, 菜单 Environment->Info System (P/S )

    选择需要实现的BTE,如下:

    pastedImage_0

    双击 ‘Sample function moudle’按钮,copy 例子FM(需要先创建function group)

    pastedImage_26

    编辑新创建的FM,加入自己的代码

    pastedImage_41

    FIBF,创建一个客户的产品

    2016-08-26_16-05-26

    别忘了勾上激活checkbox,保存需要生成TR

    2016-08-26_16-11-05

    下一步,tcode FIBF,将刚才创建的FM和EVENT通过产品连接起来,如下:

    2016-08-26_16-13-14

    2016-08-26_16-14-02

    然后保存激活,大功告成。

  • 相关阅读:
    centos 7 pip install MySQL-python 报错
    修改centos history记录数上限
    CentOS 7 如何设置为eth0网卡
    字符串判空有空格报错:binary operator expected
    Linux指定用户运行程序
    MySQL 新建用户,为用户授权,指定用户访问数据库
    解决linux 中文乱码
    UNIX目录访问操作
    通过lseek产生空洞文件
    lseek系统调用
  • 原文地址:https://www.cnblogs.com/lvdong18847870057/p/12534985.html
Copyright © 2011-2022 走看看