业务流程流概述

通过创建业务流程,您可以帮助确保用户输入的数据一致并且每次在应对客户时都遵循相同的步骤。 例如,如果希望所有人以相同的方式处理处理客户服务请求,或者要求员工在提交订单前获取发票许可,您可以创建一个业务流程。 业务流程使用与其他流程相同的底层技术,但其提供的功能却与使用流程的其他功能有很大的不同。 若要了解如何创建或编辑业务流程,请转到创建业务流程

观看有关业务流程的短片。

为什么使用业务流程

业务流程为人们完成工作提供指导。 它们提供简洁的用户体验,可以引领用户完成其组织为需要推进以获得某种结论的交互而定义的流程。 此用户体验可以定制,使具有不同安全角色的人可以拥有最适合其所做工作的体验。

使用业务流程可以定义一组供人们遵循以获得所需结果的步骤。 这些步骤提供了一种可视的指示信息,告诉用户其处在业务流程中的什么位置。 业务流程流可以减少培训需求,因为新用户不必将工作重点放在应该使用哪个表上。 他们可以让流程来指导他们。 您可以配置业务流程来支持常见的销售方法,可以帮助您的销售团队获得更好的结果。 对于服务组,业务流程可以帮助新员工更快地熟练起来,避免可能导致客户不满意的错误。

业务流程可以做什么

使用业务流程,可以定义一组阶段步骤,它们随后会在窗体顶部的控件中显示。

分阶段的业务流程。

每个阶段包含一组步骤。 每个步骤代表可以输入数据的一个列。 您可以使用下一阶段按钮前进到下一个阶段。 在统一接口中,您可以在阶段弹出项目中使用业务流程流阶段,也可以将其固定到侧窗格。 业务流程流不支持在移动设备上将阶段弹出项目扩展到侧窗格。

您可以将某个步骤设为必需,以便用户必须为相应列输入数据才能继续下一个阶段。 这通常称为“阶段门限”。 如果要将业务所需或系统所需的列添加到业务流程流阶段,我们建议您也将此列添加到窗体中。

与其他类型的流程相比,业务流程似乎相对简单一些,因为它们不提供任何条件业务逻辑或自动化,只提供简洁的数据录入体验以及控制阶段的进入。 但是,当业务流程与其他流程和自定义项组合时,可以在节省时间、降低培训成本以及提高用户接受度方面发挥重要作用。

备注

如果任何阶段(包括当前阶段)具有必需列(隐藏列除外),您必须在保存窗体或移至新阶段之前填充这些阶段的列。 如果禁用的列是空的并且是必需列,这些列仍会阻止阶段导航。

与其他自定义项集成的业务流程流

当您或您的用户使用业务流程流输入数据时,也会将数据更改应用于窗体列,因此可以立即应用业务规则或窗体脚本提供的任何自动化。 可以添加步骤,以便为窗体中未显示的列以及将添加到用于窗体脚本的 Xrm.Page 对象模型中的列设置值。 在保存窗体中的数据时,将应用由对包括在业务流程流中的列的更改启动的所有工作流。 如果实时工作流应用了自动化,在保存行后,当刷新窗体中的数据时,用户可以立即看到更改。

虽然窗体中的业务流程控件不以编程方式提供任何直接客户端,但由业务规则或窗体脚本应用的更改会自动应用于业务流程控件。 如果在窗体中隐藏列,则该列也会在业务流程流控件中隐藏。 如果使用业务规则或窗体脚本设置了值,则也会在业务流程中设置该值。

并发流程

并发业务流程流可使定制员配置多个业务流程,然后将其与相同的起始行关联。 用户可以在并行运行的多个业务流程之间切换,并恢复流程中所处阶段的工作。

系统业务流程

包括以下业务流程。 若要了解业务流程如何工作,请回顾以下系统业务流程:

  • 潜在顾客转化为商机销售流程

  • 商机销售流程

  • 电话转化为案例流程

业务流程流中的多个表

