我们正尝试将解决方案从组织A导入到组织B,以便不导入在组织A中进行的功能区更改。在向组织A中的解决方案添加实体时,我们排除了元数据并添加了实体。从组织A导出此解决方案并将其导入组织B时,在组织A中的实体中进行的功能区更改将替换对组织B中的同一实体进行的所有功能区更改。
是否有解决方案中不包括色带更改的方法?
答案 0 :(得分:1)
不幸的是,实体元数据定义的Ribbondiff
xml尚未成为可以作为解决方案一部分进行细分的子组件。
换句话说,没有粒度可以仅使用环境之间的解决方案来跳过功能区更改。功能区始终存在。
一种解决方法是打开CRM功能区工作台,从org B复制xml作为备份。将实体解决方案从组织A移到组织B后,将备份xml粘贴到组织B中以恢复/发布。
答案 1 :(得分:1)
在解决方案中导出时,不能从实体中排除功能区。您可以做的是排除全局功能区定义(解决方案->客户端扩展->应用程序功能区)。
我建议您删除对实体的本地功能区的更改,而是进行仅针对您感兴趣的实体的全局功能区自定义。如果您随后从解决方案中排除“应用程序功能区”,则更改将保留在您的源环境中落后。
然后您将在<RibbonDiffXml>
中找到全局customizations.xml
(位于文件的最后)。您可以在此处使用{!EntityLogicalName}
占位符添加所需的XML。最后,您可以使用DisplayRule来确保只有您的特定实体具有显示的功能区按钮:
<DisplayRule Id="My.DisplayRule">
<EntityRule EntityName="myEntity" Context="Form" />
</DisplayRule>
答案 2 :(得分:0)
使用 SolutionPackager.exe 可以排除功能区。
<RibbonDiffXml />
注意:每次导出时都需要这样做