ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

三代增强BADI总结

2019-06-03 19:38:53  阅读:286  来源: 互联网

标签:总结 增强 打勾 创建 接口 三代 BADI


这里对sap三代增强做一下总结,虽然已经是过时的技术了.

  • 三代BADI的创建
  • 三代BADI的实施
  • 三代BADI的调用
  • 三代BADI的包及相关表
  • 三代BADI的运行原理
  • 三代BADI的屏幕增强
  1. 三代BADI的创建

事务代码:SE18

由于三代增强已经是过时的技术了,现在提倡用4代增强NEW BADI.所有三代增强的创建入口被隐藏在实用程序下边.

入口 SE18--Utilities--Create classic BAdi.

填写必要字段

  

注意一下系统自动生成的类 ZCL_EX_TEST_OLD_BADI2.这个类是BADI运行的关键.后面会讲到.

Multiple Use 如果打勾了,那么这个Badi可以同时存在多个激活的实例.但实例执行的顺序是没有规律的.

如果Multiple Use打勾了,则该BADI定义就不能有按键增强和子屏幕增强了.

Filter-Depend如果打勾了,需要填写一个过滤器类型,过滤器类型有如下限制: 是char类型的数据元素;长度不能超过30位;具有搜索帮助;有一个具有固定值或者值表的域.

如果启用了过滤器,则所有BADI接口的方法的参数中会自动(也必须)包含一个输入参数(importing):FLT_VAL.

如果Filter-Depend打勾了,则该BAID就不能有按键增强.

在创建BADI时系统会自动根据BADI的名称建议一个接口名称,该名称和自动生成的BADI类只是前缀不同.当然接口名称可以修改.

双击接口名称就可以创建该接口,在接口创建界面定义方法和属性值.

如果启用了过滤器,则所有BADI接口的方法的参数中会自动(也必须)包含一个输入参数(importing):FLT_VAL.

此处创建的接口将作为BADI实施类的接口.

当激活BAID时,系统将会根据接口生成有一个上边提到的BADI类ZCL_EX_TEST_OLD_BADI2,自然该类将包含接口中的所有方法及属性.

关于按键增强(状态栏增强)及子屏幕增强将在后边讲.

     2.     三代BADI的实施  

               事务码:SE19.

              

                在Create Implementation 框中,选择Classic BAdI.输入BADI名称,点击Create按键创建BADI实施.

               

              指定BADI实施名称,继续.

             如果BADI包含实施过滤器FILTER.则在BADI实施的属性页中必须指定过滤值Filter value(可以是多值).只用在在调用BADI的类的接口方法时,传入给参数FLT_VAL的值等于该实施的

             Filter value 时,该实施对应的方法才会被调用.详情见BADI的调用.

            

            然后可以在interface页中重写所有BADI接口的方法了. 没有问题后激活,则badi实施就完成了.

       3. BADI的调用.

           稍后更新

 

 

  

 

              

 

               

 

 

标签:总结,增强,打勾,创建,接口,三代,BADI
来源: https://www.cnblogs.com/weixiaopeng/p/10969560.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有