【ZT】Enhancement Framework – Introduction

Enhancement Framework – Introduction

By Naimesh Patel | March 26, 2014 | Enhancement Implementation

ABAP Enhancement Implementations concept which allows you to easily enhance the standard SAP delivered functionality with your desired one. With this series let’s see more about the Enhancement Framework.

Preface

ABAP Enhancement Implementations concepts are there for a while in SAP. I’m haven’t written much about them yet. One of the reader, Hannes Rempel reminded me about the fact. So, I take the opportunity to start writing about this. I have planned for bunch of articles in this series. Hope you would find something new here.

What is an Enhancement

Let’s start with very basics. Enhancement is used when you need to enhance the any standard SAP delivered functionality by introduced new code. There are certain ways to achieve the enhancements:

  • Core Modification – You obtain the access key by registering the object with SAP and make the necessary changes. This is more dangerous and thus least preferable among other techniques. What makes it more dangerous is when SAP provides any OSS note, or while upgrade, there is a great chance of losing the functionality if you don’t perform proper SPAU activities.
  • User Exits – You find SAP delivered Subroutines (PERFORM) which begins with USEREXIT_ in the std SAP programs. Those Subroutines would be collected in a program. To implement the user exit, you would need to also register the object once. They are little bit safer from upgrade point of view as they are in a separate include.
  • Customer Exits – You find SAP provided function exits with CALL CUSTOMER FUNCTION ‘001’. This would be a FM with an include. This include would not be delivered by SAP. If you need your new functionality, you need to create the include and implement your code. You would need to create Customer Enhancement Project in CMOD using the Enhancement which houses the Exit function SMOD.
  • BADI (Business Add Ins) – are the based on Object Oriented Concept. Similarly Std SAP would provide you the BADI calls. You would need to Create the BADI implementation based on the BADI definition. Then you can add your code in the implementation which is essentially a method in the class. You can implement the same BADI multiple times, if the BADI is multiple implementation.

New Enhancements Technique

Generally Enhancements Frameworkenhancements are referred as New Enhancements. They provide more flexibility compared all of its predecessors. Few advantages are:

  • Easy maintenance
  • SAP can deliver more than one business processes in the same code
  • Customer can activate the business processes
  • Upgrade Support

We would learn more about the course of various articles.

Various Types of Enhancements

There are these new enhancement concepts:

  • Explicit Enhancements – Explicit enhancements are similarly provided by SAP at various point of the code. They are provided with ENHANCEMENT-POINT and ENHANCEMENT-SECTION. We will learn more about both of them in upcoming articles, but the basic is ENHANCEMENT-POINT is the empty placeholder for the code where as ENHANCEMENT-SECTION is the placeholder with default code.
  • Implicit Enhancements – Implicit enhancements are not delivered by SAP in the code, but SAP has given flexibility to implement them at various locations
    • Beginning of the Subroutine/Method/FM/Include
    • End of the subroutine/Method/FM/Include
    • Class Enhancements – Pre/Post/Overwrite method
    • FM Enhancements – Additional Parameters

Enhancement Implementation

In order to put your code in to any of the enhancement, you would need to create an implementation for that. If you found an explicit point, you can create the implementation for that point. You implement the logic in your implementation. At run time, system determines how many active implementation exist in the system for that point and executes them.

You can navigate from your implementation or open an implementation in the Enhancement Builder. Enhancement Builder is an integrated tool in SE80 to help you with Enhancement implementations.

时间: 2024-10-20 04:06:46

【ZT】Enhancement Framework – Introduction的相关文章

【DataStructure】Description and Introduction of Tree

