BADI是SAP主要的增强的方式之一,根据不同的阶段,目前BADI有两种:CLassic BADI 和 New BADI。两种BADI的基本原理差不多,但是具体的实现方式不同。说土点就是SAP预留的接口类,这个接口类有一些方法,但是这些方法都是空的,这些方法也有都自己的IMPORTING ,EXPORTING, CHANING参数.我们需要实现这些方法,并且加入自己的代码。
下面以以生产订单收货(Tcode-MB31)为例,详细演示如何实现一个BADI的增强
1, BADI的查找方法
通过system-->status 找到MB31对应的程序,并搜索关键字CL_EXITHANDLER
可以找到所有BADI名字(exit_name).
或SE24(CL_EXITHANDLER)在方法GET_INSTANCE中打断点,然后运行相应事物码扑捉BADI 名字,保存在exit_name中。
2, SE18查看BADI
可以使用SE18查看该BADI,可以看到改BADI对应的接口,接口中定义的方法及参数传递。
以MB_DOCUMENT_BADI为例
可以通过Implementation-->display 查到所有badi的实现,也可以看到SAP提供的例子
3, SE19实现
通过SE19 Implementation该BADI
点击“创建”
点击“保存”,激活
可以在方法内加入自己的代码
激活后就可以测试了。
以上。
发表评论