ABAP 增强知识整理

本文详细介绍了SAP ABAP中的四种增强方式:用户出口增强、函数增强、BADI接口增强以及隐式和显式增强。通过具体实例和查找方法,阐述了每一代增强的特点和使用场景,强调了激活和实现增强的重要性。
摘要由CSDN通过智能技术生成

关于增强知识的整理

最近在学习增强,总结如下:对于SAP标准程序的增强共有四种类型,用户出口增强(User Exit),函数增强(Enhancement),BADI增强(经典BADI和新式BADI),隐式增强和显式增强(explicit Enhancement ,implicit Enhancement),接下来会分别介绍。

一代增强:用户出口增强

系统提供一个空代码的子过程,用户可以添加自己的代码来实现需求,这类增强都需要修改SAP的标准代码,源代码增强以子程序形式发布,在SAP的发行版本中,使用PERFOMR调用这些子程序,它们在发布时都是空的,这些子程序可以使用程序中的所有全局数据。

一代增强的查找方法:
先找到要增强的主程序(可用SE93或系统->状态),然后找到UserExit_开头的子模块,可根据命名模糊判断其可以进行增强的功能

在这里插入图片描述

二代增强:Enhancement函数增强

  • 源代码增强:以函数模块形式发布,使用CALL CUSTOMER-FUNCTION调用,这些函数模块中,这些函数模块中只能使用接口中传递的参数,不能使用程序的全局变量。
  • 屏幕增强:也包含在函数增强所属的函数组中。
  • 数据表的增强:通常时ci_结构,这些结构以.INCLUDE结构的形式包含在SAP发布的数据表中,用户可以通过向这些结构中添加字段而对数据表进行增强。

上述这类增强通过事务码SMOD进行维护,CMOD进行实现。SMOD中的一个增强可以包含上述的源代码、屏幕和表增强。
Enhancement比较重要的表MODSAP,组件功能模块名(Member):里面记录了所有enhancement的增强;表TFDIR,包括出口函数在内的所有函数表,字段MAND(值为C表示此出口函数被激活)

二代增强的查找方法:
第一种方法,在程序中搜索customer-fun

  • 7
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值