进入Dynamics CRM领域有些年了,想些写东西总结些这段时间涉及的编程技术。这个领域给我的第一感觉就是非常的磨人,往往会因为完成一个看上去十分小的功能折腾半天。当然它也是非常的强大,就对这款产品来说我对它还是充满信心的。也希望它能在今年取得不俗的成绩,当然这还得靠咱们这些开发人员啦!
Dynamics CRM日常的开发任务主要都是针对以下几个方面:JS脚本的开发、数据库脚本的开发、 服务器端的自定义开发。
JS脚本的开发:控制程序的表单,主要用来控制业务的流程。通常的开发点为:隐藏某个文本框,禁用某个按钮以及在表单的加载和保存的过程中执行某些业务控制。
数据库脚本的开发:这部分的开发主要是针对实体来进行的,比如在新建某个实体对象的时候生成一个特定规制的“编号”(BH-201202060001)。或在实体中保存的值发生改变是进行某些业务计算。比如实体有3个属性:天数,每天赚取的金额,利润。它们有这样的关系:天数*每天赚取的金额=利润。如果我们改变了天数,那么利润也必须改变才能保证这些记录的正确性,解决这类问题我们都会采用编写触发器来解决。
服务器端的自定义开发:这里主要的开发对象有2个,它们分别为:插件,自定义页面。插件和上面我们说的触发器的功能类似,当用户的操作符合插件的触发点那么插件就触发。自定义页面就是我们自己用Asp.net编写的页面,这些页面会嵌入在CRM系统中。编写自定义页面的主要难点在与如何与CRM系统进行同步,还好微软为我们提供了非常多的API供我们使用。(WhoAmIRequest就是其中的一个主要的API,用来获取当前登录用户的详细信息)
在接下来的日子里我打算将我这年的开发心得写下来与大家分享,期间如有不足的还往大家不吝赐教。
分四部分来总结吧,第一部分写JS;第二部分些数据库脚本的开发;第三部分写服务器端的开发;第四部分写Dynamics CRM 2011中的新功能,如Ribbon的开发。