在不更改功能区的情况下导入解决方案
Import solution without Ribbon changes
我们正在尝试将解决方案从组织 A 导入到组织 B,这样就不会导入在组织 A 中所做的功能区更改。在将实体添加到组织 A 中的解决方案时,我们排除了元数据并添加了实体。从组织 A 导出此解决方案并将其导入组织 B 时,在组织 A 中的实体中所做的功能区更改将替换对组织 B 中的同一实体所做的所有功能区更改。
有没有一种方法可以使功能区更改不包含在解决方案中?
不幸的是,实体元数据定义的 Ribbondiff
xml 还不是可以作为解决方案的一部分进行分割的子组件。
换句话说,没有粒度可以跳过仅使用环境之间解决方案的功能区更改。丝带总是走。
一种解决方法是打开 CRM 功能区 workbench,从组织 B 复制 xml 作为备份。将实体解决方案从 Org A 移动到 Org B 后,将备份 xml 粘贴到 Org B 到 restore/publish.
在解决方案中导出时,不能从实体中排除功能区。您可以做的是排除全局功能区定义(解决方案 -> 客户端扩展 -> 应用程序功能区)。
我建议您删除对实体的本地功能区的更改,而是进行全局功能区自定义,仅针对您感兴趣的实体。如果您随后从解决方案中排除应用程序功能区,更改将留在您的源环境中。
您可以通过将应用程序功能区添加到解决方案来编辑全局功能区:
然后您会在 customizations.xml
中找到全局 <RibbonDiffXml>
(位于文件的最后)。您可以在其中使用 {!EntityLogicalName}
占位符添加所需的 XML。最后,您可以使用 DisplayRule 来确保只有您的特定实体显示功能区按钮:
<DisplayRule Id="My.DisplayRule">
<EntityRule EntityName="myEntity" Context="Form" />
</DisplayRule>
使用 SolutionPackager.exe 您可以排除功能区。
- 从 Dynamics 365 导出解决方案
- 使用SolutionPackager.exe
提取
- 在提取的文件中,从实体文件夹中删除 RibbonDiff.xml 文件
- 编辑 Entity.xml 并删除
<RibbonDiffXml />
- 使用SolutionPackager.exe
打包解决方案
注意:每次导出时都需要这样做
我们正在尝试将解决方案从组织 A 导入到组织 B,这样就不会导入在组织 A 中所做的功能区更改。在将实体添加到组织 A 中的解决方案时,我们排除了元数据并添加了实体。从组织 A 导出此解决方案并将其导入组织 B 时,在组织 A 中的实体中所做的功能区更改将替换对组织 B 中的同一实体所做的所有功能区更改。
有没有一种方法可以使功能区更改不包含在解决方案中?
不幸的是,实体元数据定义的 Ribbondiff
xml 还不是可以作为解决方案的一部分进行分割的子组件。
换句话说,没有粒度可以跳过仅使用环境之间解决方案的功能区更改。丝带总是走。
一种解决方法是打开 CRM 功能区 workbench,从组织 B 复制 xml 作为备份。将实体解决方案从 Org A 移动到 Org B 后,将备份 xml 粘贴到 Org B 到 restore/publish.
在解决方案中导出时,不能从实体中排除功能区。您可以做的是排除全局功能区定义(解决方案 -> 客户端扩展 -> 应用程序功能区)。
我建议您删除对实体的本地功能区的更改,而是进行全局功能区自定义,仅针对您感兴趣的实体。如果您随后从解决方案中排除应用程序功能区,更改将留在您的源环境中。
您可以通过将应用程序功能区添加到解决方案来编辑全局功能区:
然后您会在 customizations.xml
中找到全局 <RibbonDiffXml>
(位于文件的最后)。您可以在其中使用 {!EntityLogicalName}
占位符添加所需的 XML。最后,您可以使用 DisplayRule 来确保只有您的特定实体显示功能区按钮:
<DisplayRule Id="My.DisplayRule">
<EntityRule EntityName="myEntity" Context="Form" />
</DisplayRule>
使用 SolutionPackager.exe 您可以排除功能区。
- 从 Dynamics 365 导出解决方案
- 使用SolutionPackager.exe 提取
- 在提取的文件中,从实体文件夹中删除 RibbonDiff.xml 文件
- 编辑 Entity.xml 并删除
<RibbonDiffXml />
- 使用SolutionPackager.exe 打包解决方案
注意:每次导出时都需要这样做