2009 Nov 04 10:05 PM
How is a BADI called from the SAP code ? If I want to create a BADI where exactly do i have to specify in the SAP code that I am calling that BADI ? Is there some configuration where i need to switch on this call ?Kindly let me know.Thanks.
How is a BADI called from the SAP code ? If I want to create a BADI where exactly do i have to specify in the SAP code that I am calling that BADI ? Is there some configuration where i need to switch on this call ?Kindly let me know.Thanks.
2009 Nov 04 10:07 PM
why do you want to create a BADI when SAP has provided tons.
SAP calls a BADI like this : Include : LV56KF98 in Ecc 6.0
form exit_badi_v56k_ibs.
* migrated to new badi
data: l_ref_badi_v56k_ibs type ref to BADI_V56K_IBS.
get badi l_ref_badi_v56k_ibs.
CALL BADI l_ref_badi_v56k_ibs->change_outbound
EXPORTING
control_record_in = control_record_in
control_record_out = control_record_out
i_data = db_data
it_idoc_reduction = tab_idoc_reduction[]
changing
ct_idoc_data = int_edidd[].
2009 Nov 04 10:18 PM
The thing is there is already a BADI implementation that is not getting called once i do a goods issue(which it should do).How and where do i specify how to call this BADI from the SAP std code ?
2009 Nov 04 10:24 PM
ohh if there is already an implementation then hot se19 > <implementation name> and see if its activated.. if not try to reactivate it agian. if its active and still not working then you need to see why its not hitting in the transaction may be the data is not supporting it.
if you know the BADI name (NOT the implementation name)
se18 < badi name>
hit where use list to see where thant BADI is called..
to know which implementation is being used:
menu path > enhancement implementaion > over view to see the implementaion name.
2009 Nov 04 10:24 PM
Hi Abhilasa,
in SE24, opn cl_exithandler.
open the method get_instance.
here keep a break point. and hten run yor tcodes. it will stop at eash possible badi definition for that tcode at each step.. so after getting the proper place and proper definition, you implement it.
2009 Nov 04 11:00 PM
Hi Abhilasa,
for BADI you need elementary knowledge of oo programming: A BADI is an interface defining the methods and parameters just abstract. The standard defines certain points where an active implementation of the interface is called. The CL_exithandler creates an instance of the (customer) implementation of the interface. The method(s) is (are) called and processed.
That means you can not decide if and where a BADI is called, you can just create the implementation and activate it.
Regards,
Clemens
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |