通过解决方案导入进行CRM更新不会更新快速查找视图

时间:2017-06-20 08:30:15

标签: dynamics-crm crm

我们是一个房屋协会。我们使用CRM 2016 SP1。我们的开发和QA环境是单服务器配置,分段和生产是带有负载平衡器的多服务器配置。我们在质量保证,分期和生产方面的定制解决方案得到了管理。

我们需要为我们的两个实体Person和Property更新“快速查找活动”视图,并在我们的登台和生产环境中添加一些额外的搜索列。

我通过转到设置 - >解决方案 - > [自定义解决方案] - >实体 - > [自定义实体] - >视图 - >快速,在Dev环境中将新列添加到这些实体的视图中查找活动[实体] - >添加查找列。我对两个实体做了同样的事情。

要将更新作为补丁部署到其他环境,我导出了一个独立的解决方案文件,该文件仅包含具有更新视图的Person和Property实体。然后我将解决方案文件导入QA环境进行测试。

导入后在QA中发布了更改后,我在默认解决方案中检查了实体的快速查找活动视图(设置 - >自定义 - >自定义系统 - > [自定义解决方案] - >实体 - &gt ; [自定义实体] - >视图)。我注意到Property实体已更新了更改,但Person实体未更新。没有意义。

花了一些时间在互联网上搜索无济于事的答案,我们决定在分期中试用补丁解决方案。因此我们导出了解决方案文件,但在发布更改之前,我们决定检查更新。令我们惊讶的是,两个实体都已更新。所以我们没有公布这些变化。

对结果感到满意并将问题归咎于我们的QA环境,我们决定继续部署到生产环境。我们导入了文件并检查了更改,并注意到这次发生在我们的实体周围,即Person实体已更新,但Property实体没有!

我们尝试发布更改,但没有任何区别。所以最后我们放弃了,不得不通过手动更新生产中的视图来完成部署。

我想知道是否有其他人经历过这种奇怪。非常感谢任何帮助/建议。

2 个答案:

答案 0 :(得分:2)

您提到您正在部署托管解决方案,并且您的更改未生效。解决方案中包含的实体先前已部署到目标环境中。

如果您之前已经直接对目标环境进行了任何修改(这次尝试似乎不太可能),这些更改将在非托管层中,默认情况下会覆盖托管解决方案中的更改:

Unmanaged and managed solutions from https://msdn.microsoft.com/en-us/library/gg334576.aspx#Anchor_4

MSDN说:

  

因为非托管自定义被视为“高于”任何托管   解决冲突的解决方案,组织安装   更新到托管解决方案可能看不到他们的更改,因为   非托管修改。存在一个选项以确保更改   通过更新应用于托管解决方案是可用的。

     

当你   发布组织安装的托管解决方案的更新   更新可以选择:

     
      
  • 保留已在托管解决方案上应用的所有自定义设置。

  •   
  • 覆盖任何自定义项   已在您的托管解决方案上应用。

  •   

总之:如果您使用托管解决方案,从不直接对目标环境进行任何修改。它会在以后引起你的问题。

答案 1 :(得分:0)

感谢Henrik回答了我的问题并让我朝着正确的方向前进。我们设法解决了这个问题。请参阅this page以阅读解决方案。