• 浅谈MSCRM定制的基本方法


    MSCRM可以进行几乎无限制的功能扩展,这是它的重要卖点之一。我总结了一下定制MSCRM基本有以下一些方法:

    SiteMap.xml
    这个是在定制主窗体的左侧导航栏用到的,它的功能看似简单,其实在我们做复杂定制的时候非常有用,有一些高级技巧以后会作介绍。SiteMap和其他Entity一样可以导出/导入。

    ISV.Config.Xml
    这个文件是用作定制主窗体菜单栏,工具栏和Entity导航栏,工具栏等等。文件位置存放在CRMWeb\_Resources\isv.config.xml, 修改之前记得备份;修改之后不用iisreset,直接生效。我们如果想添加一个按钮在工具栏上实现一些自定义的操作,就可以修改这个文件。

    Jscript / JavaScript
    MSCRM窗体支持三种事件: Entity的 OnLoad(), OnSave() 和 Field的OnChange(),可以在里面写JScript或者JavaScript的脚本(微软官方的说法是支持JScript,但是MSCRM是基于Internet Explorer的,所以实际上也支持这种更广泛的脚本JavaScript;至于VBScript当然IE是支持的,不过微软对于它和MSCRM的关系令人迷惑:我没有见到过官方文档提及!)这里还包括一些高级用法,比如AJAX,添加浏览器事件,直接用JS读写数据库(Unsupported by Microsoft)。这是最常见的定制方法,很多高级的应用也在这个部分。

    Workflow
    工作流,由于v4比v3的Workflow改进了不少,我就先不谈v3的特性了。以后会有专题谈v4的Workflow

    Callouts / Workflow Assemble
    这2个都是基于VS.Net的编程,用于扩展MSCRM来实现特定的商业逻辑。支持C#和VB.Net,不过v3只支持在VS.Net 2003里(.Net Framework 1.1)编写的dll,VS2005不支持(当然也可以提取.Net Framework 1.1到 VS2005然后进行配置,不推荐)。值得一提的是v4不再叫Callouts了,而叫 Plug-Ins ,这种说法更明确一些,而且v4也支持用VS2005编写dll(.Net Framework 2.0)。

    Asp.net , Web Services
    由于MSCRM是基于Web的CRM软件,所以Asp.net也经常用到,有时也会编写自己的Web Service,甚至是Windows Service来实现特定的商业流程。

    SQL Trigger / Store Procedures
    这些也是微软不支持的方法,有的时候特别有用。

    MSCRM Reports 数据报表
    这个需要用到Visual Studio Business Intelligent  Development Tools,安装SQL Server 2005的时候会有这个选项,叫做客户端工具。

    微软把定制分成两类,一类是Supported customisation,另一类就是Unsupported customisation。简单的说就是只要MSCRM SDK上没有提到的,都是Unsupported ,比如修改任何的ASPX, JS , HTC, CSS文件,或者对数据库直接进行操作(FilteredView可以)。

    我的一些基本建议是:

    1, 尽量用 Suppported Customisation,一定要有开发文档;
    2, 如果不得已要用到Unsupported 的方法,文档一定要写得很详细,方便以后升级;
    3, 所有开发文件,源文件都要放到SourceSafe,或者至少要有不同时期的备份;
    4, Web 数据, Database 都要有备份,Server当然也要备份;
    5, 不要在production environment 上直接开发,要有development 环境,全面测试。 

    Jim Wang
    09 Nov 2007, England

  • 相关阅读:
    Get machine IP and location via open api private static string GetOwnPublicIP() {
    大数据挑战与NoSQL数据库技术
    Objectc 学习之路一(Hello world)
    SharePoint designer 2013 中新的workflow action(操作)
    进程、线程、协程
    网站响应时间过长的原因及解决方法
    Web前端性能优化——如何提高页面加载速度
    使用phpMyAdmin批量修改Mysql数据表前缀的方法
    网站加载速度优化的14个技巧
    从if else 到设计模式的转变 规格严格
  • 原文地址:https://www.cnblogs.com/MSCRM/p/954558.html
Copyright © 2020-2023  润新知