可以针对单个表或跨越多个表使用业务流程流。 例如,您可以有一个以商机开始的流程,然后继续到报价、订单和发票,最后返回以结束商机。

您可以设计业务流程流,以将最多五个不同表的行关联到单个流程中,以便使用应用的用户可以将工作重点放在其流程流上,而不是正在其中工作的表上。 他们可以更加轻松地在相关的表行之间导航。

每个表有多个可用的业务流程流

并非组织中的每个用户都能遵循相同的流程,不同的情况可能要求应用不同的流程。 每个表最多可以有 10 个活动的业务流程流,以便为不同的情形提供相应的流程。

控制将要应用哪个业务流程

可以将业务流程与安全角色关联起来,从而使得只有具备这些安全角色的人才能看到或使用它们。 您也可以设置业务流程的顺序,以便控制将会默认设置的业务流程。 实现的方式与为一个表定义多个窗体一样。

如果有人创建新的表行,将按该用户的安全角色筛选可用的活动业务流程定义列表。 根据流程订单列表可供用户的安全角色使用的第一个已激活业务流程定义是默认应用的定义。 如果有多个有效业务流程定义可用,用户可从“切换流程”对话框加载另一个。 只要切换了流程,当前显示的流程都将进入后台,并替换为所选流程,但是该流程将保留其状态,并且可以切换回来。 每个行可以有多个关联的流程实例(每个针对一个不同的业务流程流定义,总数最多为 10)。 在加载窗体时,仅显示一个业务流程。 任何用户应用其他流程时,默认只能为这个特定用户加载这个流程。

若要确保默认为所有用户加载某个业务流程(行为等于“固定”该流程)可以在加载窗体时添加自定义客户端 API 脚本(Web 资源),该脚本根据业务流程定义 ID 专门加载现有业务流程实例。

业务流程注意事项

只能为支持业务流程流的表定义业务流程流。 您还需要知道可以添加的流程、阶段和步骤的数量限制。

调用工作流的业务流程

可以从业务处理流程中按需调用工作流。 可通过将工作流组件拖到流程阶段或“全局工作流”部分,从新业务流程设计器配置此项。 有关在业务流程中使用工作流的详细信息,请参阅博客:Dynamics 365 中的业务流程自动化

如果在业务流程中包含希望在流程中最后一个阶段的阶段退出时触发的工作流,设计器给人的印象是完成该阶段时将触发此工作流。 但是,将不触发此工作流,因为未执行阶段转换。 您将不会收到有关阻止您在该阶段中包含此工作流的警告或错误。 用户与业务流程交互时,完成或放弃此流程不会导致阶段转换,因此不触发此工作流。 考虑以下示例:

  • 您创建包含两个阶段的业务流程(S1 连接到 S2,阶段 S2 中包含一个工作流),并且将触发器设置为阶段退出

  • 创建一个业务流程,该业务流程包含三个阶段,S1 连接到 S2,然后 S2 分支到 S3。 您在 S2 中包含一个工作流,并将触发器设置为阶段退出

在任何情况下均不触发此工作流。 若要解决此问题,可添加一个全局工作流并向其添加要触发的工作流,以便为业务流程而不是流程的某个阶段触发此工作流。 可将全局工作流的触发器设置为“放弃进程”或“完成流程”,以便在用户放弃或完成业务流程时触发此工作流。

可以使用业务流程流的表

所有自定义表都可以使用业务流程流。 以下标准表也可以使用业务流程流:

  • 帐户​​
  • 约会​​
  • 市场活动
  • 市场活动项目
  • 市场活动响应
  • 竞争对手
  • 联系人
  • 电子邮件
  • 权利
  • 传真
  • 案例
  • 发票
  • 潜在顾客
  • 信件
  • 市场营销列表
  • 商机​​
  • 电话联络
  • 产品
  • 价目表项
  • 报价单
  • 定期约会
  • 销售宣传资料
  • 社交活动
  • 顺序
  • 用户
  • 任务
  • 团队

