ABAP 增强知识整理

关于增强知识的整理

最近在学习增强,总结如下:对于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-function找到后面的3位数字编号,出口函数名称由三部分组成:EXIT_<程序名>_<3位数字>,通过找到的出口函数名到MODSAP表里查找对应的出口对

  • 7
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
ABAP 四代增强是指在SAP ABAP代码中使用ABAP对象,进行逐渐增量式的改进和扩展。它是为了满足不断变化的业务需求而引入的。 ABAP 四代增强教程包括以下内容: 1. ABAP对象概览:介绍ABAP对象的基本概念和特性,如类、方法、属性等。通过理解这些概念,可以更好地理解ABAP四代增强的应用和实现。 2. ABAP四代增强的类型:指明了ABAP四代增强的四种类型,分别是扩展、实现、隐式和显式实现。通过学习这些类型,可以了解如何在ABAP代码中实现不同类型的增强。 3. 扩展增强:通过继承一个类并添加新方法或属性来扩展已有类的功能。这种增强方式可以使代码更加模块化和易于理解。 4. 实现增强:通过实现一个接口来增强某个类的功能。这种增强方式可以使类之间的关系更加灵活和可扩展。 5. 隐式增强:在ABAP运行时动态地为一个类添加新属性或方法。这种增强方式可以实现运行时的灵活性和可伸缩性。 6. 显式增强:在ABAP开始时明确为类添加新属性或方法。这种增强方式可以使代码更加清晰和易于理解,在编译时就能发现错误。 ABAP四代增强教程的目的是为ABAP开发人员提供一种灵活的扩展和改进现有代码的方法。通过学习和应用ABAP四代增强,开发人员可以更好地满足不断变化的业务需求,提高代码的可维护性和可扩展性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值