Dynamics 365-关于Solution的那些事(三)
这一篇的内容,是关于Solution的使用建议的,如果大家有什么实用的建议,欢迎留言讨论。
一. 版本控制
Solution是有版本号的,率性的人可能在新建一个solution的时候,直接赋值1.0,就不再管了。但是这里还是简单说下MS风格的版本号,一般是用.分隔的四个数字:主版本号.子版本号.编译版本号.修正版本号。后面两个版本号可选或者互换位置,前面两个必须。建议迭代周期,要做好Solution版本号的设计和管理。这方面的好处不多赘述了,毕竟不管是不是开发,都能想得明白。
二. 分门别类
分类其实是为了更好对Solution进行管理。我们知道CRM有不少类型的Components,而在Solution里,如果你把所有的Components都放到一个Solution里,你会发现越到后期,你的Solution就越难维护。那么是不是我把components从数量上简单地拆分开就可以了呢?比如我把很多的workflow,plugin,Entity拆分到多个Solution里。并非如此,这里说的分门别类,一般可以从这几个方面考虑:
1. component本身的类型
2. component涉及的业务:包括业务逻辑,业务部门
3. component的依赖关系
4. component的数量
5. component与项目迭代的关联
现在MS的产品,走的是模块化的设计理念,那么这个模块化,我们应用到Solution里,也是一样适用的。比如你要考虑,哪些Solution可以规划成一个“模块”,如果部署之后,将来客户不要了,可以在不影响当前业务的前提下直接删除(看现在的AppSource里的Solution产品,都是可以在不影响环境结构的前提下,实现Solution的导入和删除的);哪些Solution是属于xx部门的,即使以后Solution有更新,也可以在不会影响其他部门业务的前提下实现更新;哪些Solution对其它的Solution有依赖,而被依赖的Solution是不是设计的比较Common等等。
三. 下载日志
一般情况下,Solution导入成功或者失败,最后都会有download log选项。借用这个日志,我们可以准确高效地定位出错的Component以及可能的原因。
1. 导入失败
不要用记事本打开下载的log文件,那样你会看到密密麻麻的信息,很不直观。使用Excel打开log,你会发现所有的component信息,状态信息,comments信息都已经有条理的列好了,很方便地就可以找到失败的component,以及失败的描述信息,来帮助我们解决问题。有一点需要注意的是,因为CRM的导入操作就是往数据库里修改数据,那么就会碰到一个让人很无奈的情况:即使你的Solution问题再多,CRM也只会导入一次才暴露一个问题,而不是像有统计列表那样,一次把所有的问题都暴露出来。
2. 导入成功
可能许多人看到CRM显示Solution导入成功,就直接关闭窗口,觉得log可有可无了。在这里,还是建议大家,即使导入成功了,也把log保存下来。有两方面的原因:一方面是即使导入成功了,还可能会有很多的warning信息,有些warning信息甚至会影响后续的操作。比如,你更新一个workflow的Solution,导入虽然成功了,但是你发现为什么workflow activate失败了呢?如果你查看导入log的warning信息,就可能找到一条提示信息“workflow涉及到user在当前环境没有......”。另一方面的原因,是如果以后有一个环境问题是因为当初的这个Solution,还可以当做一个处理问题的依据。
3. 导入ing
之所有说导入Solution一般都会下载log的选项,是因为还存在非一般的情况。如果硬件资源不足,或者Solution本身太复杂,可能会出现的情况,是进度条卡在最后的85%左右,然后就再没有反应了。这种情况,可以通过检查Solution的版本号,来确认Solution是否导入成功,当然,这个时候,就不会有下载log的操作了。
Dynamics 365-关于Solution的那些事(三)的更多相关文章
- Dynamics 365-关于Solution的那些事(一)
关于CRM Solution,我准备写两到三篇的博客来做下介绍:包括一些基本信息,超大solution,还有增量更新solution操作等. CRM中的component,都是放在一个名叫Soluti ...
- Dynamics 365-关于Solution的那些事(二)
接着上一篇的说,现在有一个已知前提:Solution的增量特性.然后我们再思考这么一个场景,项目开发过程中,存在多次迭代的情况,每次迭代可能涉及到的solution是同一个,唯一区别的,就是solut ...
- 升级本地部署的CRM到Dynamics 365及部分新特性介绍。
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复241或者20161226可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong. ...
- Dynamics 365 Online用户密码三问及其解答
本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复264或者20170903可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong.me ...
- 自定义适用于手机和平板电脑的 Dynamics 365(三):显示的实体
您可以启用 适用于手机的 Dynamics 365 和 适用于平板电脑的 Dynamics 365 的有限实体集. 若要查看是否启用了实体,或者要启用实体,请单击“设置”>“自定义”>“自 ...
- Introduction to Microsoft Dynamics 365 licensing
Microsoft Dynamics 365 will be released on November 1. In preparation for that, Scott Guthrie hosted ...
- 为Dynamics 365写一个简单程序实现解决方案一键迁移
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复258或者20170627可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong. ...
- dynamics 365 AI 解决方案 —— 微软布局
核心提示:微软在 Office365.Azure 云.Dynamics365 上进行人工智能技术的部署,野心不小. 微软在2016年9月宣布组建自己的 AI 研究小组.该小组汇集了超过 5000 名计 ...
- Dynamics 365中极特殊语言的文字搜索结果异常
微软动态CRM专家罗勇 ,回复316或者20190314可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me . 有些比较少见的问题, ...
随机推荐
- VSCode Python开发环境配置
目录 准备工作 VSCode初步 用户界面 快捷键 安装扩展 配置文件与内置终端设置 高级调试配置 小结 参考 博客:blog.shinelee.me | 博客园 | CSDN 准备工作 安装anac ...
- Java设置PDF有序、无序列表
文档中的设置有序或无序列表是一种反应内容上下级关系或者内容相同属性的方式,与单纯的文字叙述相比,它能有效增强文档内容的条理性,突出重点.因此,本文将分享通过Java编程在PDF文档中设置有序或无序列表 ...
- 2025战略,中秋送福利!免费开源ERP Odoo Windows 一键傻瓜式安装版发布
概述 为了帮助更多的小白,能够快速的体验Odoo的强大功能,针对国内大多数小白用户无法快速直接体验Odoo的尴尬,开源智造呕心沥血,历经数百次的测试和整合终于赶在中秋节这天将Odoo所需要的复杂运行环 ...
- windows之如何把文件夹转换成iso文件
(1)oscdimg下载路径: 链接:https://pan.baidu.com/s/1U_SfamsOvI2nav9odAzujQ提取码:21fr (2)以管理员身份运行cmd命令: Oscdimg ...
- LeetCode算法题-Letter Case Permutation(Java实现)
这是悦乐书的第315次更新,第336篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第184题(顺位题号是784).给定一个字符串S,将每个字母单独转换为小写或大写以创建另 ...
- 人生路上对我影响最大的三位老师&&浅谈师生关系
三位老师分别是父母,初升高的罗老师,高考前的谭老师 很小的时候,就是父母引导我学习的,并且在我失去学习信心的时候给我鼓励以及骄傲事的压力,使得我小学打下了不错的基础. 到了初中,成绩慢慢变差,初三勉强 ...
- CAP 2.5 版本中的新特性
前言 首先,恭喜 CAP 已经成为 eShopOnContainers 官方推荐的生产环境可用的 EventBus 之一. 自从上次 CAP 2.4 版本发布 以来,已经过去了几个月的时间,关注的朋友 ...
- 3. [leetcode] Longest Substring Without Repeating Characters
Given a string, find the length of the longest substring without repeating characters. Examples Give ...
- Eclipse中使用Maven搭建SSM框架
Eclipse中不使用Maven搭建SSM框架:https://www.cnblogs.com/xuyiqing/p/9569459.html IDEA中使用Maven搭建SSM框架:https:// ...
- Django rest framework源码分析(1)----认证
目录 Django rest framework(1)----认证 Django rest framework(2)----权限 Django rest framework(3)----节流 Djan ...