Microsoft Dynamics CRM - 工作流程
CRM 中的工作流程允许您在 CRM 中自动执行简单和复杂的业务流程。您可以使用 CRM 开箱即用功能创建工作流程,也可以使用 .NET 代码编写自定义工作流程来实现复杂的工作流程。工作流程在后台或实时运行,并且可以选择要求用户输入。
工作流程可以根据特定条件触发,甚至可以由用户手动启动。在内部,CRM 工作流程是使用 Windows Workflow Foundation 实现的。在本章中,我们将学习如何配置工作流。
配置工作流有以下主要部分(按顺序)−
- 配置工作流将在其上运行的实体
- 配置工作流是同步运行还是异步运行
- 配置工作流将在其上运行的消息(事件)
- 配置工作流将在其中运行的范围
- 配置工作流的阶段和步骤(操作)
同步/异步工作流
创建工作流时,您将看到在后台运行此工作流(推荐)的选项,该选项决定工作流是实时运行(同步)还是在后台运行(异步)。
通常,建议的方法是在后台运行工作流,因为它们会在可用时使用系统资源。但是,您始终可以从实时工作流切换回后台工作流,反之亦然。
工作流消息
工作流可以注册到特定事件,如下所示 −
- 创建记录时
- 记录状态更改时
- 分配记录时
- 记录字段值更改时
- 删除记录时
工作流范围
工作流允许您设置工作流运行的范围。以下是支持的工作流范围 −
User | 工作流将仅在与工作流用户相同的用户所拥有的记录上运行。 |
业务部门 | 工作流将在与工作流用户相同的业务部门的用户所拥有的记录上运行。 |
父子业务部门 | 工作流将在与工作流用户相同的业务部门的用户以及任何子业务部门所拥有的记录上运行。 |
组织 | 工作流将在 CRM 中任何用户所拥有的记录上运行。 |
工作流步骤
CRM 中的工作流是一系列步骤的组合,工作流将遵循。您甚至可以将这些步骤划分为逻辑阶段。CRM 工作流支持以下步骤 −
条件步骤 |
|
||||||||||||||
等待步骤 |
|
||||||||||||||
操作步骤 |
|
工作流示例
在此示例中,我们将创建一个在后台运行的简单工作流,将任何新创建的联系人记录分配给特定用户,然后向客户发送欢迎电子邮件。
步骤 1 − 转到"设置"→流程。
步骤 2 − 单击新建。
步骤 3 − 在 CreateProcess 窗口中,输入以下详细信息 −
流程名称 − 新客户工作流(可以是您想要的任何名称)
类别 − 工作流
实体 − 联系人(这将是您在其上创建工作流的实体。在我们的例子中是联系人)
在后台运行此工作流(推荐) − 选中此选项,因为我们正在创建后台异步工作流。最后,单击"确定"。
步骤 4 − 在"新建流程"窗口中输入以下详细信息 −
激活为 − 流程
范围 − 用户
开始时间 − 记录创建时间
单击添加步骤 → 分配记录。
步骤 5 − 您将看到工作流中添加了一个新步骤。在此步骤中,我们将指定应将所有创建的联系人分配给的用户。输入步骤名称为 将记录分配给团队。分配选项将默认为我们在其上创建工作流的实体(在我们的例子中为联系人)。单击查找图标。
步骤 6 − 在查找窗口中,选择您想要的任何用户。您甚至可以选择要将记录分配给的特定团队。单击"添加"。
步骤 7 − 通过单击"添加步骤 → 发送电子邮件"添加另一个步骤。在此步骤中,我们将配置向客户发送电子邮件。
步骤 8 − 将添加一个新步骤。输入其名称为"向客户发送电子邮件"。单击"设置属性"。
步骤 9 −在下一个配置电子邮件的窗口中,执行以下操作−
发件人 − 单击发件人字段。在右侧面板上,选择 OwningUser 和用户。单击添加 → 确定。
收件人 − 单击收件人字段。在右侧面板上,选择联系人和联系人。单击添加 → 确定。
主题 − 输入相关的主题。
正文 − 输入相关的正文内容。
步骤 10 −单击"保存",然后单击"激活"。
步骤 11 − 在随后的"流程激活确认"弹出窗口中,单击"激活"。
步骤 12 − 转到"联系人"选项卡并创建新联系人。通过保存记录创建新联系人后,您将看到"所有者"字段设置为您在工作流中配置的用户。此外,如果您单击"活动"选项卡,您将看到正在为此联系人创建电子邮件活动。这确认工作流已成功运行。
工作流与插件
工作流和插件都可用于扩展和自动化 CRM 功能。在许多情况下,这两种方法可以互换使用。例如,如果您有一个简单的要求,即向客户发送电子邮件,您可以通过插件或工作流来完成。
那么,您如何在创建工作流和插件之间做出选择?以下列表试图解释相同的内容 −
尽管插件和工作流都可用于运行同步和异步逻辑,但插件通常更适合同步逻辑,而工作流则更适合异步逻辑。
通常,要实现复杂的业务逻辑,插件比工作流更受欢迎。当您想要实现相对简单的功能(例如发送电子邮件、分配用户等)时,工作流是首选。
插件需要使用编码进行开发,而工作流可以由业务用户直接配置,而无需任何工作流知识。
工作流可以按需运行。因此,如果用户需要手动运行某些逻辑,工作流将是更好的选择。
从性能影响来看,在请求频率较高的场景中,同步插件比实时工作流提供更好的性能(和吞吐量)。
结论
本章向我们介绍了 CRM 的一个非常重要的功能 - 工作流。我们首先了解了同步/异步工作流、消息、范围、步骤,最后查看了创建和运行工作流的实例。最后,我们看到了工作流和插件之间的区别。