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?