SAP系统增强介绍【业务加载项BAdI】


SAP系统增强介绍【业务加载项BAdI】

1.1    业务加载项BAdI

BAdI全称Business AddIn,是基于面向对象模式的增强技术,SAP仅定义接口并在标准程序中调用接口中的方法,但这些方法中不含任何代码,通过创建继承该接口的类来实现方法中的处理逻辑,在标准程序运行时系统实例化类并执行相应方法中的逻辑。

BAdI分为两种类型,典型BAdI和新BAdI,其在标准程序中实例化执行时所使用的ABAP语句不一样,典型BAdI通过全局类CL_EXITHANDLER的静态方法GET_INSTANCE实例化,并使用关键字CALL METHOD执行实例中的方法,而新BAdI通过关键字GET BADI和CALL BADI进行实例化和方法调用。主要差异在于新BAdI可以由ABAP编译器检查语法错误,并且可以通过“使用位置列表”功能查询该BAdI在哪些程序中被调用。

下面以典型BAdI“BADI_FIAA_DOCLINES“为例介绍增强实施过程,通过该BAdI可以在资产折旧时基于成本中心类型(生产、销售、管理等)切换过账的折旧费科目。

查看BAdI接口定义

SAP菜单à工具àABAP工作台à实用程序à业务插件àSE18 – 定义

FI系统增强介绍【06业务加载项BAdI】

图 12 ‑28

双击方法CHANGE_DOCUMENT可进入该方法的定义画面,查看输入和输出参数等。

FI系统增强介绍【06业务加载项BAdI】

图 12 ‑29

为该接口创建实施类

SAP菜单à工具àABAP工作台à实用程序à业务插件àSE19 – 实施

FI系统增强介绍【06业务加载项BAdI】

图 12 ‑30

点击确认 按钮,在实施类中编写增强代码如 图 12‑31 。

FI系统增强介绍【06业务加载项BAdI】

图 12 ‑ 31

验证增强结果

执行事务码AFAB运行折旧,生成会计凭证如 图 12‑32 。

FI系统增强介绍【06业务加载项BAdI】

图 12 ‑ 32


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM