接着上一篇的说,现在有一个已知前提:Solution的增量特性。然后我们再思考这么一个场景,项目开发过程中,存在多次迭代的情况,每次迭代可能涉及到的solution是同一个,唯一区别的,就是solution里的component有一些修改或增加。随着迭代的进行,solution里的components会越来越多,而每次solution导入的components全是这次迭代的内容么?如果之前的components又覆盖了一遍,如何确保不影响生产环境已有的业务呢?我们很自然地就会想,可不可以修改solution,让它保持只含有迭代涉及的定制信息,以及Solution的描述信息,剩下的都不要。而这篇的内容就是为了解决这个问题的。

  components的修改涉及到两种:一种是整个component的增加和删除,而另一种则是对component进行内容上的增加和删除。

  1. 整个component的增加和删除

  这个简单点的操作,就是在CRM上直接进行增删。

  

  点击Remove或者Add Existing,来对solution里的component进行操作,注意删除是说把component从当前的solution移除出去,而不是在环境里把它删除掉,所以一定不要误点了Delete。

  这里为了接下来的内容,我们不采用这种方式,而是直接对solution的zip进行处理。在CRM中Export Solution,然后解压,会看到有这些文件。

  

  首先我们打开customizations.xml,找到关于Opportunity的Entity节点信息,把这个节点删掉。

  

  接着再找到相关的EntityMap节点信息,把它也删除掉

  

  这样这个xml关于Opportunity的描述信息我们就清理干净了。

  接下来再打开solution.xml,这里也会有关于Opportunity的描述信息,把RootComponent删掉。

  

  然后还把MissingDependency节点都删掉。

  

  这就等价于在CRM上把Opportunity Component从solution中remove掉,之后把文件再压缩到zip包里,更新后的solution就大功告成了。

  2. Component内容上的修改

  再来想象个场景,你的solution里有100个Entity,关于这100个Entity这次迭代的内容,是每个Entity上都新添加了一个名叫new_LastStage的字段,然后你需要将这部分内容更新到生产环境里,怎么实现呢?这个时候,solution的增量特性就很有用了,我们是不是可以这么想,每个Entity都只包含new_LastStage字段,其他的内容都去掉,然后再import到环境里,因为是增量的,所以能达到效果,实现了字段的添加。

  接下来就说说如何修改。

  打开customizations.xml,找到Entities节点,以一个Entity为例。

  

  attributes节点里放了这个Entity的所有字段,除了new_LastStage,我们把其它的attributes删除,这样我们就只保留了要添加的字段,是不是很简单呢!进一步而言,我们完全可以控制Solution里只有我们想要的信息。上面的例子里,如果只是新加字段,不涉及form,view的改变,那我们还可以把form和view的节点内容清空;如果不涉及relationship添加,我们还可以把EntityMaps,EntityRelationships清空,这样就大大减小了solution的复杂度,最后你会发现,环境不给力?Solution太大?这都不是事......

  

转载于:https://www.cnblogs.com/yobyron/p/9682117.html

Dynamics 365-关于Solution的那些事(二)相关推荐

  1. Dynamics 365-关于Solution的那些事(一)

    关于CRM Solution,我准备写两到三篇的博客来做下介绍:包括一些基本信息,超大solution,还有增量更新solution操作等. CRM中的component,都是放在一个名叫Soluti ...

  2. Dynamics 365新功能:可编辑的网格(行内编辑)

    关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复238或者20161127可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong. ...

  3. Dynamics 365 on-premises 安装

    安装Dynamics 365环境配置要求: 系统版本:Windows Server 2016 SQL 版本: Microsoft SQL Server 2016 SP2 Dynamics 365 版本 ...

  4. Dynamics 365的环境搭建完整流程(一)

    Dynamics 365的环境搭建完整流程 一.相关安装包下载 1.Windows Server 64安装包 2.Sql Server2016 安装包 3.Dynamics 365 安装包 4.Dyn ...

  5. Dynamics 365 Finance and Operations 虚拟机安装及使用

    文章目录 前言 一.下载虚拟机文件 二.使用步骤 1.使用Hyper-v安装完成D365 F&O 2.进入虚拟机 3.初始化环境管理员账户 4.开始访问环境 总结 前言 非常幸运,阴差阳错之间 ...

  6. 解读 --- 基于微软企业商务应用平台 (Microsoft Dynamics 365) 之上的人工智能 (AI) 解决方案...

    9月25日微软今年一年一度的Ignite 2017在佛罗里达州奥兰多市还是如期开幕了.为啥这么说?因为9月初五级飓风厄玛(Hurricane Irma) 在佛罗里达州登陆,在当地造成了挺大的麻烦.在这 ...

  7. Dynamics 365 for CRM: Sitemap站点图的可视化编辑功能

    Dynamics 365 for CRM 提供了Sitemap站点图的可视化编辑功能 在之前的所有版本中,我们只能通过从系统中导出站点图的XML进行编辑后再导入(容易出错),或使用第三方的Sitema ...

  8. Monthly update for Dynamics 365 for Operation

    日期 标题, 类别 版本 描述 2017/8/22 Dyn 365 Fin and Ops, Ent ed July 2017 Plat Update 10 Category: Download   ...

  9. 利用Fiddler模拟通过Dynamics 365的OAuth 2 Client Credentials认证后调用Web API

    微软动态CRM专家罗勇 ,回复337或者20190521可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me. 配置Dynamics 365 & PowerApps 支 ...

最新文章

  1. Martin Davis最新访谈:机器学习是一个收敛的过程,背后理论并不高深
  2. 《用Python进行自然语言处理》第7章 从文本提取信息
  3. ‘Series‘ object has no attribute ‘sort‘
  4. 两点之间 这题有毒啊,不会做
  5. 浅谈iptables防SYN Flood攻击和CC攻击
  6. 《Cracking the Coding Interview》——第11章:排序和搜索——题目7
  7. win7卸载java_Win7彻底卸载Oracle 11g图文步骤(靠谱)
  8. yum安装报错Protected multilib versions:
  9. BMVC 2020 各奖项公布!最佳论文可能就是你要的涨点神器
  10. javascript之正则表达式
  11. 韩国瑜:打造高雄全台首富 3月内完成施政总体检
  12. php零售,ThinkPHP开源新零售小程序_萤火商城系统
  13. (转载)奇谈怪论:从容器想到去IOE、去库存和独角兽
  14. 35道常见的前端vue面试题
  15. 乔布斯斯坦福毕业演讲,这是我听过最精彩的毕业演讲!
  16. 无需关注微信公众号破解openwrite验证
  17. cf-1327F. AND Segments
  18. sm-crypto配合hutool加解密报pad block corrupted错误
  19. Android EventBus-----(EventBus简单使用)
  20. 安防百科-单了解ONVIF 协议

热门文章

  1. 给linux添加新硬盘
  2. Java Applet编程总结
  3. jQuery EasyUI使用教程之创建展开行详细编辑表单的CRUD应用
  4. UIButton 详解
  5. 开发者必看:iOS应用审核的通关秘籍
  6. 永济计算机培训,永济云计算培训,永济计算机培训学费,永济计算机学完工作好找吗 - IT教育频道...
  7. python带我起飞_Python带我起飞:入门、进阶、商业实战
  8. C语言考试题及答案(8),2015年计算机二级C语言测试题及答案(8)
  9. mysql 数据库连接不够_(二):MySQL数据库连接不够用(TooManyConnections)问题的一次分析和解决案例...
  10. 互联网大厂、架构设计、稳定性、高可用、必备知识点技能,进大厂必备!!快来瞧瞧吧