SAP增强

news/2024/7/16 6:36:06 标签: 数据结构, 配置管理, thread

SAP 增强已经发展过几代了,建议你系统学习一下 SAP 标准教材 BC425 和 BC427。

简单说一下我的理解:

第一代:基于源代码的增强。
源代码增强以子程序形式发布,在 SAP 的发行版本中,使用 PERFORM 调用这些子程序,它们在发布时都是空的,集中在一些文件名倒数第二个字符为 Z 的包含程序中。用户增强时,应首先到 service marketplace 申请对象键,然后才能修改这些子程序,这些子程序可以使用程序中所有的全局数据。
屏幕增强以客户屏幕形式发布,它们包含在标准程序中,没有什么特别规律。
这种源代码增强和屏幕增强的说明可以从事务码 spro 后台配置中相关模块的路径里面找到。
同时使用的针对数据表的增强是 append structure,可以在事务码 se11 中打开透明表,点击应用工具栏最右边的那个 append structure 按钮就能为数据表追加新的字段。

第二代:基于函数模块的增强。
源代码增强以函数模块形式发布,在 SAP 的发行版本中,使用 CALL CUSTOMER-FUNCTION 调用这些函数模块,它们在发布时只有一句代码 INCLUDE xxxxxxx。用户增强时,无需申请对象键,直接双击这个包含,然后回车,就可以创建相关的包含文件,编写相应的代码了。这些函数模块中只能使用接口中传递的参数,不能使用调用程序的全局变量。
屏幕增强也包含在函数模块所属的函数组中。
针对数据表的增强是 CI_ 结构,这些结构以 .INCLUDE 结构的形式包含在 SAP 发布的数据表中,用户可以通过向这些结构中添加字段而对数据表进行增强。
上述这类增强通过事务码 SMOD 进行维护,CMOD 进行实现。SMOD 中的一个增强可以包含上述的源代码、屏幕和表结构增强,按照较容易理解的逻辑结构来管理这些增强,使用相对更加便利。

第三代:基于面向对象概念的增强。
这就是传说中的 BAdI(Business Add-Ins),源代码增强以接口形式发布,在 SAP 的发行版本中,也是通过接口的方法调用来使用。用户增强时,实际是实现一个(或多个)基于这个接口的实现类。由于接口可以有多个实现类,所以对一个增强可以有多种不同的源代码,它们通过过滤器应用于不同的业务场景。
这种增强使用事务码 SE18 创建、SE19 实现。
很遗憾,我对面向对象理解不深,使用 BAdI 也很少,所以不清楚它怎么实现屏幕增强。

第四代:Switch Framework。
SAP 从 NetWeaver 7.0 以后退出的新增强体系,它对 BAdI 做出了改进,改叫新 BAdI 了。还新增 Enhancement Spot 和 Enhancement Section 以及隐式增强点的概念,基本可以在面向对象的程序里实现处处皆可增强的最高境界。
但是由于我公司业务环境问题,我还完全没有用它做过任何实例,因此没有发言权。

 

 

https://forums.sdn.sap.com/thread.jspa?threadID=1393381


http://www.niftyadmin.cn/n/1313135.html

相关文章

负载均衡原理/种类/算法

一. 负载均衡原理系统的扩展可分为纵向(垂直)扩展和横向(水平)扩展。纵向扩展,是从单机的角度通过增加硬件处理能力,比如CPU处理能力,内存容量,磁盘等方面,实现服务器…

nginx反向代理和负载均衡实现

【一、为什么要使用nginx】要回答为什么要使用nginx,那就先说说nginx能做些什么。首先,nginx能做反向代理,那么什么是反向代理呢,举个栗子,我想在本地使用 www.mickey.com 的域名去访问 www.taobao.com。那么这个时候我…

好笑,笑喷 (笑)

http://user.qzone.qq.com/26362409/blog/1272258604 笑喷

JS 将字符串数组用 | 或其他符号分割

var arr ["吕超","赵云","典韦","关羽","马超","张飞"];var str arr[0];var separator "|";//为了避免第一个名字前有|,把第一个名字从数组中取出,赋值给str,然后在链接其他名…

SAP BADI

http://blog.vsharing.com/zhaodongyang/A933196.html http://jjwenhuo.itpub.net/post/16092/115296 http://www.fengfly.com/plus/view-174480-1.html SAP BADI的实现1 http://www.fengfly.com/plus/view-174481-1.html SAP BADI的实现2 http://www.fengfly.com/plus/view-…

娱乐二人转 大兵说笑话 (笑)

7.13 * 三种花,一种美 6.22 * 不想当将军的裁缝不是好厨子 * 去刑场路远 * 9楼人事科调到8楼 * 大猩猩,美女,照相机,自动变蕉 * 长寿 till die * 历史上有最多女婿的人 6.6 * 假钞,不会印 6、1 * 大兵去参加选美比赛…

VMware vSphere 虚拟化安装及配置ESXI主机

VMware vSphere 虚拟化 安装及配置ESXI主机1、安装 ESXI 6.0主机前记得内存一定要大于4G个,至少也8G吧,不然你会觉得安装过程特别累 2、VMware Workstation 11上面好像只有ESXI 5.0,目前最新的版本 VMware Workstation 12上面才有 ESXI 6.0 3…

redis缓存和mysql数据库同步

转载自:https://www.cnblogs.com/lanbo203/p/7494587.html 解决方案 一、对强一致要求比较高的,应采用实时同步方案,即查询缓存查询不到再从DB查询,保存到缓存;更新缓存时,先更新数据库,再将缓存…