Missing menu item extensions during upgrade to one version
I just upgraded; what happened?
The process to upgrade Dynamics 365 Finance and Operations from older versions (7.2, 7.3, etc.) to One Version (10.0) can be a daunting task depending on the amount of overlayering of code that might have been done in previous versions. That code needs to be converted to extensions. But what happens if you have extensions in your previous version and you find out that those extensions are completely missing in your upgraded One Version release branch? This happened to us. The good news is that it is easy to resolve.
It can be an annoying situation to start testing your upgraded version of Dynamics 365 Finance and Operations, expecting all of the existing modifications to be there, only to find out that an extended report menu item no longer works the way you expected. Then you realize it is because the extension is gone. But the solution is simple if you know where to look.
As part of the upgrade process to One Version the existing Main branch is upgraded using the Upgrade Tool in Lifecycle Services (LCS). This process should copy all existing modifications to a new release branch in Azure Dev Ops. What we have found is that there is a limitation in the process where any menu item extensions in the Main branch are not copied at all. This limitation has been reported to Microsoft, but at the time of this blog it has not been resolved.
How do I fix it?
The resolution to this is straightforward. You could easily recreate those extensions in your new release branch, but you don’t have to. What we have done in this situation is to use Window Explorer to copy the appropriate XML files from the old Main branch to the upgraded Release branch.
- Navigate to your old version of code in the Main branch from a Development VM (this is typically K:\AosService\PackagesLocalDirectory).
- Navigate to the location of the menu item extensions (you’ll need to do this for each type of menu item you have extensions for).
- Copy the XML files
- Paste them into the menu item extension location on the Release branch in your upgraded Development VM.
Once you’ve copied the menu item extensions to the appropriate folder, they will show up a Pending Objects in Visual Studio, and they can be checked into your Release branch. Problem solved!