SlideShare ist ein Scribd-Unternehmen logo
1 von 20
User-exit Training
INTRODUCTION

Customization and enhancement becomes needed when the customer has
 certain requirements that is not in place in SAP. Hence, SAP allows the
 customer to change the system accordingly and add functionality to the SAP
 system.


SAP created customer exits for specific programs, screens and menus within
 standard R/3 applications.
• Why do we need to use Exits?
 – You should use them because they do not affect the SAP source code but will still allow
   you to change the functionality of SAP to suit your needs. SAP has provided us with
   some standard exits that we could modify by adding our own functionality to them. The
   code and screens you create are encapsulated as separate objects. When you create
   Exits, they are encapsulated as separate objects.
 – Since they do not affect the source code and are named as per SAP naming
   conventions, the do affect future software upgrades. Hence, you do not have to save
   them and then re-enter add-ons attached to exits.
How to find a User-exit

There are several ways to find a User-exit. Below are some steps:
A.
 1. Go to the SAP standard transaction where you want to place a customized exit. Then
    from the menu bar, click System>status, then double click the program name. Then Go
    to Attributes, then get the Package or Development Class.
 2. Go to Tcode CMOD, then from the menu bar, click Utilities>SAP Enhancements.
 3. Enter the Development class you copied from Step 1, then click Execute. There you will
    find the user-exit.
B.
 1. Search for CALL CUSTOMER-FUNCTION and/or CALL CUSTOMER-EXIT in the
    program source code.
C.
 1. Go to SE37, Input EXIT_<Program Name>_* then press F4.
D.
 1. Attached is a program source code to find the user-exits involved in a transaction code.

                                                                    Microsoft Word
                                                                      Document
TYPES OF EXITS

1. Function Module Exits
2. Menu Exits
3. Screen Exits
4. Field Exit
Function Module Exits

Function Module Exits are the most common type of User Exits you will ever
 encounter in SAP. From its name, they are called via a Function Module, and the
 codes are written in an Include program. Let’s create a sample Project.
First, go to tcode CMOD, enter a Project name then click Create.
Enter a meaningful description, then click Enhancement assignments.




Enter the User-exit in the Field (assuming you’ve already found the exit) then click
 the Save button. Then click the Components button afterwards.
Double click on the Function Module Exit and it will lead you to its source code.
 You will now see the Include program. Double click it, and click Create. (If there’s
 a warning message, just hit ENTER)




Add e_kunnr = ‘2155’ to the source code then save the Include, then activate the
 Project.
Sold-to-party is automatically ‘2155’.
MENU EXITS

Using the menu exits, you can add menu items to the menus of standard R/3
   Applications.
The Menu Exit entries have function codes that begin with + (plus sign).
Example steps on how to create an Exit for an Area Menu.
•   Go to TCODE SE43.
•   Type S000 in Area Menu Field then click the Change button. Ignore all
    warnings and choose your login Language.
•   Go to SAP R/3>Office>Double click Customer Function
4. As you can see, the transaction code assigned to this customer function is
  +C01. Now, you must create the transaction code +C01 and assign a program to
  it.




5. To create Transactions, go to TCODE SE93. Put +C01 as Transaction Code,
  then assign a program. In my example, I assigned ZJAYSON as the program.
Customer Function now added to Area Menu S000. Tcode +C01 calls program
 ZJAYSON.




For Menu Exits that involves menus of R/3 Applications in ECC6, it is now part of
 BADI Enhancements.
SCREEN EXITS

Screen Exits defines special areas called Subscreens within a screen. Using
 screen exits you can add subscreens to the screens within R/3 Applications.
To modify the exits, just follow the steps written in the Function Module Exit part of
 this presentation. We will use User-exit COOMKA01. You should be able to see
 the screen below. I named the project ZCOEXIT.




Double Click on the screen Number 999
Input a meaningful description in the Attributes tab, and choose subscreen as
  screen type, then click the Layout button. Add one Label and one Text field in
  the screen. Click Activate afterwards.




We will also need to Activate structure CI_CSKB. Double click it also, then add a
 custom field.
