One of the most commonly used enhancement techniques to encapsulate customer specific business requirement in SAP standard applications is Business Addin’s, often you will see, inconsistencies reported while renaming or deleting BADI implementations which are already in used.
The intent of this blog is to share similar such experience that we encountered while working on one of the custom requirements where we had to delete and recreate the BADI implementation.
Most of our developer community would be familiar with BADIs, but for those who are new to Business Add-ins can refer below SAP help to know more about Business Add-ins, before understanding the BADI’s inconsistencies that you can come across while working on projects.
Details with solution implemented
We had to delete and recreate a BADI implementation as certain client specific naming conventions and changes were requested, however after a successful deletion of a Badi implementation, its imported artefacts were stilling existing in the system.
Due to this, the BAdI implementation that was deleted was still referred to by a GET BADI call.
The newly created implementation was still not called, even though the previous implementation was deleted.
This was caused as during the processing of BADI deletion the run time tables were not treated correctly.
If any such symptom is observed in any landscape then you can resolve this issue using any of the below approach based on your need to regulated Single or mass inconsistent entries.
For Single BADI generation
Execute the single BAdI using check report “BADI_RSANALYZE” with the given BAdI name and press the Activation icon at the end of the output to regenerate the BAdI and all its implementations
For Mass BADI generation
To detect and repair all inconsistent BAdIs in your system, execute the included mass check report ENHS_BADI_ANALYZE_GENERATE_ALL.
Mainly Such SAP notes are already available at Service market place to correct and regenerate BADI inconsistencies, and this blog was a contribution to share awareness and similar such experience that was encountered recently.
Also refer below important notes that can be helpful to application developers to handle similar such issues while supporting various custom specific implementations using Business Add-ins,
Refer below SAP Note/KBA tile for any BADI inconsistencies.
1521903 Regenerate all inconsistent Badin’s
1561168 ENHS_BADI_ANALYZE_GENERATE_ALL does not find all errors
1589159 Dump: ASSERTION_FAILED in CL_BADI_DT_READER
1548839 Transport of Enhancement Spots cause Badi impl. to be los