Salesforce Flow

     做过Salesforce的小伙伴们应该都知道 Salesforce为我们提供了多种用于业务流程自动化的工具。Salesforce作为一个灵活且可扩展的CRM平台,系统管理员们往往可以通过多种方式来实现同一目标。如果实现的方法有多种时,小伙伴们有没有思考过  “那我们应该什么时候,使用哪种自动化工具呢?”

首先,再讲 Flow Builder 之前,让我们先大概的温习一下 这几种 自动化工具。

  * Apex 

    Apex Code 可以自动化Salesforce中任何业务流程,并且可以通过各种方式与外部系统进行交互。Apex 在后台运行,可以通过LWC (Lighting Web Component) 或 VF(Visualforce Pages) 提供用户界面。Apex通过其编程方式提供了无限的灵活性,并且可以在DeveloperConsole(开发人员控制台)或任何IDE(Sublime 、VSCode 等)中进行管理。

 * Workflow

     使业务流程自动化,以更新Salesforce记录,并以有限的方式与外部系统进行交互。Workflow始终在后台运行。Workflow提供有限的灵活性,可在类似于声明性向导的界面中进行管理。但Wokrflow 也有相应的局限性,例如 :一个WorkFlow 只能作用在一个单独的sObject上,等.还有一些小喵就不在这一一列举了,可以参考一下 小喵之前写的一篇文章 <<Salesforce之工作流>> ,WorkFlow 更新记录消耗CPU,所以当在代码中遇到CPU超限的问题时,可考虑将WorkFlow 的更新操作整合进Apex code;

 * Process Builder

      使业务流程自动化,以收集、更新、编辑或创建删除Salesforce记录以及与外部系统进行交互。Processes 始终在后台运行。Processs 提供适度的灵活性,可在声明性和交互式Process Builder UI中进行管理。Process Builder为Lightning Flow 的工具之一。但 Processes Builder 也存在着一些劣势/缺陷:

        不能删除编辑好的Process,只能Inactive (除非使用Metadata API操作),不能修改已经编辑过的Process,只能clone,触发条件为created/edited;

       相比workflow的优势:

          1) 流程图的方式写逻辑和action更直观 ;

          2) 执行action的时候,可以update选定对象的相关字段的值,而不仅局限其对象本身的field;

          3) 能跨对象更新,不管是跨父级还是跨子级更新都行。

 * Flow

     自动执行业务流程,以收集、更新、编辑,创建或删除Salesforce记录以及与外部系统进行交互。Flow可以在后台运行(autolaunched flows),也可以提供用户界面(screen flow)。Flow提供极大的灵活性,可在声明性和交互式Flow Builder UI中进行管理。Flow 为Lightning Flow 的另一工具。

 

下图是Salesforce 自动化应用时的考量, 告诉我们应该从哪些角度来考量,合适该使用哪种自动化工具呢?

 

 

小伙伴们在部署flow 和 button 的时候要注意下面两点:

    1) Flow部署之后是未激活的状态,所以一定要在环境里面手动激活。

    2) Screen flow的Button不能通过推送的方式部署,目前比较好的方案是在PRD里面直接新建相关的Button.

下面是小喵在写这篇博客时看到的几篇不错的文章

    小伙伴们可以学习一下 :

     Salesforce Lightning Builder Flows (Salesforce Lightning 构建Flows)

     Salesforce Flow(一)Build a Simple Screen Flow

     Guide Users Through Your Business Processes with Flow Builder Learning Objectives

今天的分享就到这里了,

   每天进步一点点 , 给努力中的自己 比个yeah!

 (^_^)~喵~!!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章