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 methods behaves differently in my custom implematation!

Former Member
0 Kudos

Hello

We have a BADI in FI - SCM of 'APAR_EBPP_GET_DATA', it has a default implementation by SAP (but, this is not showing up in SE19 or SE18 ! ). Its 'Multiple use' check box is UNchecked. It has 6 STATIC methods, among them, GET_DATA and BEFORE_OUTPUT are 2 methods. I am interested in BEFORE_UPDATE method

Now i tested my scenario, BEFORE_OUTPUT method got triggered from default implementation, fine.

I have implemented this BADI (system allowed). Now, again i tested my scenario (with the same test data same system), but now the GET_DATA is triggering(i am not interested in this), BEFORE_OUTPUT is NOT triggering at all! And i noticed my implemetation over ride the SAP's default implementation. Pls. let me know

1) Why BEFORE_OUTPUT is not triggering in my custom implementation, which is triggering in SAP's default implementation?

(with GET_DATA method is either way)

2) If i implement a BADI, its not guarantee that all methods will be triggered, bcz when i put break point in BEFORE_OUTPUT in my custom implementation, its not stoping at all?

Thank you

1 ACCEPTED SOLUTION

krishnendu_laha
Active Contributor
0 Kudos

hello,

if you are implementing a BADI, it should trigger all the methods.

I would suggest to trace the issue:

1. Check if it is a BADI / enhancement spot (because for this you can not have implementation -> display option)

2. if it is a BADI, use where used list of interface to go to the wrapper class, which call all the implementation and debug.

Note:

without 'multiple use' checked, one BADI can have multiple implementation but one is active at a time.

Thanks

Krish

2 REPLIES 2

krishnendu_laha
Active Contributor
0 Kudos

hello,

if you are implementing a BADI, it should trigger all the methods.

I would suggest to trace the issue:

1. Check if it is a BADI / enhancement spot (because for this you can not have implementation -> display option)

2. if it is a BADI, use where used list of interface to go to the wrapper class, which call all the implementation and debug.

Note:

without 'multiple use' checked, one BADI can have multiple implementation but one is active at a time.

Thanks

Krish

0 Kudos

Thank you.

I debugged, seems SAP is setting a flag if customer has created any impplementation on that BADI, fi so, the turned on flag is preventing us to get into BEFORE_OUTPUT method and allowing us to trigger only GET_DATA method!! But, i do not understand why SAP has this notes: 890961 - Biller Direct customer fields in FI-AR !


Note Language: English Version: 2 Validity: Valid Since 25.10.2005
Summary:
Symptom:
This note describes how to insert customer fields in the list of invoices 
and the list of payments.
Other terms:
customer fields, invoices, payments, T_INVOICES, T_MYPAYMENTS, BADI,
APAR_EBPP_GET_DATA, BEFORE_OUTPUT, custExtendedParameters,
getExtendedParameter
Reason and Prerequisites:
This process was not documented sufficiently up to now.
Solution:
Display customer fields
Application:
You can also display your own fields, which you add to the existing
structures or tables in the back end and fill them in the
APAR_EBPP_GET_DATA BADI (the BEFORE_OUTPUT method), on the Web user
interface.