SAP 增强 01

SAP 增强也叫出口。是在SAP标准功能基础上进行扩展。

这种修改不是说想怎么改就怎么改,必须是在SAP预留的地方进行修改,因此你写的增强一般不会影响SAP标准代码,但是SAP标准程序在运行时会读你写的代码,因此你在增强里可以控制一定的SAP运行逻辑。

SAP增强分一二三四代增强

第一代增强

第一代增强是是基于SAP的源代码增强,也叫User-exit , 可以通过后调配置查找

找到出口相关的点需要点开前面的望远镜,在出现的帮助出口里面细读,
前面有个modify the attributees of the screen fields . 这句话的意思是 修改屏幕字段的属性。

事务码SE38,程序MV45AFZZ,位置:FORM userexit_field_modification.

                             ………………

                             ENDFORM.

这个时候你自己修改,会让你找官方要一个 开发KEY 的如下图。

项目上一般公司都会去申请的

很多人都知道一代增强有一个很大的问题,SAP升级后里面的代码就会被覆盖了。
但是在实际项目中还是会有很多人去写。或许是经验不足,或许是项目周期只有6个月的原因。

因此SAP上线后升级是一个非常大的项目,一般都不会去升级。

其实这个问题是可以解决的,很多人也知道,就是没有串起来。
在很多学习系统中没有开发KEY ,你无法做测试。按照学习顺序来讲该学第二代第三代增强了。
因此很多时间都花在二三代上了。
等你去学习第四代的时候,你去搜下第四代增强几乎前篇一律的都在自开发程序上练习,并且还强调第二三实现不了时才用第四代。
问题是程序都是你自己开发的还做什么增强,没有什么意义,脱离了实际业务。

不过呢,练习的方法确实能派上用场,与一代增强结合起来就比较完美了。
方法都懂只不过没有融会贯通而已。

下面我们他们结合起来。

在SE38输入 MV45AFZZ 之后点显示进来(这个是没有开发KEY 的)

这个时候你无法修改的,你需要把显示增强调出来,这一点非常重要

鼠标放到那个多出来的东西上之后点增强

在曾增强实施前VA02 修改销售订单,抬头是可以看到金额的。

当写完代码后激活增强后

注意:代码写的时候为灰色,写完之后就变成白色了。

前面VA02显示那个金额意义不到,本来是想用VA03跟切合实际.

但如果是VA03显示就得找其他出口了,还是老方法看描述,或者你打个断点能不能进去。
不管怎样增强的功能是达到了。

应用场景:销售订单没有权限的人不能看到金额。

我们建立一个自建表,然后赋予是否有查看金额的权限。增强代码抓取自建表把没有权限的用户金额隐藏起来。

发表评论

ICP备案号: 鄂ICP备2022007022号-1