7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 1/37
India SAP CoE, Slide 1
AB1012 – Enhancements – Exits – v1.0
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 2/37
India SAP CoE, Slide 2
Enhancements – Exits
1 Introduction
2 Syntax Description
3 Demonstration
4 Exercises
5 HelpMe
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 3/37
India SAP CoE, Slide 3
Enhancements – Exits
1 Introduction
2 Syntax Description
3 Demonstration
4 Exercises
5 HelpMe
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 4/37
India SAP CoE, Slide 4
Introduction
• Purpose
• Use
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 5/37
India SAP CoE, Slide 5
Purpose
Exit's are nothing but the R/3 Enhancements which allows you to add your own
functionality to SAP’s standard business applications without having to modify the
original applications. SAP creates customer exits for specific programs, screens,
and menus within standard R/3 applications. These exits do not contain any
functionality. Instead, the customer exits act as hooks. You can hang your own add-
on functionality onto these hooks.
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 6/37
India SAP CoE, Slide 6
13
4
2
Overview Diagram
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 7/37
India SAP CoE, Slide 7
Use
• They do not affect standard SAP source code.
When you add new functionality to your SAP System using SAP’s exits, you do notalter the source code of standard SAP programs in any way. The code and screensyou create are encapsulated as separate objects. These customer objects are linked tostandard applications, but exist separately from SAP’s standard software package.
• They do not affect software updates.When you add new functionality to your SAP System using SAP’s exits, your objects (called customer objects) must adhere to strict naming conventions. When itcomes time to upgrade a to a new software release, customer objects’ names ensurethat they will not be affected by any changes or new additions to the standardsoftware package.
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 8/37India SAP CoE, Slide 8
What are Modifications?
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 9/37India SAP CoE, Slide 9
• Any change made to an SAP object in a customer system is called amodification. Customers usually modify their systems for one of two reasons.
Either they make changes to the SAP standard in order to adjust the R/3
System to their specific business needs (actual modifications), or they alter
individual SAP objects in order to correct an error (as recommended in an
SAP error note).
• You should only modify the SAP standard if the modifications you want to
make are absolutely necessary for optimizing work flow in your company. Be
aware that good background knowledge of application structure and flow are
important prerequisites for deciding what kind of modifications to make and
how these modifications should be designed.
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 10/37India SAP CoE, Slide 10
Challenges
• Customer exits are not available for all programs and screens found in the
SAP System.
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 11/37India SAP CoE, Slide 11
Enhancements – Exits
1 PrepareMe
2 Syntax description
3 Demonstration
4 Exercises
5 HelpMe
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 12/37India SAP CoE, Slide 12
ABAP DICTIONARY
Table Enhancements: There are two ways that you can add additional fields to tables without
modifying your system.
• Append Structures:
o Append structures allow you to enhance tables by adding fields to them that are not part of the standard. With append structures, customers can add their own fields toany table or structure they want.
o Append structures are created for use with a specific table. However, a table canhave multiple append structures assigned to it.
• Customizing Includes:
o If customers know in advance that one of the tables or structures delivered to them
by SAP needs to have customer-specific fields added to it, an SAP applicationdeveloper can include these fields in the table using a Customizing includestatement.
o The same Customizing include can be used in multiple tables or structures. This provides for consistency in these tables and structures whenever the itself include isaltered.
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 13/37India SAP CoE, Slide 13
ABAP DICTIONARY
Field Exits:
Field exits take you from a screen field with a data element reference to a function module.
Field exits can be either global or local.
• Field exit function modules adhere to the following naming convention:o prefix: FIELD_EXIT_
o name: <data element name>_
o suffix (optional): 0 to 9, A to Z
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 14/37India SAP CoE, Slide 14
ABAP DICTIONARY
Text Enhancements:
• Possible text enhancements include customer keywords and customer documentation of
data elements.
• Text enhancements differ from other application enhancements in that they take effect
globally in all related SAP applications after activation (global enhancements).
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 15/37India SAP CoE, Slide 15
SAP Application Enhancement
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 16/37India SAP CoE, Slide 16
Customer Enhancement Projects
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 17/37India SAP CoE, Slide 17
Customer Exits
• Function Module Exits
• Menu Exits• Screen Exits
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 18/37India SAP CoE, Slide 18
Implementation of Enhancement in
Customer System
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 19/37India SAP CoE, Slide 19
Creating Customer Enhancement
Projects
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 20/37India SAP CoE, Slide 20
Assigning SAP Enhancement to
customer projects
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 21/37India SAP CoE, Slide 21
Editing Components
Activating Enhancement Projects
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 22/37India SAP CoE, Slide 22
Business Transaction Events
It is also called as Open FI enhancement technique which is based on the following
principle:
• Application developers must define their interface in a function module. An assignment tableis read in the corresponding (generated) code, and the customer modules assigned are called
dynamically.
• This technique differentiates between enhancements that are only allowed to have one
implementation and enhancements that can call multiple implementations in any sequence
desired. Both industry-specific and country-specific enhancements may be defined.
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 23/37India SAP CoE, Slide 23
Enhancements – Exits
1 Introduction
2 Syntax Description
3 Demonstration
4 Exercises
5 HelpMe
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 24/37India SAP CoE, Slide 24
DemonstrationFunction Module Exits
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 25/37India SAP CoE, Slide 25
Menu Exits
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 26/37India SAP CoE, Slide 26
Screen Exits
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 27/37
India SAP CoE, Slide 27
Demonstration
Field Exits :
– It is triggered at field level.
– It is attached at data element
– Specific to one screen only or to all the screen/transactionwhere field appears.
– Field exit is not allowed in SAP version 4.7 and above .
Example with screen shots for consultants working in
SAP V 4.6 below version.
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 28/37
India SAP CoE, Slide 28
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 29/37
India SAP CoE, Slide 29
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 30/37
India SAP CoE, Slide 30
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 31/37
India SAP CoE, Slide 31
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 32/37
India SAP CoE, Slide 32
Enhancements – Exits
1 Introduction
2 Syntax Description
3 Demonstration
4 Exercises
5 HelpMe
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 33/37
India SAP CoE, Slide 33
Exercises
Table enhancement - Append structure (2 Char fields ) for Table
SFLIGHT**
To trigger all the customer exit (Function , Menu and Screen Exit) for
Program SAPBC425_FLIGHT**
Create a project using following Components
SBC**E01(Function Exit)
•SBC**E02(Menu Exit)
•SBC**E03 (Screen Exit)
(** => ranges from 00 to 18)
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 34/37
India SAP CoE, Slide 34
Enhancements – Exits
1 Introduction
2 Syntax Description
3 Demonstration
4 Exercises
5 HelpMe
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 35/37
India SAP CoE, Slide 35
HelpMe
• Tips and Tricks
• Additional Info
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 36/37
India SAP CoE, Slide 36
Tips and Tricks
• SAP application programmers use the ABAP statement CALL CUSTOMER-FUNCTION 'nnn' to call function modules (where 'nnn' is a three-digitnumber). They must also create the function module they want z CALLCUSTOMER-FUNCTION )
• These function modules are always belong to function groups whose names begin with X (X function groups).
The following naming convention applies to these function modules:
– prefix: EXIT
– name of the program that calls the function module
– suffix: three-digit number
• The three parts of the name are separated by two underscores.
• The CALL CUSTOMER-FUNCTION statement is not executed until thecorresponding enhancement project is activated. Multiple calls of the samefunction module are all activated at the same time.
7/29/2019 AB1012 - Enhancements - Exits - V1.0
http://slidepdf.com/reader/full/ab1012-enhancements-exits-v10 37/37
Additional Info
•SAP application programmers can declare global data in include program LxaaaTAP.
•You declare your own global data in include program ZXaaaTOP.
•Include program LXaaaTOP also contains the FUNCTION-POOL statement, which
may not be changed. Therefore, you must always include the message class in
parentheses when outputting messages.
•SAP application programmers can supply customers with default subroutines ininclude LXaaaF00.
Subroutines, modules, and interactive events (AT…) are created as include programs
and included enhancements using include program ZXaaaZZZ.
Additional includes must adhere to the following naming convention:
ZXaaaFnn for subroutines,
ZXaaaOnn for PBO modules,
ZXaaaInn for PAI modules,
ZXaaaEnn for events.