Save and activate the structure, then activate the Project. Run tcode KA03 and
 let’s see what happens.
Now we can see our fields in the Addnl Fields tab in KA03. To input code, we have
 to modify the PBO and PAI section of the subscreen.
FIELD EXITS

Field Exits are no longer created via CMOD in higher versions of SAP. This is
    covered in BADIs.
But the main use of Field Exits is for customers to add customized code when the
   user interacts with a certain Field in SAP, like hitting Enter upon entry of data.
   This is useful for validation purposes.
Questions?
User-exit Training
Thank you
User-exit Training

Weitere ähnliche Inhalte

Was ist angesagt?

BATCH DATA COMMUNICATION
BATCH DATA COMMUNICATIONBATCH DATA COMMUNICATION
BATCH DATA COMMUNICATIONKranthi Kumar
 
Oops abap fundamental
Oops abap fundamentalOops abap fundamental
Oops abap fundamentalbiswajit2015
 
1000 solved questions
1000 solved questions1000 solved questions
1000 solved questionsKranthi Kumar
 
Sap sapscripts tips and tricks
Sap sapscripts tips and tricksSap sapscripts tips and tricks
Sap sapscripts tips and tricksKranthi Kumar
 
Modularisation techniques new
Modularisation techniques newModularisation techniques new
Modularisation techniques newJeet Thombare
 
Call transaction method
Call transaction methodCall transaction method
Call transaction methodKranthi Kumar
 
abap list viewer (alv)
abap list viewer (alv)abap list viewer (alv)
abap list viewer (alv)Kranthi Kumar
 
SAP Modularization techniques
SAP Modularization techniquesSAP Modularization techniques
SAP Modularization techniquesJugul Crasta
 
Smartforms interview questions with answers
Smartforms interview questions with answersSmartforms interview questions with answers
Smartforms interview questions with answersUttam Agrawal
 
Object oriented approach to ALV Lists in ABAP
Object oriented approach to ALV Lists in ABAPObject oriented approach to ALV Lists in ABAP
Object oriented approach to ALV Lists in ABAPNoman Mohamed Hanif
 
Sap Abap Reports
Sap Abap ReportsSap Abap Reports
Sap Abap Reportsvbpc
 
Dialog Programming Overview
Dialog Programming OverviewDialog Programming Overview
Dialog Programming Overviewsapdocs. info
 
Ooabap notes with_programs
Ooabap notes with_programsOoabap notes with_programs
Ooabap notes with_programsKranthi Kumar
 

Was ist angesagt? (20)

BATCH DATA COMMUNICATION
BATCH DATA COMMUNICATIONBATCH DATA COMMUNICATION
BATCH DATA COMMUNICATION
 
SAP Adobe forms
SAP Adobe formsSAP Adobe forms
SAP Adobe forms
 
Oops abap fundamental
Oops abap fundamentalOops abap fundamental
Oops abap fundamental
 
1000 solved questions
1000 solved questions1000 solved questions
1000 solved questions
 
Badi document
Badi documentBadi document
Badi document
 
Abap reports
Abap reportsAbap reports
Abap reports
 
Sap sapscripts tips and tricks
Sap sapscripts tips and tricksSap sapscripts tips and tricks
Sap sapscripts tips and tricks
 
Modularisation techniques new
Modularisation techniques newModularisation techniques new
Modularisation techniques new
 
Call transaction method
Call transaction methodCall transaction method
Call transaction method
 
abap list viewer (alv)
abap list viewer (alv)abap list viewer (alv)
abap list viewer (alv)
 
SAP Modularization techniques
SAP Modularization techniquesSAP Modularization techniques
SAP Modularization techniques
 
07 sap scripts
07 sap scripts07 sap scripts
07 sap scripts
 
Smartforms interview questions with answers
Smartforms interview questions with answersSmartforms interview questions with answers
Smartforms interview questions with answers
 
Object oriented approach to ALV Lists in ABAP
Object oriented approach to ALV Lists in ABAPObject oriented approach to ALV Lists in ABAP
Object oriented approach to ALV Lists in ABAP
 
Sap Abap Reports
Sap Abap ReportsSap Abap Reports
Sap Abap Reports
 
