Show TOC

 Differences Between Classic and New BAdIsLocate this document in the navigation structure

Classic and new BAdIs differ in a number of features important for migration:

  • Differences in the BAdI objects
    1. In the case of classic BAdIs, you create a BAdI object by calling a factory method and reference it by means of a reference variable of the type of the BAdI interface.
    2. In the case of new BadIs, you create a BAdI object with the ABAP statement GET BADI as a handle for the calls of BAdI methods and you reference it with a reference variable of the type of the BAdI. A BAdI object is an instance of an internal BAdI class which is invisible to the outside world.
  • Passing comparison values to the filter
    1. In the case of classic BAdIs, the filter values are stored in a structure and passed with the call of the BAdI methods.
    2. In the case of new BAdIs, the comparison values for the filters used to search for implementations are passed when the BAdI object is created with the GET BADI statement.