We all know in classic BADI technology, the reference variable is typed directly to BADI instead of the BADI interface. The program generates BADI handle with the help of GET BADI statement which specifies reference variable. The cx_badi_initial_reference is triggered, if there’s no active implementation of BADI. Having the syntax required in program helps you to perform program-related search for new BADIs.
Steps to search new BADI Program exit:
- Using GET BADI, do a global search in the program and click on the reference variable used in GET BADI statement to go to variable definition.
- To display corresponding enhancement spot, double-click on the BADI name.
You can also set a breakpoint for the GET BADI statement in the debugger to perform a search for a new BADI. Then in the program, search for uses of the reference variables.
Steps to build New BADI Implementation:
- Firstly check the corresponding enhancement spot.
- Select Implement Enhancement Spot and build enhancement implementation.
- Give a name for your enhancement implementation.
- Also give a name for the new BADI implementation and maintain properties for BADI implementation.
- Select Implementing Class for the required BADI in the navigation area.
- Specify implementing class name, that may be inherited from a sample class. You can even copy it as another alternative and select the Change Pushbutton.
- Click on the methods to implement or adjust them.
- Finally, activate the corresponding data and the enhancement implementation.
To use BADI, you should create enhancement implementation which is implementation of higher-level enhancement spot. You should build a BADI implementation for every BADI that you want to use in the enhancement spot. The filter-dependent BADIs allow these:
- Multiple filters for one BADI implementation.
- Numeric filters.
- Implementations with not only single filter values, but also filter conditions using operators (<>, >, <, <=, >=, NP and CP.