2012 Feb 23 8:22 PM
Hello,
We are on ECC 6.0. We have several BADIs being used currently for various FI transactions (FBA6, MIRO, FB05, etc.).
We need to change some of the logic in these BADIs for a new project. Is there any way we can make code changes such that when we transport to quality, we can turn on or turn off the specific code changes that were made? Reason is that there are several other projects that test in quality and so if we can turn off the code changes when not required, that would permit other projects to continue their testing.
Thanks
Zack
2012 Feb 23 8:31 PM
Hi,
For BADI's you can create several implementations, one for each project and then activate or desactivate as your requirement.
Regards,
Felipe
2012 Feb 23 10:57 PM
hi
Depends on the type of BADI and its implementations.
Certain BADIs example standrad GTS transfer are activate by customising in SPRO. In the BADI you can see it in the runtime behaviour.
Certain BADi have filters and multiple use where you can put conditions so that it don't affect other projects.
Lastly simplest way if find all active implementations for your BADI and deactiavte in dev and move to qas.
Br
Vijay V
2012 Feb 24 5:59 AM
You ask the basis person to open up the client. So you can do this changes in QA.
Instead of this one best solution is to create one TVARVC parameter where Name will be Badi implementation name and LOW will be X for activate and space will be deactivate (like switch).
At the first line do the coding like this way.
select single low from TVARVC where name = 'Z_IMPLEmentation' into l_value.
if sy-subrc = 0 and l_value is not initial.
**** do you coding
endfi.Thanks
Subhankar
2012 Feb 24 6:24 AM
Hi,
you can create an own new SET / GET parameter and process this new code ownly for users who have individually set this parameter to 'X' ...
Regards,
Klaus
2012 Feb 24 1:58 PM
Hi Zack
From source code perspective it self you cannot switch it from Active/Inactive. However when talking about BADI´s usually they accept multiple implementations, and then ou can play with their status.
This means, once BADI implementation is active, system will execute the code, once it is not active system will not execute the code.
Best regards