Dialog Programming Overview
Dialog Programming OverviewDialog Programming Overview
Dialog Programming Overview
 
Sap abap tutorials
Sap abap tutorialsSap abap tutorials
Sap abap tutorials
 
Ooabap notes with_programs
Ooabap notes with_programsOoabap notes with_programs
Ooabap notes with_programs
 
Field symbols
Field symbolsField symbols
Field symbols
 
SAP Smart forms
SAP Smart formsSAP Smart forms
SAP Smart forms
 

Andere mochten auch

SAP ABAP Latest Interview Questions with Answers by Garuda Trainings
SAP ABAP Latest Interview Questions with Answers by Garuda TrainingsSAP ABAP Latest Interview Questions with Answers by Garuda Trainings
SAP ABAP Latest Interview Questions with Answers by Garuda TrainingsGaruda Trainings
 
Prashant sap abap developer
Prashant sap abap developerPrashant sap abap developer
Prashant sap abap developerPrashant Singh
 
Yash technologies interview questions and answers
Yash technologies interview questions and answersYash technologies interview questions and answers
Yash technologies interview questions and answersGarySpeed1234
 
Introducing enhancement framework.doc
Introducing enhancement framework.docIntroducing enhancement framework.doc
Introducing enhancement framework.docKranthi Kumar
 
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.docManikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.docmanikanta sai kumar karri
 
Scenario on business transaction events
Scenario on business transaction eventsScenario on business transaction events
Scenario on business transaction eventsKranthi Kumar
 
Sap fico Study material
Sap fico  Study materialSap fico  Study material
Sap fico Study materialHabeeb Rahman
 
Sap MM-configuration-step-by-step-guide
Sap MM-configuration-step-by-step-guideSap MM-configuration-step-by-step-guide
Sap MM-configuration-step-by-step-guideVenet Dheer
 
Sap customer account_groups_vs_sap_partner_functions (2)
Sap customer account_groups_vs_sap_partner_functions (2)Sap customer account_groups_vs_sap_partner_functions (2)
Sap customer account_groups_vs_sap_partner_functions (2)knani90
 
The simplification of the vendor master record
The simplification of the vendor master recordThe simplification of the vendor master record
The simplification of the vendor master recordRobert Ward
 
Dot Net 串接 SAP
Dot Net 串接 SAPDot Net 串接 SAP
Dot Net 串接 SAPLearningTech
 
Dr John Dee - Communications With Spirits - Free Ebook
Dr John Dee -  Communications With Spirits - Free EbookDr John Dee -  Communications With Spirits - Free Ebook
Dr John Dee - Communications With Spirits - Free EbookChuck Thompson
 
Sap is retail manohar babu
Sap is retail  manohar babuSap is retail  manohar babu
Sap is retail manohar babuRathnam Bala
 
2 07 Partner Determination
2 07 Partner Determination2 07 Partner Determination
2 07 Partner Determinationnaseem2117
 
Pricing Routine In Vofm
Pricing Routine In VofmPricing Routine In Vofm
Pricing Routine In Vofmgueste6b4e7
 

Andere mochten auch (18)

SAP ABAP Latest Interview Questions with Answers by Garuda Trainings
SAP ABAP Latest Interview Questions with Answers by Garuda TrainingsSAP ABAP Latest Interview Questions with Answers by Garuda Trainings
SAP ABAP Latest Interview Questions with Answers by Garuda Trainings
 
SAP ABAP Material
SAP ABAP MaterialSAP ABAP Material
SAP ABAP Material
 
Prashant sap abap developer
Prashant sap abap developerPrashant sap abap developer
Prashant sap abap developer
 
Yash technologies interview questions and answers
Yash technologies interview questions and answersYash technologies interview questions and answers
Yash technologies interview questions and answers
 
Introducing enhancement framework.doc
Introducing enhancement framework.docIntroducing enhancement framework.doc
Introducing enhancement framework.doc
 
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.docManikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
 
Scenario on business transaction events
Scenario on business transaction eventsScenario on business transaction events
Scenario on business transaction events
 
Sap fico Study material
Sap fico  Study materialSap fico  Study material
Sap fico Study material
 
Sap MM-configuration-step-by-step-guide
Sap MM-configuration-step-by-step-guideSap MM-configuration-step-by-step-guide
Sap MM-configuration-step-by-step-guide
 
Create customer master
Create customer masterCreate customer master
Create customer master
 
Sap customer account_groups_vs_sap_partner_functions (2)
Sap customer account_groups_vs_sap_partner_functions (2)Sap customer account_groups_vs_sap_partner_functions (2)
Sap customer account_groups_vs_sap_partner_functions (2)
 
The simplification of the vendor master record
The simplification of the vendor master recordThe simplification of the vendor master record
The simplification of the vendor master record
 
022006 zaidi badi
022006   zaidi badi022006   zaidi badi
022006 zaidi badi
 
Dot Net 串接 SAP
Dot Net 串接 SAPDot Net 串接 SAP
Dot Net 串接 SAP
 
Dr John Dee - Communications With Spirits - Free Ebook
Dr John Dee -  Communications With Spirits - Free EbookDr John Dee -  Communications With Spirits - Free Ebook
Dr John Dee - Communications With Spirits - Free Ebook
 
Sap is retail manohar babu
Sap is retail  manohar babuSap is retail  manohar babu
Sap is retail manohar babu
 
2 07 Partner Determination
2 07 Partner Determination2 07 Partner Determination
2 07 Partner Determination
 
Pricing Routine In Vofm
Pricing Routine In VofmPricing Routine In Vofm
Pricing Routine In Vofm
 

Ähnlich wie User-exit Training Guide

ERP Magazine April 2018 Issue 1
ERP Magazine April 2018 Issue 1 ERP Magazine April 2018 Issue 1
ERP Magazine April 2018 Issue 1 Rehan Zaidi
 
ERP Magazine April 2018 - The magazine for SAP ABAP Professionals
ERP Magazine April 2018 - The magazine for SAP ABAP ProfessionalsERP Magazine April 2018 - The magazine for SAP ABAP Professionals
ERP Magazine April 2018 - The magazine for SAP ABAP ProfessionalsRehan Zaidi
 
Change transport system in SAP
Change transport system in SAP Change transport system in SAP
Change transport system in SAP chinu141
 
11 Enhancements & Modifications.pptx
11 Enhancements &     Modifications.pptx11 Enhancements &     Modifications.pptx
11 Enhancements & Modifications.pptxSaiRahulReddy4
 
Magento 2 Advance Shop By Brand Extension
Magento 2 Advance Shop By Brand ExtensionMagento 2 Advance Shop By Brand Extension
Magento 2 Advance Shop By Brand ExtensionAppJetty
 
COM 211 PRESENTATION.pptx
COM 211 PRESENTATION.pptxCOM 211 PRESENTATION.pptx
COM 211 PRESENTATION.pptxAnasYunusa
 
Abapdebuggingfrombasictoadvance 140214043218-phpapp01
Abapdebuggingfrombasictoadvance 140214043218-phpapp01Abapdebuggingfrombasictoadvance 140214043218-phpapp01
Abapdebuggingfrombasictoadvance 140214043218-phpapp01IT TRAINER
 
BADI IMPLEMENTATION.pdf
BADI IMPLEMENTATION.pdfBADI IMPLEMENTATION.pdf
BADI IMPLEMENTATION.pdfssuser08365f
 
Software engineering modeling lab lectures
Software engineering modeling lab lecturesSoftware engineering modeling lab lectures
Software engineering modeling lab lecturesmarwaeng
 
Lect02 Introducing Programming.ppt
Lect02 Introducing Programming.pptLect02 Introducing Programming.ppt
Lect02 Introducing Programming.pptNourhanTarek23
 
Magento 2 Advance Shop By Brand Extension, Display Logo Slider on Store
Magento 2 Advance Shop By Brand Extension, Display Logo Slider on StoreMagento 2 Advance Shop By Brand Extension, Display Logo Slider on Store
Magento 2 Advance Shop By Brand Extension, Display Logo Slider on StoreBiztech Store
 
