Skip to Content
Author's profile photo Former Member

Sorting Classic BADI Implementations


This is a self help Blog showcasing how to achieve sequence order for classic BADI Implementation’s. The Sequence of implementations can be achieved using 2 approach in case of classic BADI’s.  The second approach has some restriction


Approach 1 via Sort Technique


Ok here I have a Classic BADI ZDEMO_CLASSIC_BADI and an corresponding Interface ZIF_EX_DEMO_CLASSIC_BADI

Badi Defn 1.jpg


Badi Defn 2.jpg


Badi Defn 3.jpg



Implementation 1

Impl 1.jpg


Implementation 2

Impl 2.jpg



Implementation 3

Impl 3.jpg


There are 3 Implementations for the BADI. Lets try giving a implementation sequence via Sort.

To Sort, click Utilities -> Sort

Sort 1.jpg

If asked provide an Transport Request. That’s all !



Ok now the sorting criteria is available for multiple Implementations. Check as shown below.

Layer visible.jpg



Implement the sorting order. Enter a sorting value in the implementation, save and activate.

3 Sorting values.jpg



Ok lets do a quick test to verify the implementation sorting order.


SE38 Program.jpg



After report execution, we see the implementation order sequence

result.JPG



Approach 2 via Filter values


The sorting can be achieved also via using Filter Type.


2 Options :

1) For a custom BADI, no issues.


2) For standard BADI, check if the filter values are enhanceable. If yes, you can add a new value to the value table of the Filter Type Data Element/Domain by calling the respective implementation. For more info, press F1 on the field enhanceable.

Filter enhanceable.jpg


Create a filter for the BADI ZBADI_WITH_FILTER.


I have created a Data Element ZORDER_SEQUENCE (CHAR10) and used in in the Filter Type

Data Element.jpg


BADI ZDEMO_CLASSIC_BADI with filter type ZORDER_SEQUENCE

Badi with filter.jpg

Save the BADI.



Ok lets move to the Implementation part. We have 3 implementations.

BADI Impl 1.jpg


BADI Impl 2.jpg



BADI Impl 3.jpg


Time for a quick test.

SE38  Program.JPG


Result

RESULT.jpg

So we can use the two approach’s with a careful considerations for the BADI implementations order sequence. Hope this was helpful.

Assigned Tags

      4 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Sachin Panchal
      Sachin Panchal

      Thank you So much....
      Its really helpful. 🙂

      Regards,

      sachin.

      Author's profile photo Kiran K
      Kiran K

      Sujin,

      I doubt if using a Data element with a value range as a FILTER can really be considered as "Execution of IMPL in a defined order".

      Awaiting a few more experts opinion.

      K.Kiran.

      Author's profile photo SN SANTOSH P
      SN SANTOSH P

      Thanks for a nice blog

      Author's profile photo Saurav Ranjan Subudhi
      Saurav Ranjan Subudhi

      it's very nice blog. Thanks a lot !!