‎2007 Dec 07 8:58 PM
We implemented a BADI (GM_CHANGE_ATTRIBUTES) in our Q/A client to test the solution for a problem associated with retirement of assets purchased with a grant account. The BADI implementation and the code that we added did not fix the problem. The transport was therefore never moved to Production. Because we have since pursued a different solution through configuration, we decided to get rid of the BADI implementation.
In the Development client, we deleted the BADI implementation and moved the transport to the Q/A client. The transport at first failed but then was successfully imported to the Q/A client. According to the Development manager, deleting the BADI supposedly caused a problem with versioning and deleted some objects. The manager then had a developer recreate the BADI implementation in the Development client, inactivate it, and then transport it to the Q/A client. We therefore have the BADI implementation back in the Q/A client but inactive.
Was it bad practice to delete the BADI implementation? Does it cause problems to delete a BADI implementation? What is the recommended practice for getting rid of a BADI implementation from your Q/A client that has never gone to Production?
Best regards,
Chris Huff
‎2007 Dec 07 10:43 PM
Hi Chris,
I don't see anything wrong in deleting a Badi Implementation afaik.
Deleting a badi definition can be fatal though.
From what it looks likem there are other changes that got transported along with the badi implementation deletion and caused some problems.
Anyway, I will wait with you for some more expert comments.
Regards,
Ravi Kanth Talagana
‎2007 Dec 07 10:43 PM
Hi Chris,
I don't see anything wrong in deleting a Badi Implementation afaik.
Deleting a badi definition can be fatal though.
From what it looks likem there are other changes that got transported along with the badi implementation deletion and caused some problems.
Anyway, I will wait with you for some more expert comments.
Regards,
Ravi Kanth Talagana
‎2007 Dec 09 9:47 AM
Hi Chris,
We delete a BADI implementation usually when SAP allows only single implementations(Multiple implementations not allowed).In rest of the case we deactivate it and transport accordingly.
Another way is to comment the code in the active implementation and transport.Deletion of an active implementation should be last resort in environment like QA or higher.
The question also depends on the client's perspective if it needs to be removed completely or simply deactivated.
Regards
Byju
‎2007 Dec 14 3:26 PM
Thanks for your responses. We were definitely deleting a BADI implementation ( a Z object) and not a definition. Unfortunately, I don't have the details on the problems that were created in the Q/A system by deleting the BADI implementation.
It sounds as though the least risky approach is to just comment or remove the custom code in the BADI implementation and then inactivate it. I still don't like the idea however of transporting it (the inactive BADI implementation) through to Production when it does not exist there and is not needed.
Thanks again.
Chris Huff