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: 

Filter BADI

Former Member
0 Kudos

What is Filter in BADI

Thanks

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Every time a BADI is implemented in SE19, a new class is created for the implemented BADI. If a BADI Definition is flagged for multiple use, it means that you can create as many implementations of that BADI as you would like. For example if you had two different actions that need to be carried out, you could implement each action in a separate implementation. If the BADI is not set up for multiple use, both actions would have to be implemented in the same SE19 implementation.

Filters:

Filters are used to attach some type of criteria to the execution of a BADI. It would be similar to putting a hardcoded "if" statement in your code.

For example, see BADI Definition BDCP_BEFORE_WRITE. This BADI is set up for muletiple use and filters. It is used to do some checking before change pointers are written for a particular ALE Message Type. The Filter value can be set in your implementation to only be carried out for that message type. If a BADI is set up to have a filter value, this must be populated in your implementation.

Filter dependence for BADI definitions means that each interface method automatically has an importing parameter FLT_VAL assigned ot it. This parameter must be filled with a filter value as current parameter when it is called.

A BADI definition should be marked as filter-dependent whenever the characteristic of the BADI implementation should match the characteristics of the filter type - that is, whenever the implementation of different filter values should be different or should only exist at all for certain filter values.

Typical filter types are line of industry or country.

The BADI is filter dependent. In the first tab of your BADI implementation (SE19), the lower half will contain filter details.

STEPS FOR SETTING UP A FILTER

just go to se18 and give ur BADI name..

then Select 'Attributes' Tab ,there u will find option Filter-Dependent in window named "type"..

check tht filter dependent checkbox and give ur data element/field in the Filter type field say u can give 'MOLGA' ..save and come back..

now go to se19 and implement this BADi and there u can give filter values for filed MOLGA..

BADI may be implemented depending on a specific filter value( example COUNTRY-SPECIFIC VERSIONS: distinct implementations of the BADI can be created for the COUNTRY).

a filter type must be entered when defining your enhancement ( a country or industry, for example).

all methods created in the enhancement's interface have filter value 'FLT_VAL' as their import parameter.

the method then selects the active implemetation based on the data provided in the filter value.

for seting the filter value, you must enable the option FILTER DEPEND and provide FILTER TYPE in the ATTRIBUTES of the BADI defination.

SE18 is the transaction code for creating BADI.

Filter dependence for BADI definitions means that each interface method automatically has an importing parameter FLT_VAL assigned ot it. This parameter must be filled with a filter value as current parameter when it is called.

A BADI definition should be marked as filter-dependent whenever the characteristic of the BADI implementation should match the characteristics of the filter type - that is, whenever the implementation of different filter values should be different or should only exist at all for certain filter values.

Typical filter types are line of industry or country.

The BADI is filter dependent. In the first tab of your BADI implementation (SE19), the lower half will contain filter details.

STEPS FOR SETTING UP A FILTER

just go to se18 and give ur BADI name..

then Select 'Attributes' Tab ,there u will find option Filter-Dependent in window named "type"..

check tht filter dependent checkbox and give ur data element/field in the Filter type field say u can give 'MOLGA' ..save and come back..

now go to se19 and implement this BADi and there u can give filter values for filed MOLGA..

Reward Points if found helpfull..

1 REPLY 1

Former Member
0 Kudos

Every time a BADI is implemented in SE19, a new class is created for the implemented BADI. If a BADI Definition is flagged for multiple use, it means that you can create as many implementations of that BADI as you would like. For example if you had two different actions that need to be carried out, you could implement each action in a separate implementation. If the BADI is not set up for multiple use, both actions would have to be implemented in the same SE19 implementation.

Filters:

Filters are used to attach some type of criteria to the execution of a BADI. It would be similar to putting a hardcoded "if" statement in your code.

For example, see BADI Definition BDCP_BEFORE_WRITE. This BADI is set up for muletiple use and filters. It is used to do some checking before change pointers are written for a particular ALE Message Type. The Filter value can be set in your implementation to only be carried out for that message type. If a BADI is set up to have a filter value, this must be populated in your implementation.

Filter dependence for BADI definitions means that each interface method automatically has an importing parameter FLT_VAL assigned ot it. This parameter must be filled with a filter value as current parameter when it is called.

A BADI definition should be marked as filter-dependent whenever the characteristic of the BADI implementation should match the characteristics of the filter type - that is, whenever the implementation of different filter values should be different or should only exist at all for certain filter values.

Typical filter types are line of industry or country.

The BADI is filter dependent. In the first tab of your BADI implementation (SE19), the lower half will contain filter details.

STEPS FOR SETTING UP A FILTER

just go to se18 and give ur BADI name..

then Select 'Attributes' Tab ,there u will find option Filter-Dependent in window named "type"..

check tht filter dependent checkbox and give ur data element/field in the Filter type field say u can give 'MOLGA' ..save and come back..

now go to se19 and implement this BADi and there u can give filter values for filed MOLGA..

BADI may be implemented depending on a specific filter value( example COUNTRY-SPECIFIC VERSIONS: distinct implementations of the BADI can be created for the COUNTRY).

a filter type must be entered when defining your enhancement ( a country or industry, for example).

all methods created in the enhancement's interface have filter value 'FLT_VAL' as their import parameter.

the method then selects the active implemetation based on the data provided in the filter value.

for seting the filter value, you must enable the option FILTER DEPEND and provide FILTER TYPE in the ATTRIBUTES of the BADI defination.

SE18 is the transaction code for creating BADI.

Filter dependence for BADI definitions means that each interface method automatically has an importing parameter FLT_VAL assigned ot it. This parameter must be filled with a filter value as current parameter when it is called.

A BADI definition should be marked as filter-dependent whenever the characteristic of the BADI implementation should match the characteristics of the filter type - that is, whenever the implementation of different filter values should be different or should only exist at all for certain filter values.

Typical filter types are line of industry or country.

The BADI is filter dependent. In the first tab of your BADI implementation (SE19), the lower half will contain filter details.

STEPS FOR SETTING UP A FILTER

just go to se18 and give ur BADI name..

then Select 'Attributes' Tab ,there u will find option Filter-Dependent in window named "type"..

check tht filter dependent checkbox and give ur data element/field in the Filter type field say u can give 'MOLGA' ..save and come back..

now go to se19 and implement this BADi and there u can give filter values for filed MOLGA..

Reward Points if found helpfull..