SAP enhancements
2024-1-11 02:44:16 Author: blogs.sap.com(查看原文) 阅读量:8 收藏

The purpose of this blog is to show the different ways of searching points to enhance SAP applications without having to modify SAP standard system.

There is a business requirement which is not completely covered by SAP standard application. Before starting to think of modifying SAP standard or in a custom development which would mean a significant effort for the company not only at development but also to support it, it is worth to investigate if any of the alternatives given by SAP to enhance its applications could be used to cover the requirement.

When we talk in general about a user-exits, enhancements, BAdI’s…  we mean a  way to enhance SAP standard applications. In general they all work in similar way:

  1. SAP delivers the points where allows customers to modify SAP standard logic.
  2. Customer implements their logic in these points.
  • In the beginning there were user-exits.
  • Then customer-exits were added, wrapped in Enhancements and Projects.
  • Afterwards, Business Transaction event came for Finance.
  • A big step was done with Business Add-In’s (BAdI’s)
  • And finally, Enhancement Framework was delivered containing New BAdI’s, explicit enhancements and implicit enhancements.

Currently all these ways live together in SAP systems and frequently you can see in the code  BAdIs, customer-exits and user-exits at same point.

  1. Search in customizing
  2. Use SE84, filtering by package of your transaction (you get the package in SE93)
  3. SE80 – Enhancement Framework section
  4. What to search in the code and where to put breakpoints to find enhancements while debugging.
    Enhancement type Transact. Search in code for Breakpoint at
    User exit userexit
    Customer exit

    SMOD

    CMOD

    CUSTOMER-FUNCTION

    (SE37: EXIT_<prog>_*)

    “CALL CUSTOMER-FUNCTION”
    BTE FIBF

    OPEN_FI_PERFORM_*

    OUTBOUND_CALL_*

    “BF_FUNCTIONS_FIND” and

    “PC_FUNCTION_FIND”

    BAdI – classic

    SE18

    SE19

    CL_EXITHANDLER
    • EXIT_NAME gives you the BAdI’s name.
    • Follow interface type of referenced variable to navigate to BAdI definition.

    (SE24)

    CL_EXITHANDLER=>GET_INSTANCE

    CALL METHOD cl_exithandler=>get_class_name_by_interface

    BAdI name is returned in exit_name.

    BAdI – new

    SE18

    SE19

    GET BADI

    Follow variable to see BAdI and to navigate to enhancement spot.

    GET BADI

    Check variable values to see BAdI’s name.

    Enhancement-point ENHANCEMENT-POINT
    Enhancement-section ENHANCEMENT-SECTION
  5. How to put all breakpoints at once

Implicit enhancement points are options to insert source code in SAP programs, functions modules and methods without making modifications.They are at certain points in the SAP program and they are not explicitly provided by SAP Development.

You can find implicit enhacement points at

  • The beginning and at the end of the source code of a function module.
  • The beginning and at the end of the source code of a method.
  • Implement additional methods.
  • The end of a structure (type) declaration (to include additional fields).
  • The beginning and at the end of subroutines (to enhance additional functions).
  • The end of includes (to implement additional functions and subroutines).

You  can see implicit enhancement points in ABAP code, from ABAP editor

I hope it helps.


文章来源: https://blogs.sap.com/2024/01/10/sap-enhancements/
如有侵权请联系:admin#unsafe.sh