我是CRM的初学者。我几乎没有什么基本的困惑。在我去寻找一些大事之前我想要清除它。我有两个案例让我感到困惑。
案例1:我有一个2版本的托管解决方案。 MyAccount 1.0.0.0和MyAccount 1.0.1.0。在版本1.0.0.0中,我在CRM帐户表单中有字段。在版本1.0.1.0中,我添加了一个字段地址传真并删除了一个字段网站。因此,当用户添加版本1.0.1.0时,它将覆盖设计。如果我想保留较旧的设计,我可以改变这种行为吗?
案例2:我有2种不同的托管解决方案。 MyAccount 1.0.0.0和ManageBankAccount 1.0.0.0。在第一个托管解决方案中,我在CRM帐户表单中有字段。在第二个托管解决方案中,我添加了一个字段地址传真并删除了一个字段网站。那么,如果A-用户添加第一个托管解决方案然后再添加第二个托管解决方案,结果会是什么? B-用户添加第二个托管解决方案,然后是第一个托管解决方案?
有人建议我使用案例1,案例2-A,案例2-B吗?
(这里,插件意味着托管解决方案。)
注意:这些是基于以下MSDN内容的理解:
合并表单自定义
将解决方案打包为托管解决方案时,将存储在FormXML中的表单定义与原始FormXML进行比较,并且只有差异包含在托管解决方案中。当托管解决方案安装在新组织中时,表单自定义差异将与现有表单的FormXML合并,以创建新的表单定义。此新表单定义是用户看到的内容以及系统定制程序可以修改的内容。卸载托管解决方案时,仅删除托管解决方案中找到的那些表单元素。
将新元素添加到要合并的表单时,建议您在新容器元素(选项卡或节)中包含新元素。任何容器的添加都将附加到容器的末尾。例如,添加到节中的字段将位于节的末尾。预计安装解决方案的定制程序将修改表单,以便在安装后重新排列元素。
另请阅读Conflict resolution。
热门胜利
对于所有其他解决方案组件,计算任何冲突以支持最后应用的自定义。对于托管解决方案,这通常意味着应用了最后安装的解决方案。
现在回答你的问题:
案例1:我有一个2版本的托管解决方案。 MyAccount 1.0.0.0和MyAccount 1.0.1.0。在版本1.0.0.0中,我在CRM帐户表单中有字段。在版本1.0.1.0中,我添加了一个字段地址传真并删除了一个字段网站。因此,当用户添加版本1.0.1.0时,它将覆盖设计。如果我想保留较旧的设计,我可以改变这种行为吗?
不,您无法更改此覆盖行为。这是托管解决方案组件导入的默认CRM产品行为。
假设您已导入1.0.0.0(带有“网站”字段/没有“传真”字段的表单),则不导入1.0.1.0(带有“传真”字段/没有“网站”字段的表单),或删除托管解决方案1.0.1.0,这将表单布局还原为1.0.0.0解决方案。
删除托管解决方案将回滚到任何组件(表单)的先前版本。这样您就可以保留旧设计。
案例2:我有2种不同的托管解决方案。 MyAccount 1.0.0.0和ManageBankAccount 1.0.0.0。在第一个托管解决方案中,我在CRM帐户表单中有字段。在第二个托管解决方案中,我添加了一个字段地址传真并删除了一个字段网站。那么,如果A-用户添加第一个托管解决方案然后再添加第二个托管解决方案,结果会是什么? B-用户添加第二个托管解决方案,然后是第一个托管解决方案?
案例2-A: 首先安装MyAccount(带有“Website”字段/没有“Fax”字段的表单),然后安装ManageBankAccount(带有“Fax”字段/没有“Website”字段的表单)。
最终结果将是基于ManageBankAccount的表单呈现(具有“传真”字段/没有“网站”字段的表单)
案例2-B: 首先安装ManageBankAccount(带有“传真”字段/没有“网站”字段的表单),然后安装MyAccount(带有“网站”字段/没有“传真”字段的表单)。
最终结果将是基于MyAccount的表单呈现(带有“Website”字段/没有“Fax”字段的表单)