Find and Replace Object Dependencies
There was a very small feature introduced in MicroStrategy 9.0 with a very huge impact to the project I was working on at the time. The feature was buried and undocumented, and I only knew about it because it was an enhancement request I had logged a year or so prior. Even then I had trouble finding it, and technical support wasn’t even aware of it when I called for questions.
The feature is an extension to the Find and Replace function that allows you to replace Object Dependencies. That means if you have a Metric that you want to replace with a different Metric, instead of making that change in ever Report, Document, Filter, Metric, etc, you could use this tool and do them all at once. The reason it’s so buried is because of the damage it could cause in the wrong hands. The tool (at least when I used it) didn’t include all of the logical checks the normal UI does, such as preventing circular definitions, making it possible to ruin objects or the metadata. However, in the project I was working on at the time, it not only saved us thousands of hours of work, but was the difference in being able to perform a massive re-architecture or not.
The first thing you have to do is enable the feature. This is done on a per project basis, and can be done by editing the Project Configuration and going to the Project Definition -> Advanced section. Under the Dependent Object Options section is “Enable Find and Replace object dependencies“. After enabling it, you can now go to Tools -> Find and Replace and there is now an option for Object Dependencies in the drop down box.
You choose the object you want to replace, search and select a list of objects to replace it on, and then the object to replace it with. You can view the list of targets first and either apply it to all of them, or select them with check boxes to only apply it to a few. Once you say OK, the process is pretty fast to apply to the system.
DISCLAIMER: You can cause irreparable harm to your metadata, so you DEFINITELY want to make a backup for attempting this in a Production system. I would strongly recommend making a copy of your metadata and using the tool there so that you can measure the impacts separately. While the tool can save you a lot of effort, it can also cause you a lot of grief if used incorrectly.