1,主要流程: 1),在crm里面,当我们对表单进行提交时,事件交由执行管道(Pipeline)去执行,事件执行管道在执行的过程中,又可以引发其他管道的执行,被引发执行的这个管道我们称我"子管道". 2),每一个管道的执行过程大体上可以分为三部分:PreStage,ExecutingStage,PostStage;PreStage是我们点保存按钮后系统保存事件执行之前,ExecutingStage是系统的执行事件(将数据保存到数据库),PostStage是系统事件执行完毕后. 2,开发步骤: Plugin开发所要做的事情就是在管道的PreStage或者PostStage做我们想要的功能,例如你如果希望在创建一个Account(客户)的时候自动产生一个值作为客户编号accountnumber,那么你可以写一个plugin,然后在Execute 方法里面给实体的accountnumber属性赋值,再将这个plug-in用crm自带的注册工具注册到管道的PreStage;如果你想在创建完一个Account(客户)后顺便创建一个task(任务)去跟进这个客户,那么你可以写一个plug-in,然后将这个plug-in注册到管道的PostStage;详细步骤如下: 1), 创建一个Class library的项目,并将C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly这个文件夹里面microsoft.crm.sdk.dll和microsoft.crm.sdktypeproxy.dll这两个文件添加到引用. 【MSCRM二次开发】是指基于Microsoft Dynamics CRM进行的定制化开发,主要涉及到CRM系统的插件(Plugin)开发。在CRM中,当用户对表单进行提交操作时,系统会通过执行管道(Pipeline)来处理这些事件。这个执行管道在处理过程中可以触发其他管道的执行,这些被触发的管道被称为“子管道”。 每个管道的执行流程可分为三个阶段: 1. PreStage:这是在用户点击保存按钮后,系统正式保存事件执行之前的一段逻辑,适合在此阶段添加预处理或验证操作。 2. ExecutingStage:这是系统的执行事件阶段,主要负责将数据保存到数据库,完成实际的数据操作。 3. PostStage:系统事件执行完毕后,可以在此阶段执行后续处理,如发送通知、创建关联记录等。 进行插件开发的步骤如下: 1. 创建一个Class Library项目,并将`microsoft.crm.sdk.dll`和`microsoft.crm.sdktypeproxy.dll`这两个CRM SDK库添加到项目的引用中。 2. 实现`IPlugin`接口,这是CRM插件的基础,需要实现`Execute(IPluginExecutionContext context)`方法。系统在执行管道时会调用这个方法。插件的执行可以是同步或异步的,这取决于在注册工具中的设置。 3. 对程序进行强签名,通常是为了确保插件的安全性和可信任性。 4. 使用CRM自带的注册工具注册插件和步骤,需要定义以下几个关键参数: - Message:指明触发插件执行的消息类型,如“create”,表示在创建新记录时触发。 - Primary Entity:要操作的实体类型,如“Account”表示客户实体。 - Asynchronous/Synchronous:选择异步或同步执行方式,根据业务需求选择。 - Triggering:注册在父管道或子管道,根据插件需要监控的事件所在的位置决定。 - Step Department:部署方式,通常选择“Server”以在服务器上运行插件。 5. 调试插件:出现问题时,可以通过以下方式进行调试: - 将插件复制到CRM服务器的`bin\assembly`目录下。 - 在注册工具中选择“Disk”模式,以便调试。 - 设置断点并附加到`w3wp.exe`进程进行调试。 以下是一个简单的插件示例代码: ```csharp using System; using System.Collections.Generic; using System.Text; using Microsoft.Crm.Sdk; using Microsoft.Crm.SdkTypeProxy; namespace PluginTest { public class PluginDemo : IPlugin { public void Execute(IServiceProvider serviceProvider) { // 插件的执行逻辑 } } } ``` 这个简化的代码片段展示了如何创建一个基本的插件类。在`Execute`方法中,开发者可以编写自定义的业务逻辑,以满足特定的需求,如自动填充字段值、创建关联记录等。通过这种方式,MSCRM二次开发使得企业能够根据自身的业务流程定制CRM系统,提升工作效率。
- 粉丝: 0
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C#仿通达OA系统源码 网络智能办公协同系统源码数据库 SQL2008源码类型 WebForm
- Screenshot_20241118_214455.jpg
- Pi~1.39.0(94).apk
- flinksql专用资源,各种jar包
- CLShanYanSDKDataList.sqlite
- C#ASP.NET销售管理系统源码数据库 SQL2008源码类型 WebForm
- 1111232132132132
- 基于MAPPO算法与DL优化预编码的多用户MISO通信系统双时间尺度传输方案设计源码
- 基于微信拍照功能的ohos开源CameraView控件设计源码
- 基于JavaCV的RTSP转HTTP-FLV流媒体服务设计源码