[Description] At ree is a nonlinear data structure that models a hierarchical organization. The characteristic eatures are that each element may have several successors (called its "children") and every element except one (called the "root&

【C#】Entity Framework 增删改查和事务操作

1.增加对象 DbEntity db = new DbEntity(); //创建对象实体,注意,这里需要对所有属性进行赋值(除了自动增长主键外),如果不赋值,则会数据库中会被设置为NULL(注意是否可空) var user = new User { Name = "bomo", Age = 21, Gender = "male" }; db.User.Add(user); db.SaveChanges(); 2.删除对象,删除只需要对象的主键 DbEntity d

【145】.NET Framework类库索引

C#编程基础: A1 ………… 基础A2 ………… using 关键字A3 ………… as 关键字A4 ………… is 关键字A5 ………… switch 关键字A6 ………… return 语句关键字A7 ………… enum 关键字A8 ………… Enum 类A9 ………… Struct 类型 G1 ………… 数组G2 ………… String 类G3 ………… StringBuilder 类G4 ………… Convert 类G5 ………… 可空类型 int? & double? & bo

【转】Entity Framework技术导游系列开篇与热身

转自:http://blog.csdn.net/bitfan/article/details/12779517 Entity Framework走马观花 之 把握全局 ========================================= 这是一个系列文章 上一篇<Entity Framework技术导游系列开篇与热身 > ========================================= 在深入学习某项技术之前,应该努力形成对此技术的总体印象,并了解其基本原理,本

MySQL的left on 【zt】

MySQL的left on [zt] (2008-11-03 17:27:30) 转载▼ 标签: it 分类: 学习笔记 MySQL多表连接查询Left Join,Right Join php开源嘛 在讲MySQL的Join语法前还是先回顾一下联结的语法,呵呵,其实连我自己都忘得差不多了,那就大家一起温习吧(如果内容有错误或有疑问,国内关于MySQL联结查询的资料十分少,相信大家在看了本文后会对MySQL联结语法有相当清晰的了解,也不会被Oracle的外联结的(“+”号)弄得糊涂了. 在SQL标

【朝花夕拾】Robot Framework实战演练之开篇

(原创文章,转载请注明出处.) 开博了,简单感慨两句. 前些年一直在做质量体系建设及团队管理的事,忽略了对测试技术热度的保持,这两年有幸重回开发测试第一线,颇感欣喜. 近期随着公司新业务的开展,需要快速组建一套自动化测试框架,用于开展接口及UI自动化测试.虽然自己也曾基于公司业务系统从无到有码过一套测试框架,但由于开发时的思想同时受限于公司业务及框架的适用性上,导致最终虽然框架可完美支持业务,但在易用性.兼容性及可扩展性方面依然存在一定问题,维护成本较高. 根据大牛的推荐,有幸结识RF开源框架.

【转】[特征选择] An Introduction to Feature Selection 翻译

中文原文链接:http://www.cnblogs.com/AHappyCat/p/5318042.html 英文原文链接: An Introduction to Feature Selection 下面的中文译文侧重从原理上进行解释,但是在实际的应用中往往侧重的是实现过程, 可以看考这个链接,描述的比较详细,需要细细的学习:http://blog.csdn.net/bryan__/article/details/51607215 [中文原文] 你需要哪些特征来构建一个预测模型? 这是一个困难的

【原创】Zend Framework 2框架之MVC

ZendFramework 2框架之MVC 作者:sys(360电商技术组) 1.前言 Zend Framework 2是zend官方推出的php开源框架,基于php5.3.他全然採用面向对象的代码实现,并利用了php5.3的一些新特性,比方命名空间.闭包等.由于是官方的推荐的,今天我们就来学习学习Zend Framework 2,由于本人知识浅薄,也没有实际的用Zend Framework 2做项目开发的经验.有错误的地方还请大家指正,也希望在后面的开发中能用用该框架,此篇文章权当抛砖引玉.

【EF】Entity Framework实现属性映射约定

Entity Framework Code First属性映射约定中"约定"一词,在原文版中为"Convention",翻译成约定或许有些不好理解,这也是网上比较大多数的翻译,我们就当这是Entity Framework的一些使用"规则",这样或许更好理解一些. Entity Framework Code First与数据表之间的映射方式有两种实现:Data Annotation和Fluent API.本文中采用创建Product类为例来说明ti