Skip to Content
author's profile photo Former Member
Former Member

Func modules vs. BAPIs; What is a BADI? When do we use it?

Hi experts,

I have some ABAP questions and need your help to answer them.

1. What is the difference between a func. module and a BAPI?

2. What is a BADI and in which circumtanse we use it? How can I view a BADI example?

3. What is a WorkFlow and in which circumtanse we use it? How can I view an WorkFlow example?

Many many thanks,


Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

3 Answers

  • Best Answer
    author's profile photo Former Member
    Former Member
    Posted on Oct 06, 2005 at 09:51 PM


    Please close the post if your questions are answered.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Oct 05, 2005 at 09:02 PM


    All BAPIs are function modules, but they have been enhanced by using object oriented design. BAPIs are designed based around Business objects (in the business object repository SWO1/SWO2). They are created to fill a business need and are a good way of exposing SAP functionality to third party systems. They can be viewed through transaction BAPI. BAPIs are also generally all RFC enabled, whereas not all function modules are.

    Function modules are developed to perform a particular function, some of which is very specific to the program which calls it. A lot of the standard SAP function modules are only really meant to be used by SAP, hence the complete lack of documentation or intuitiveness.

    check this link too.



    Difference Between BADI and User Exits

    Business Add-Ins are a new SAP enhancement technique based on ABAP Objects. They can be inserted into the SAP System to accommodate user requirements too specific to be included in the standard delivery. Since specific industries often require special functions, SAP allows you to predefine these points in your software.

    As with customer exits two different views are available:

    In the definition view, an application programmer predefines exit points in a source that allow specific industry sectors, partners, and customers to attach additional software to standard SAP source code without having to modify the original object.

    In the implementation view, the users of Business Add-Ins can customize the logic they need or use a standard logic if one is available.

    In contrast to customer exits, Business Add-Ins no longer assume a two-level infrastructure (SAP and customer solutions), but instead allow for a multi-level system landscape (SAP, partner, and customer solutions, as well as country versions, industry solutions, and the like). Definitions and implementations of Business Add-Ins can be created at each level within such a system infrastructure.

    SAP guarantees the upward compatibility of all Business Add-In interfaces. Release upgrades do not affect enhancement calls from within the standard software nor do they affect the validity of call interfaces. You do not have to register Business Add-Ins in SSCR.

    The Business Add-In enhancement technique differentiates between enhancements that can only be implemented once and enhancements that can be used actively by any number of customers at the same time. In addition, Business Add-Ins can be defined according to filter values. This allows you to control add-in implementation and make it dependent on specific criteria (on a specific Country value, for example).

    All ABAP sources, screens, GUIs, and table interfaces created using this enhancement technique are defined in a manner that allows customers to include their own enhancements in the standard. A single Business Add-In contains all of the interfaces necessary to implement a specific task.

    The actual program code is enhanced using ABAP Objects. In order to better understand the programming techniques behind the Business Add-In enhancement concept, SAP recommends reading the section on ABAP Objects.

    SE18 - BADI definition

    SE19 - BADI implementation

    3. check the page for workflow links


    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Oct 07, 2005 at 03:54 AM

    BAPI's are remote enabled FM, they don't have changing and exception parameters.

    BAPI's are used as interface between SAP and NON SAP.

    To see BAPI's in your system use TCODE --- BAPI.

    BADI is used if you want to add your own functionality to SAP TCODES.

    Workflow is something you can call automated office.


    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.