Application Development and Automation 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: 
Read only

regarding badis

Former Member
0 Likes
805

can any body tell me how the system know about multiple implementations of badi?

can any body tell me how the system know about multiple implementations of badi?

5 REPLIES 5
Read only

Former Member
0 Likes
781

Hi,

Multiple implementations are possible for the same BAdI.

There is no sequence control for multiple implementation since at the time of definition, it doesn’t know which implementation will be active.

All active implementations will be triggered by the application program.

To display the list of all implementations of a BAdI definition, go to Implementation -> Display in SE18.

Regards

Kannaiah

Read only

Former Member
0 Likes
781

Hello,

If a BADI has multiple implementations, the order in which the implementations triggered is not known... i.e no particular order of triggering happens....

Reward if useful...

Regards

Shiva

Read only

Former Member
0 Likes
781

Hi,

Check the below link

Regards,

Raj.

Read only

Former Member
0 Likes
781

You can define whether a BAdI is to be provided for single or multiple use. In the standard version, a BAdI is provided for single use, but a multiple use can also be selected.

In the case of a multiple use, there is a general restriction – in addition to the general restriction regarding variable attributes – that the BAdI methods must not have any EXPORTING or RETURNING parameters. The reason for this is that, if you have a call with CALL BADI, the methods of all the object plug-ins referenced by the BAdI object are called and that there is no definition regarding from which of the implementations a returned value will actually come. CHANGING parameters, on the other hand, are allowed since these are changed by all the calling methods, one after the other, so that a method can also access the parameter changed in a previous method.

For a multiple-use BAdI, several implementations can be called one after the other using CALL BADI. The sequence in which several object plug-ins are called consecutively is the same in repeated calls, but it can be determined in advance in the BADI_SORTER enhancement spot using the predefined BAdI BADI_SORTER:

1. Create the new implementation BADI_SORTER.

2. Enter the name of the BAdI whose object plug-ins you want to call in a sorted sequence as the filter condition for the BADI_NAME filter.

3. Create a screen enhancement to query any kind of sort criterion.

The Enhancement Builder then displays this subscreen with each implementation of the BAdI to be sorted.

4. Implement the methods of the BAdI interface IF_BADI_SORTER according to your sort criteria in the BAdI implementation class.

Without this procedure, the sequence is undefined.

I hope it helps.

Best Regards,

Vibha

Please mark all the helpful answers

Read only

Former Member
0 Likes
781

In SE18 tcode we have one check box called multiuse...if this check box is checked then the system try to get all active implementations for that BADI definition....other wise system doesn't know whether the definition have mulltiple implementations or not.

Regards,

Dara.