Magento 2 Language Translator Extension
Magento 2 Language Translator ExtensionMagento 2 Language Translator Extension
Magento 2 Language Translator ExtensionAppJetty
 
Getting started with code composer studio v3.3 for tms320 f2812
Getting started with code composer studio v3.3 for tms320 f2812Getting started with code composer studio v3.3 for tms320 f2812
Getting started with code composer studio v3.3 for tms320 f2812Pantech ProLabs India Pvt Ltd
 
Software engineering
Software engineeringSoftware engineering
Software engineeringrenukarenuka9
 
Software engineering
Software engineeringSoftware engineering
Software engineeringrenukarenuka9
 

Ähnlich wie User-exit Training Guide (20)

enhancements.ppt
enhancements.pptenhancements.ppt
enhancements.ppt
 
ERP Magazine April 2018 Issue 1
ERP Magazine April 2018 Issue 1 ERP Magazine April 2018 Issue 1
ERP Magazine April 2018 Issue 1
 
ERP Magazine April 2018 - The magazine for SAP ABAP Professionals
ERP Magazine April 2018 - The magazine for SAP ABAP ProfessionalsERP Magazine April 2018 - The magazine for SAP ABAP Professionals
ERP Magazine April 2018 - The magazine for SAP ABAP Professionals
 
Change transport system in SAP
Change transport system in SAP Change transport system in SAP
Change transport system in SAP
 
11 Enhancements & Modifications.pptx
11 Enhancements &     Modifications.pptx11 Enhancements &     Modifications.pptx
11 Enhancements & Modifications.pptx
 
Magento 2 Advance Shop By Brand Extension
Magento 2 Advance Shop By Brand ExtensionMagento 2 Advance Shop By Brand Extension
Magento 2 Advance Shop By Brand Extension
 
COM 211 PRESENTATION.pptx
COM 211 PRESENTATION.pptxCOM 211 PRESENTATION.pptx
COM 211 PRESENTATION.pptx
 
Basic Debugging
Basic DebuggingBasic Debugging
Basic Debugging
 
Abapdebuggingfrombasictoadvance 140214043218-phpapp01
Abapdebuggingfrombasictoadvance 140214043218-phpapp01Abapdebuggingfrombasictoadvance 140214043218-phpapp01
Abapdebuggingfrombasictoadvance 140214043218-phpapp01
 
User Exits
User ExitsUser Exits
User Exits
 
Oracle forms 6_i__1_
Oracle forms 6_i__1_Oracle forms 6_i__1_
Oracle forms 6_i__1_
 
BADI IMPLEMENTATION.pdf
BADI IMPLEMENTATION.pdfBADI IMPLEMENTATION.pdf
BADI IMPLEMENTATION.pdf
 
Software engineering modeling lab lectures
Software engineering modeling lab lecturesSoftware engineering modeling lab lectures
Software engineering modeling lab lectures
 
Vb6.0 intro
Vb6.0 introVb6.0 intro
Vb6.0 intro
 
Lect02 Introducing Programming.ppt
Lect02 Introducing Programming.pptLect02 Introducing Programming.ppt
Lect02 Introducing Programming.ppt
 
Magento 2 Advance Shop By Brand Extension, Display Logo Slider on Store
Magento 2 Advance Shop By Brand Extension, Display Logo Slider on StoreMagento 2 Advance Shop By Brand Extension, Display Logo Slider on Store
Magento 2 Advance Shop By Brand Extension, Display Logo Slider on Store
 
Magento 2 Language Translator Extension
Magento 2 Language Translator ExtensionMagento 2 Language Translator Extension
Magento 2 Language Translator Extension
 
Getting started with code composer studio v3.3 for tms320 f2812
Getting started with code composer studio v3.3 for tms320 f2812Getting started with code composer studio v3.3 for tms320 f2812
Getting started with code composer studio v3.3 for tms320 f2812
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 

User-exit Training Guide

  • 2. INTRODUCTION Customization and enhancement becomes needed when the customer has certain requirements that is not in place in SAP. Hence, SAP allows the customer to change the system accordingly and add functionality to the SAP system. SAP created customer exits for specific programs, screens and menus within standard R/3 applications.
  • 3. • Why do we need to use Exits? – You should use them because they do not affect the SAP source code but will still allow you to change the functionality of SAP to suit your needs. SAP has provided us with some standard exits that we could modify by adding our own functionality to them. The code and screens you create are encapsulated as separate objects. When you create Exits, they are encapsulated as separate objects. – Since they do not affect the source code and are named as per SAP naming conventions, the do affect future software upgrades. Hence, you do not have to save them and then re-enter add-ons attached to exits.
  • 4. How to find a User-exit There are several ways to find a User-exit. Below are some steps: A. 1. Go to the SAP standard transaction where you want to place a customized exit. Then from the menu bar, click System>status, then double click the program name. Then Go to Attributes, then get the Package or Development Class. 2. Go to Tcode CMOD, then from the menu bar, click Utilities>SAP Enhancements. 3. Enter the Development class you copied from Step 1, then click Execute. There you will find the user-exit. B. 1. Search for CALL CUSTOMER-FUNCTION and/or CALL CUSTOMER-EXIT in the program source code. C. 1. Go to SE37, Input EXIT_<Program Name>_* then press F4. D. 1. Attached is a program source code to find the user-exits involved in a transaction code. Microsoft Word Document
  • 5. TYPES OF EXITS 1. Function Module Exits 2. Menu Exits 3. Screen Exits 4. Field Exit
  • 6. Function Module Exits Function Module Exits are the most common type of User Exits you will ever encounter in SAP. From its name, they are called via a Function Module, and the codes are written in an Include program. Let’s create a sample Project. First, go to tcode CMOD, enter a Project name then click Create.
  • 7. Enter a meaningful description, then click Enhancement assignments. Enter the User-exit in the Field (assuming you’ve already found the exit) then click the Save button. Then click the Components button afterwards.
  • 8. Double click on the Function Module Exit and it will lead you to its source code. You will now see the Include program. Double click it, and click Create. (If there’s a warning message, just hit ENTER) Add e_kunnr = ‘2155’ to the source code then save the Include, then activate the Project.
  • 10. MENU EXITS Using the menu exits, you can add menu items to the menus of standard R/3 Applications. The Menu Exit entries have function codes that begin with + (plus sign). Example steps on how to create an Exit for an Area Menu. • Go to TCODE SE43. • Type S000 in Area Menu Field then click the Change button. Ignore all warnings and choose your login Language. • Go to SAP R/3>Office>Double click Customer Function
  • 11. 4. As you can see, the transaction code assigned to this customer function is +C01. Now, you must create the transaction code +C01 and assign a program to it. 5. To create Transactions, go to TCODE SE93. Put +C01 as Transaction Code, then assign a program. In my example, I assigned ZJAYSON as the program.
  • 12.
  • 13. Customer Function now added to Area Menu S000. Tcode +C01 calls program ZJAYSON. For Menu Exits that involves menus of R/3 Applications in ECC6, it is now part of BADI Enhancements.
  • 14. SCREEN EXITS Screen Exits defines special areas called Subscreens within a screen. Using screen exits you can add subscreens to the screens within R/3 Applications. To modify the exits, just follow the steps written in the Function Module Exit part of this presentation. We will use User-exit COOMKA01. You should be able to see the screen below. I named the project ZCOEXIT. Double Click on the screen Number 999
  • 15. Input a meaningful description in the Attributes tab, and choose subscreen as screen type, then click the Layout button. Add one Label and one Text field in the screen. Click Activate afterwards. We will also need to Activate structure CI_CSKB. Double click it also, then add a custom field.
  • 16. Save and activate the structure, then activate the Project. Run tcode KA03 and let’s see what happens.
  • 17. Now we can see our fields in the Addnl Fields tab in KA03. To input code, we have to modify the PBO and PAI section of the subscreen.
  • 18. FIELD EXITS Field Exits are no longer created via CMOD in higher versions of SAP. This is covered in BADIs. But the main use of Field Exits is for customers to add customized code when the user interacts with a certain Field in SAP, like hitting Enter upon entry of data. This is useful for validation purposes.