This blog article is relevant for you if you get the following error message during the update to the AutoMergeGlobalButton Solution version 2017.38/2018.38 or higher:
FAILURE: The RibbonRule(f146d12c-f718-e611-80fb-5065f38a7a11) component cannot be deleted because it is referenced by 2 other components.
OR if the update was successful, but you get the following error on page load or on [Create Document]-button click:
If this happens on a “Service Activity” record, please check the section “For Service Activity”.
We have changed the enable rules of the [Create Document]-button to make different improvements. If you have not customized the DCP button manually you will not have any problems.
But if you have modified the [Create Document]-button (e.g. via RibbonWorkBench) you will get the above errors.
The reason for that is that due to your custom change a copy of the old XML structure has been created (e.g. in order to add custom display rules to the button) and the update fails because a reference to the old XML structure exists.
How to solve it
First, find out for which entities changes were made (you can skip this step if you know which entities are affected):
To do so open the dependency dialog for the “AutoMergeGlobalButton” solution as described in this blog article.
[YOUR CRM URL]/tools/dependency/dependencyviewdialog.aspx?objectid=[GUID OF AMGLOBALBUTTON SOLUTION]&objecttype=7100&operationtype=dependenciesforuninstall
In this example the changes were only made for the quote entity (Just entities depended on the “Application Ribbons” are relevant):
Next, check the changes for these entities. In this case for the quote entity. This can be done via a manual solution export of the entity ribbon or via the RibbonWorkBench. In this example, we use the RibbonWorkBench. When we open it for the quote entity, it shows the following changes:
It is recommended to create a backup of the Ribbon XML first.
Then remove all elements which are related to the [Create Document]-button. The IDs of all of them start with “MSCRMADDONS” (see highlighted above). This can be done by right-clicking -> Delete.
In detail this means that you remove your custom changes which have been made on the MSCRM-ADDONS ribbon elements. Once done the button is reset to the out of the box behavior.
After publishing these changes the problem should be solved.
Please note: It could also be possible that this change has been made on Organization1 and has been migrated to Organization2 via a managed solution. In this case, this has to be changed or removed in that migration solution.
Problems in Dynamics 365 Online version 9.1: We have noticed the no buttons which were added via the RibbonWorkBench or via any other unmanaged way cannot be undone.
It behaves like follows: You remove the ribbon elements via the RibbonWorkBench and publish it. Everything seems fine, but when you reload the RibbonWorkBench you notice that all elements are here again.
This is a global CRM problem and happens for CRM default buttons as well.
Please contact Microsoft support to fix this.
For Service Activity
If this happens on a “Service Activity” record and you have the “AutoMergeGlobalButtonExtension” solution version 2015.2 or lower installed, please update to the 2015.3 version.
Download the solution via this link: DownLoadLinkToSolutionInTheFolder
Open Dynamics 365 -> Settings -> Solutions -> hit “Import” -> select the zip solution file and follow the wizard.
Still not working
If you followed the above steps but the update does still not work, please send us the following information:
- Error Message of Install/Update process
- CRM Version (Dynamics 356 -> Settings wheel -> About)
- Unique organization name: https://www.mscrm-addons.com/Blog/PostId/9981/unique-organization-name-in-microsoft-dynamics-365
- A screenshot of the dependency dialog for the “AutoMergeGlobalButton” solution (as described above)
- A screenshot of the included elements of the RibbonWorkBench of affected entities (or the )
That’s it! We appreciate your feedback! Please share your thoughts by sending an email to email@example.com.