若要为业务流程流启用自定义表,请在表定义中选中业务流程流(将创建列)复选框。 您无法“撤销”此操作。

备注

如果您导航到包含 Social Activity 表的业务流程流阶段并选择下一阶段按钮,您将看到创建选项。 选择创建,加载社交活动窗体。 但是,因为 Social Activity 对从应用用户界面的 Create 无效,您将无法保存窗体,您将看到错误消息:“意外错误”。

流程、阶段和步骤的最大数量

若要确保可接受的性能以及用户界面的可用性,当您计划使用业务流程时,需要知道一些限制:

  • 每个表可以有的激活的业务流程流不能超过 10 个。

  • 每个流程可以包含的阶段不能超过 30 个。

  • 多表流程可以包含的表不能超过五个。

业务流程流表自定义支持

在 Dynamics 365 (online) 版本 9.0 更新中引入后,业务流程流表可以显示在系统中,以便可以在网格、视图、图表和仪表板中显示表行数据。

通过网格、视图、图表和仪表板使用业务流程流表行

使用作为表提供的业务流程流,您现在可以使用源自给定表(例如潜在顾客或商机)的业务流程流数据的高级查找、视图、图表和仪表板。 系统管理员和定制员可以创建自定义业务流程流网格、视图、图表和仪表板,与使用任何其他表创建的相似。

业务流程流(例如潜在顾客转化为商机销售流程)在解决方案资源管理器中显示为可自定义的表。

包含潜在顾客转化为商机流程表的解决方案资源管理器。

若要访问默认的业务流程流视图,请打开解决方案资源管理器,展开> 展开所需的流程(例如潜在顾客转化为商机销售流程),选择视图,然后选择所需的视图。

有多个默认视图可以作为图表查看,如可用的商机销售流程视图。

可用的商机销售流程视图。

与工作流中的业务流程流表交互

您还可以与工作流中的业务流程流表进行交互。 例如,可以为业务流程流表行创建工作流,以在更新商机表行上的列时更改活动阶段。 有关如何执行此操作的详细信息,请参阅使用工作流自动执行业务流程阶段

脱机运行业务流程

如果满足以下条件,则可以脱机使用业务流程:

  • 业务流程在 Power Apps 应用中使用。
  • 已针对离线使用启用 Power Apps 应用。
  • 业务流程流具有单个表。

具体而言,当 Power Apps 应用处于脱机状态,以下三个命令可用于业务流程:

  • 下一阶段
  • 上一阶段
  • 设置活动阶段

查找业务流程流阶段中的列

最近的行显示在统一接口的查找列中。 要防止最近使用的项目显示在查找中,请按照下列步骤操作:

  1. 登录到 Power Apps

    若要了解有关使用 Power Apps 接口的详细信息,请转到 Power Apps 入门

  2. 从右上方选择正确的环境。

  3. 在左侧导航窗格中,选择更多>

  4. 搜索您的表并选择您的业务流程表。

  5. 数据表达式组中,选择窗体

  6. 窗体屏幕上,选择信息

  7. 树视图中选择您的查找数据步骤,然后选中禁用最常使用的项目

    如何禁用最近使用的项的屏幕截图。

  8. 保存然后发布。

使用业务流程流表的限制

  • 当前,您无法基于业务流程流为表创建自定义窗体。

  • 如果解决方案包含业务流程流表,必须手动将业务流程流表添加到解决方案中,然后才能将其导出。 否则,解决方案包中将不会包含业务流程流表。 若要了解详细信息,请转到创建和编辑表

  • 将流程表添加到模型驱动应用可能会导致功能受限。 若要了解详细信息,请转到创建和编辑业务流程流

  • 业务流程将显示 BPF 实例的名称,该名称是在创建 BPF 实例时设置的。 这意味着如果 BPF 定义中的名称发生变化,新的 BPF 实例将显示更新后的名称,而旧的 BPF 实例将显示原始名称。 这也意味着不显示本地化的 BPF 定义名称。

另请参见