Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

BADI - Declaring reference variable

Former Member
0 Kudos

I read many notes, and it always mention about the steps to make the BADI works.

1) declare reference variable with reference to the BADI interface.

2) call method GET_INSTANCE of class CL_EXITHANDLER.

3) call method implemented.

I have just created an implementation using BADI LE_SHP_DELIVERY_PROC. I create default value to shipment type in the method. After activating it, it works on tcode VL02N. Why don't I need to do the above 3 steps and my implementation still works? Do I only need to do the 3 steps if I create my own BADI and implementation?

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi,

Mentioned Three steps are how to find badi for your require T.Code. After You search Badi , You start implementation

project in SE18, if You find its work, You start write coding as your requirement. If you know badi means you no need follow these three steps.

Thanks & Regards

G.Vendhan

7 REPLIES 7

Former Member
0 Kudos

Hi,

Mentioned Three steps are how to find badi for your require T.Code. After You search Badi , You start implementation

project in SE18, if You find its work, You start write coding as your requirement. If you know badi means you no need follow these three steps.

Thanks & Regards

G.Vendhan

0 Kudos

This message was moderated.

0 Kudos

hai,

definition is different and implementation is different

in definition just u create adefinition and the interface and mehtods , but u have not written any code in mehtods how to manipulate data and when u implement u wi be writing the code,

and as u said u have define the badis but some where u have to call in the program so that soem manipultion is to be done for that u have to follow the steps in ur program

first is create a referenc for the badi definition class

and then use call exit_handler giving the badi name

and it will be created in ur program and whne u implement then in ur program the code whihc u have given will be executed

m.a

0 Kudos

But how about a standard BADI? The 3 steps already written in the standard program? Therefore I do not need to write that 3 steps again?

0 Kudos

yes , they have already been done and u need not to do any thing just implement the badi and u write ur code in the methods

m.a

0 Kudos

So conclusion is, if I am creating a z implementation for a standard BADI which is called in a standard transaction, I do not need to write the 3 steps. If I created a z BADI (at se18), then I need to write that 3 steps in my program. Is that correct?

0 Kudos

yes u r right

m.a