简介CRM 2011 Solution

在刚发布的Microsoft Dynamics CRM 2011 beta中,在自定义扩展方面有许多有特点的功能,其中一个比较重要的就是“Solutions Management”(Solution可译为解决方案,下文中将使用原文表述)。

 

还记得在以前的CRM 版本中是怎么进行功能扩展的吗?让我们将之提到一个新的高度。使用CRM 2011,我们能够在几天内(一些核心组件甚至可以在几小时内完成)定义,转移,部署,维护并使用架构在CRM框架上的整个商业应用,而不像以前需要几个月的时间。仅仅点击几下鼠标,你就能够定义你的数据模型,工作流程,用户界面和分析工具。一些高级扩展,例如.Net plug-ins 和 SRS 报表,都能够包含在CRM Solution中。所有内容都能够以一个统一的模型进行转移和部署。

这绝对是一个了不起的功能。CRM 2011 允许我们将组件打包并将其视为一个“Solution”。为何说这个功能了不起呢?下面才是关键点。不仅仅因为它允许将组件打包,而是因为系统平台现在能够知道solution的边界,并执行相应的智能操作。请继续往下阅读。

开发和发布Solutions来控制客户化(unmanaged和managed

对于大多数以前为CRM4开发人员的“新人”来说,第一件事情就是我们引入了unmanaged和managed solutions的概念。可以把unmanaged solution理解为你的系统的源代码,而把managed solutions理解为编译后的版本。当然,你不必在这点上咬文嚼字,因为CRM中的一些组件只是“定义”,不需要被编译;但尽管如此,这种类比还是十分有用的。所以,当你最初创建一个solution的时候,它总是被创建为unmanaged,你能够创建新的组件并修改其他组件。你甚至能够定义一些限制来使solution的管理更方便,例如将一些组件设置成不可自定义化。

 

当solution已经完成并准备最终发布使用,你可以将其导出为managed。当客户安装了一个managed solution,我们强制执行你所设定的任何限制(例如:设定某些组件为“不可客户化”来阻止对其进行客户化)。尽管solution自身不能被修改,可客户化的组件仍然可被客户化,但系统会将这些客户化视为在managed solution的“上层”所作的修改。因此,你拥有更灵活的选择,你能够限制一些组件不可被客户化,而对其他组件仍然具有内嵌的扩展功能,并且不需要写一句代码。

 

智能更新

如果你允许客户修改你的solution(创建在上层),将会给你将来的维护工作带来噩梦般的困难。其实并非如此,我们会帮你解决。每当你对一个managed solution进行更新时,系统架构会自动保存创建在上层的客户化。我们有2种基本的冲突解决方案(merge and preserve),这点我将在随后的帖子讲解。总之,这两种冲突解决方案的结果是让客户能够维护他们的客户化,并且你仍然能够进行更新。

 

自动记录依赖关系

你怎么能够记录什么组件在哪里被用到,并且没有被意外删除而影响其他组件呢?如果你允许客户进一步客户化你的solution,那么这个问题会更加严重。不需要担心,因为solutions的架构会自动地记录系统中所有的依赖关系,相当了不起的功能!

 

一处创建,多处部署

在CRM框架上创建的solution能够在所有的CRM部署类型(Online, Partner Hosted, On-Premises)和所有的CRM客户端(Web, Outlook, Mobile)传送。它真的越来越接近开发者所崇尚的神圣目标“code once, deploy/use everywhere”。哦,对了,我有提起过我们还可以在Outlook client上将你的solution变成“离线状态”吗?有多少构架能够提供这种功能?

 

Solution共存

目前为止,一切都不错,但如果一个用户安装了多个由不同的合作伙伴创建的solution,那么它们会相互影响吗?事实上并不会,solution框架自动处理让2个或多个managed solution能够共存。但是,不同的solution必须要有一定关联才能共存(在功能上,要有意义)。尽管从技术上说,在同一个组织(organization/tenant)中安装两个完全不相关的solution(例如医院管理和教育管理)是可行的,但最终结果或许对终端用户来说没有任何意义,特别是如果两个solution需要修改共同的组件(例如一个希望把客户(Account)当做医院,而另一个希望把客户(Account)当做学校)。

 

Microsoft Dynamics市场

系统中还有一个市场板块,你能够在上面放置一些和产品相集成的应用。现在在这里不做太多讲述,在以后会有更多信息,敬请期待 :)

创建CRM Solution吧!

准备好开始了吗?看一看SDK文档吧!(建议整篇阅读)

https://offers.crmchoice.com/CRM2011Beta-Developer-Videos/

谢谢!

原文地址:

https://blogs.msdn.com/b/crm/archive/2010/09/15/crm-2011-solutions-business-applications-on-steroids.aspx

Jackie Chen (陈攀)