什麼是 Salesforce Flow? 五個案例操作 - 沃克雲端

什麼是 Salesforce Flow? 五個案例操作

在 Salesforce 中,Flow 是一種自動化工具,可幫助自動化業務和數據流程,而無需使用任何代碼。

例如,我們可以自動化的幾個業務流程包括:

  • 發送電子郵件
  • 創建任務
  • 分配權限集
  • 創建、更新和刪除記錄等。

所有這些事情我們都可以使用 Flow Builder 來完成,我們可以在其中建立邏輯而無需使用任何代碼。現在,使用 Flow 自動化 Salesforce 中的業務流程非常流行,它最終取代了工作流程和流程構建器功能。

一. 為什麼要使用 Salesforce Flow?


正如我們所知,Flow 可以自動化業務流程,因此,我們可以使用 Flow 而不是 Apex 觸發器,Flow 提供了許多優點,包括易於使用和降低複雜性。以下是一些更喜歡 Flow 的重要原因:

  • 自動化:Salesforce 最強大的自動化工具是 Flow,它可以自動化業務流程和數據流程。Flow 用於自動化重複性任務,從而減少了人工工作量和出錯的可能性。
  • 無代碼:Flow 提供了一種可視化的方式來構建自動化流程,而無需編寫代碼。這使得更廣泛的用戶(包括管理員和沒有編碼技能的人)都可以使用它。
  • 錯誤處理和調試:Flow Builder 具有內置的錯誤處理和調試工具,例如調試模式,我們可以在其中查看與 Apex 錯誤日誌相比更容易理解的錯誤消息。這些調試資源有助於用戶測試和排除 Flow 故障,確保它們在部署之前按要求工作。
  • 不依賴編碼:通過使用 Flow,我們可以減少構建和維護自動化流程的代碼依賴性。因此,沒有或很少有編碼先驗知識的人可以熟練設計 Flow。

雖然 Apex 觸發器功能強大,並且對於某些需要高級邏輯或集成的複雜場景是必需的,但對於 Salesforce 中許多常見的業務自動化需求,Flow 提供了一個更簡單、更高效且通常足夠的解決方案。

二. 什麼是 Salesforce 中的 Flow Builder?


在 Salesforce 中,Flow Builder 是一種工具,我們可以在其中開發 Flow 以使流程自動化。它由各種元素組成,例如螢幕、創建記錄元素、獲取記錄元素等,這些元素用於構建 Flow。

以下是 Flow Builder 的示意圖供參考:

以下是 Salesforce Flow Builder 的一些功能:

  1. 在 Flow Builder 中,我們將元素添加到 Flow Canvas 以創建 Flow 結構。
  2. 我們在 Flow Builder 中創建的資源僅適用於當前 Flow,這些資源存儲在 Flow Builder 資源管理器中。
  3. 除了創建 Flow 之外,我們還可以在 Salesforce Flow Builder 中測試和調試 Flow。在調試窗口中,Flow 運行並提供有關 Flow 如何開始和完成的詳細信息。它還提供有關調試 Flow 時發生的錯誤的詳細信息。
  4. 要保存 Flow,我們只需單擊 Flow Builder 中的“保存”按鈕。
  5. 要使用或部署 Flow,需要將 Flow 設置為活動狀態。Flow 的激活和停用也可以在 Flow Builder 中通過“激活”和“停用”按鈕完成。

三. Salesforce 中的 Flow 與 Apex 觸發器比較


好的,這張表清楚地比較了 Salesforce Flows 和 Apex Triggers 之間的區別:

Salesforce Flows (流程)

  • 聲明式工具: 使用可視化界面,無需編寫代碼即可構建。
  • 點擊式界面: 通過拖放和配置元素來創建自動化邏輯。
  • 可視化界面: Flow Builder 提供了一個直觀的圖形化環境。
  • 適用於簡單到中等複雜的自動化: 能夠處理各種常見的業務流程。
  • 多個觸發點: 可以響應記錄更改、用戶交互、計劃等事件觸發。
  • 易於修改: 在 Flow Builder 中可以輕鬆地更改和調整流程。
  • 簡化的調試: 具有如 Debug Mode 等工具,方便排查問題。

Apex Triggers (觸發器)

  • 編程式工具: 需要編寫 Apex 代碼來實現自動化邏輯。
  • 編寫 Apex 代碼: 使用 Apex 語言在 Developer Console 或代碼編輯器中編寫代碼。
  • 基於代碼: 通過編寫代碼來定義觸發器的行為。
  • 適用於複雜的業務邏輯: 能夠處理需要高度定制和複雜邏輯的場景。
  • 與數據庫事件緊密相連: 只能響應數據庫事件 (如插入、更新、刪除等)。
  • 需要 Apex 知識: 需要熟悉 Apex 語言和部署工具才能進行修改。
  • 複雜的調試: 通常需要使用 Developer Console 和日誌來進行調試。

四. Salesforce 中有五種 Flow 類型:


  • Screen Flow(螢幕流程): 需要用戶交互的流程。它們在運行時會顯示在螢幕上,允許用戶輸入數據或做出選擇。通常用於引導用戶完成一系列步驟,例如收集信息、創建記錄或執行複雜的任務。
  • Auto-launched Flow(自動啟動流程): 無需用戶交互即可自動啟動的流程。它們可以由其他流程、Apex 觸發器、REST API 調用或 Webhooks 觸發。通常用於在後台執行自動化任務,例如更新記錄、發送通知或執行計算。
  • Record-Triggered Flow(記錄觸發流程): 在記錄被創建、更新或刪除時自動啟動的流程。它們可以配置為在記錄更改之前或之後運行,用於自動執行與記錄相關的操作,例如驗證數據、更新相關記錄或發送電子郵件。
  • Platform Event-Triggered Flow(平台事件觸發流程): 在平台事件發布時自動啟動的流程。平台事件用於在 Salesforce 組織內部或外部傳輸實時數據。此類流程可用於響應外部系統的更改或在 Salesforce 內部不同部分之間傳輸信息。
  • Schedule-Triggered Flow(排程觸發流程): 按照預定時間表自動運行的流程。它們可用於定期執行批處理作業,例如清理數據、生成報告或發送提醒。

五. Salesforce Flow 的類型和元素


Screen Flow(螢幕流程)

  • 螢幕流程提供指令或腳本,引導使用者在欄位中輸入詳細資訊,並執行諸如建立和更新記錄等操作,所有這些都只需點擊幾下即可完成,而無需編寫任何代碼。
  • 使用螢幕流程,我們可以建立自定義使用者介面 (UI),並引導使用者完成可以從 Lightning 頁面啟動的業務流程。

Auto-Launched Flow(自動啟動流程)

  • 在 Salesforce 中,自動啟動流程有助於自動化任務。它會在我們設定的特定觸發條件下運行。
  • 自動啟動流程不需要任何使用者交互,因為它在後台運行。
  • 它可以從其他子流程、流程構建器、Apex 類別或平台事件中調用。
  • 假設我們有一個任務是建立多個流程,並且有一個功能(發送電子郵件)需要由所有 10 個流程執行;那麼,我們可以將自動啟動流程用作子流程,其中包含所有流程所需的功能。

Record-Triggered Flow(記錄觸發流程)

  • 記錄觸發流程會在記錄被建立、更新或刪除時啟動。通常,我們使用 Apex 觸發器來完成此任務,但現在我們也可以使用流程。
  • 例如,當建立一個新的客戶帳戶時,我們需要向客戶發送一封關於此事的電子郵件。

Platform Event-Triggered Flow(平台事件觸發流程)

  • 在 Salesforce 中,平台事件觸發流程用於根據組織內發生的事件自動化任務和操作。
  • 當組織中發生事件時,它會自動觸發,例如當商機階段設定為「關閉失敗」時刪除帳戶記錄。

Schedule-Triggered Flow(排程觸發流程)

  • 此流程會在特定時間針對該批次中的每個記錄啟動。到目前為止,我們一直使用 Apex 批次作業來滿足此要求,但現在我們也可以使用流程。
  • 在排程觸發流程中,我們可以將觸發時間設定為一次、每天或每週。流程將在排程時間觸發。

六. Salesforce Flow 元素


在 Salesforce 中,每個 Flow 元素都代表一個將在流程中執行和執行的操作。Flow Builder 有兩種表單類型:自由格式和自動佈局。在自由格式中,元素通過將它們拖曳到流程畫布來添加,在自動佈局中,單擊“+”圖示以在流程中添加元素。

以下是 Flow 元素的主要類型及其用途:

  • 互動元素
  • 邏輯元素
  • 資料元素
  • 整合元素

現在我們將根據元素查看子類型及其功能:

互動元素

  • Screen(螢幕): 顯示用於互動的使用者介面。它用於收集使用者的輸入或向他們顯示資訊。此元素僅在螢幕流程中使用。螢幕元素收集使用者輸入,例如聯絡表單,使用者可以在其中輸入姓名和電子郵件以建立或更新記錄。
  • Actions(動作): 在 Salesforce 流程中,動作元素用於啟動組織中可用的動作,例如發送電子郵件、提交記錄以供審核或建立任務。通過此元素,我們還可以自動執行諸如在滿足條件時更新相關記錄、發送通知或提醒,以及通過 Apex 動作與外部系統整合等任務。
  • Sub flow(子流程): 在 Salesforce 中,子流程是一個自動啟動的流程,它作為子流程封裝在另一個流程中。此元素在運行時調用引用的流程。

邏輯元素

  • Assignment(指派): 指派元素用於在變數(如集合變數、記錄變數、記錄集合變數和全域變數)中指派值。
  • Decision(決策): 當我們為流程添加多個條件以運行或觸發時,使用決策元素。它根據結果評估流程的條件,就像程式設計中的 if-else 語句一樣。
  • Loop(迴圈): 迴圈元素遍歷流程中選定的集合變數,它啟動一個迴圈路徑以遍歷集合變數中的項目。對於每次迭代,流程會暫時將項目儲存在迴圈變數中。
  • Collection Sort(集合排序): 在流程中,當我們需要根據定義的條件排序和排列集合中的項目列表時,我們使用集合排序元素。例如,我們有一個帳戶列表,使用集合排序,我們可以按升序或降序排序帳戶記錄。
  • Collection Filter(集合篩選器): 在 Salesforce 流程中,當我們需要通過定義特定條件來排序一組記錄時,我們使用集合篩選器元素。例如,我們有潛在客戶記錄,我們只需要那些潛在客戶來源是電話諮詢的潛在客戶。然後我們使用集合篩選器來定義篩選記錄集合的條件。

資料元素

  • Create Records(建立記錄): 在 Salesforce 流程中,建立記錄元素允許我們向 Salesforce 資料庫添加或建立新記錄。在此元素中,我們需要選擇我們必須在其中建立記錄的物件。
  • Update Records(更新記錄): 在流程中,我們使用更新記錄元素來更新 Salesforce 資料庫中的現有記錄。在此元素中,我們必須首先選擇我們將在其中更新記錄的物件,然後我們必須設定物件欄位的新值。
  • Get Records(取得記錄): 使用流程中的取得記錄元素,我們可以從組織資料中提取記錄。在此元素中,我們需要選擇物件,然後我們需要添加條件要求以設定我們需要提取的記錄的篩選器。然後將根據定義的條件提取記錄。
  • Delete Records(刪除記錄): 在 Salesforce 中,刪除記錄元素用於根據條件中定義的刪除記錄的條件,通過流程從資料庫中刪除記錄。

整合元素

  • Call Apex(呼叫 Apex): 當在 Salesforce 流程中需要執行過於複雜且無法由標準元素執行的任務或動作時,會使用「呼叫 Apex」。此時需要編寫 Apex 代碼來執行該任務,然後使用「呼叫 Apex」元素在流程中呼叫該代碼。
  • Send Email(發送電子郵件): 在流程中,「發送電子郵件」用於自動向單個或一組收件人發送電子郵件。在此元素中,可以添加電子郵件正文、主旨、收件人地址等。此元素可用於具有電子郵件欄位的標準和自定義物件。
  • Send Custom Notification(發送自定義通知): 「發送自定義通知」元素用於向 Salesforce 組織內的使用者或使用者組發送自定義通知。例如,當 Salesforce 推出新功能時,可以使用自定義通知來告知組織中的所有使用者。
  • Outbound Message(發送外部訊息): 「發送外部訊息」元素用於以訊息形式將資訊從流程發送到外部系統。例如,當在 Salesforce 資料庫中更新了數據時,若要通知 Salesforce 之外的其他系統有關此更新,將使用「發送外部訊息」元素發送訊息。

七. Salesforce Flow 資源


在 Salesforce 中,流程中使用的資源代表一個可以在整個流程中使用的值。這些資源代表流程中不同類型的數據和功能。Flow Builder 的「管理員」面板會顯示流程中可用的資源。以下是 Salesforce 中 Flow 資源的類型:

Variables(變數)

  • 在 Salesforce 中,變數用於儲存特定資料類型的值。可以在流程中建立單值變數和集合值變數。
  • 在流程中,單個變數儲存一個單一值,該值可以在整個流程中被引用和更新。
  • 集合變數用於儲存相同資料類型的多個值,作為記錄列表。

Constants(常數)

  • 在 Salesforce 流程中,常數是指在流程執行期間不會變更的固定值。當我們設定在同一個流程中多次引用的值時,常數非常有用。

Formulas(公式)

  • 當需要根據流程中的其他數據計算值時,我們使用「流程」資源。
  • 在流程中建立「公式」資源後,就可以在流程中多次使用它。
  • 公式欄位的傳回資料類型必須與建立公式的欄位的資料類型相容。

Text Templates(文字範本)

  • 在流程中,「文字範本」是一種資源,我們可以在其中建立像電子郵件正文這樣的文字範本。然後可以在流程中多次使用這些文字範本。

Choices(選項)

  • 「選項」資源會顯示一組使用者可以在螢幕元素中選擇的選項。
  • 「Picklist Choice Set(選項列表選擇集)」:根據 Salesforce 選項列表欄位中的值產生選項。這在顯示和選擇「產業類型」(選項列表)以建立帳戶記錄等情況下很有幫助。
  • 「Record Choice Set(記錄選擇集)」:產生根據選擇篩選的記錄,例如可以建立一個「國家」為「美國」的「帳戶」記錄選擇集。

Record Variables and Record Collections(記錄變數和記錄集合)

  • 「Record Variable(記錄變數)」:在記錄變數中,我們可以儲存單個 Salesforce 記錄。使用「記錄變數」的好處是,我們可以快速引用流程中其他地方的特定記錄的任何欄位。
  • 「Record Collection(記錄集合)」:在 Salesforce 流程中,「記錄集合」基本上是多個 Salesforce 記錄的群組或集合。此資源儲存相同物件類型的記錄,例如它可以儲存「帳戶」、「潛在客戶」和「商機」記錄的集合。

Global Variables(全域變數)

  • 「全域變數」是系統提供的變數,它保存可以在整個流程中引用的資訊。
  • 此資源提供對系統資訊的存取,例如「使用者」、「設定檔」和「記錄」。

Stage(階段)

  • 「階段」資源用於表示使用者在流程中經歷的不同步驟。它在需要追蹤進度的複雜流程中很有用。
  • 例如,可以引用從「商機」記錄的開始階段到結束階段(關閉/贏得)的商機階段。

八. 範例 1 – 螢幕流程 (Screen Flow)


在這個範例中,我們將建立一個螢幕流程。在這裡,我們將建立一個螢幕流程,使用者可以在螢幕流程的輸入欄位中輸入帳戶詳細資訊,並且當使用者點擊「下一步」按鈕時,將會建立帳戶記錄。

它基本上是一個表單結構,我們需要在欄位中輸入詳細資訊,建立的帳戶記錄將儲存在「帳戶」物件中。在這個範例中,我們還將學習或添加元件和選項集到螢幕流程。

在 Salesforce 中建立螢幕流程

請按照以下步驟建立螢幕流程:

在設定頁面上,搜尋然後在「自動化」標題下選擇「流程」。

    • 在「流程」設定中,點擊「新增流程」按鈕。選擇「從頭開始」選項,然後點擊「下一步」按鈕。
    • 在下一個視窗中,選擇「螢幕流程」選項,然後點擊「建立」按鈕。

    在流程構建器中,點擊“+”圖示,然後選擇「螢幕」元素。

    • 輸入螢幕元素的標籤。
    • 要取得使用者輸入的帳戶名稱,請將「文字」元件拖曳到螢幕上,並將標籤輸入為「帳戶名稱」。
    • 對於「帳戶」中像「類型」這樣的選項列表欄位,請在螢幕上新增一個選項列表元件,並輸入該元件的標籤和 API 名稱。
    • 捲動到「選項」欄位 -> 點擊它 -> 選擇「新增選項資源」。
      • 輸入選項列表選擇資源的詳細資訊。
      • 選擇「資源類型」為「選項列表選擇集」。
      • 輸入 API 名稱為「AccountType」。
      • 選擇「物件」為「帳戶」,「資料類型」為「選項列表」。
      • 選擇「選項列表欄位」(類型),然後點擊「完成」。
    • 要新增「電話」和「電子郵件」欄位,請將「電話」和「電子郵件」元件拖曳到螢幕區域,並輸入它們的標籤。新增元件後,點擊「完成」。
    • 現在,在流程中新增一個「建立記錄」元素。然後,為該元素輸入標籤。
    • 在「如何設定記錄欄位值」欄位中,選擇「手動」。
    • 在「物件」欄位中,選擇「帳戶」。
    • 將物件欄位與螢幕元件對應。在這裡,我已將電子郵件與自定義電子郵件欄位對應。
    FieldValue
    NameAccount Name (text)
    TypeAccount Type (picklist)
    PhonePhone > Value
    EmailEmail > Value
    • 點擊流程構建器中的「儲存」按鈕。在下一個視窗中,輸入「流程標籤」和「流程 API 標籤」,然後點擊「儲存」。

    測試和偵錯螢幕流程

    • 要偵錯螢幕流程,請點擊流程構建器中的「偵錯」按鈕。
    • 在偵錯視窗中,點擊「執行」按鈕。
    • 輸入輸入欄位,然後點擊「下一步」按鈕。
    • 當我們執行流程時,它會在螢幕的右側顯示偵錯詳細資訊。
    • 如果流程中沒有錯誤,它將顯示如下圖所示的訊息。
    • 最後,點擊「啟用」按鈕以啟用流程,以便可以部署它。

    將螢幕流程部署到記錄頁面

    要將螢幕流程部署到記錄頁面或首頁,請導航到需要部署螢幕流程的頁面,然後按照以下步驟操作。

    • 在記錄頁面上,點擊「設定」圖示,然後選擇「編輯頁面」。
    • 在 Lightning 應用程式構建器中,將「流程」元件拖曳到螢幕區域。
    • 選擇螢幕流程,然後點擊「儲存」按鈕。

    概念驗證:

    • 現在,螢幕流程將會顯示在記錄頁面上。
    • 在此,輸入欄位的詳細資訊,然後點擊「下一步」按鈕。
    • 當我們點擊「下一步」按鈕時,將會建立「帳戶」記錄。

    九. 範例 2 – 自動啟動流程


    在這個範例中,我們將建立一個自動啟動流程。

    我們有兩個流程:一個畫面流程和一個紀錄觸發流程。現在,需求是我們需要從這兩個流程都發送電子郵件。

    • 現在有兩個選擇:一個選擇是在兩個流程中分別建立電子郵件動作,從而單獨從兩個流程發送電子郵件。
    • 另一個選擇是,我們可以不需在兩個流程中都建立電子郵件動作,而是使用自動啟動流程作為子流程。在這個流程中,我們將建立一個電子郵件動作,然後每當我們需要時,就從另一個流程呼叫這個流程。

    在 Salesforce 中建立自動啟動流程有以下先決條件:

    • 我們需要一個畫面流程,在其中我們可以建立一個紀錄,然後發送電子郵件給客戶,以確認帳戶的建立。
    • (我們將參考在範例 1 中建立的畫面流程。)您可以建立一個新的畫面流程。

    先決條件:

    • 從畫面流程建立帳戶後,要發送電子郵件,我們需要兩樣東西:收件人的電子郵件地址和電子郵件內文。
    • 收件人的電子郵件將從畫面流程中的「電子郵件」欄位取得,但我們需要在該畫面流程中建立電子郵件內文。

    編輯畫面流程:

    現在,我將編輯畫面流程。

    1. 要建立電子郵件內文,請點擊「管理員」頁籤,在那裡我們可以找到「新增資源」選項。點擊「新增資源」選項以建立電子郵件範本。
    2. 在「資源類型」欄位中,選擇「文字範本」選項。API 名稱將在子流程中使用。然後,在「內文」中,輸入我們想要在電子郵件中分享的訊息。

    現在我們有了來自電子郵件欄位的收件人電子郵件,並且我們已經建立了一個名為 EmailTemplate 的電子郵件內文。

    建立新的自動啟動流程

    • 在「流程設定」頁面上。-> 點擊「新增流程」按鈕。-> 選擇「從頭開始」以建立自動啟動流程。

    現在建立兩個空的變數,以便我們可以將畫面流程的值分配給它們。因此,我們將建立以下兩個變數資源:

    • Email:用於收件人的電子郵件地址。
    • EmailBody:用於電子郵件範本。
    • 在「資源類型」欄位中,選擇「變數」選項。輸入 API 名稱為 Email,資料類型為「文字」,然後選擇「可供輸入」。

    類似地,為 EmailBody 建立變數。

    • 現在,我們將在自動啟動流程中新增一個「電子郵件」動作。點擊「新增元素」圖示。然後在「互動」類別下選擇「動作」選項。
    • 要建立新動作,請在「動作」欄位中選擇「傳送電子郵件」,然後輸入「標籤」和「API 名稱」。
    • 現在我們需要新增內文,點擊「包含」按鈕,然後選擇我們建立的變數 (EmailBody)。

    然後在「收件人地址清單」中選擇 (Email)。 要新增主旨,點擊「包含」按鈕,然後輸入一個固定的主旨。

    之後,點擊「儲存」按鈕以儲存流程。

    • 現在,我們將把這個自動啟動流程作為子流程新增到畫面流程中。為此,請開啟您建立的畫面流程,然後點擊「新增元素」圖示,並在「互動」選項下選擇「子流程」。
    • 在「參照流程」選項中,選擇您建立的自動啟動流程。
    • 然後,在「設定輸入值欄位」中,我們將選擇在畫面流程中建立的 Email 和 EmailTemplate,它們將參照在自動啟動流程中建立的變數。

    之後,點擊「啟用」按鈕。

    概念驗證:

    現在,使用畫面流程建立一個記錄並儲存該記錄。

    • 當記錄儲存後,您將會在畫面流程中「電子郵件」欄位中輸入的電子郵件地址收到一封電子郵件。

    透過這種方式,我們可以在 Salesforce 中建立一個自動啟動流程。

    十. 範例 3 – 記錄觸發流程


    在這個範例中,我們將建立記錄觸發流程。此流程會在每次建立、更新或刪除記錄時觸發或執行。

    此流程用於快速欄位更新和相關記錄中的動作,例如傳送電子郵件。

    建立用於快速欄位更新的記錄觸發流程

    在快速欄位更新中,觸發流程會更新觸發流程運行的記錄上的欄位。此流程會在記錄儲存到資料庫之前執行。

    對於此觸發流程,請考慮以下情境:在「帳戶」記錄中,當貨幣欄位 Annual_revenue_c 更新為金額大於 10000 時,將觸發流程,並將核取方塊欄位 Is_VIP_customer 更新為 True。

    要建立記錄觸發流程,請導航到 Salesforce 設定頁面,然後按照以下步驟操作。

    我們將在以下欄位中輸入的欄位和觸發條件將根據上述情境而定。

    • 在設定頁面上,轉到「快速尋找」方塊並搜尋,然後在「流程自動化」標題下選擇「流程」。
    • 在流程設定中,點擊「新增流程」按鈕。
    • 對於新流程,選擇「從頭開始」選項,然後點擊「下一步」按鈕。
    • 選擇「記錄觸發流程」選項,然後點擊「建立」。

    在這個觸發流程中,選擇「物件」為「帳戶」,然後在「設定觸發條件」中,選擇「記錄已更新」選項。

    • 根據情境,我們設定了「條件要求」,其中「欄位」為 AnnualRevenue,「運算子」為「大於」,「值」為 50000。
    • 新增一個「取得記錄」元素到流程,並以下列方式設定它。
    • 輸入「標籤」和「API 名稱」。
    • 選擇「物件」為「帳戶」。

    定義與觸發條件相同的條件。

    • 新增一個「更新記錄」元素到流程,輸入「標籤」,並在「設定欄位值」部分,選擇欄位 Is_VIP_C 並將其設定為 True。
    • 儲存並啟用流程。

    概念驗證:

    導航到帳戶記錄,並將欄位「年收入」設定為大於 50000,然後點擊「儲存」。

    當我們點擊「儲存」時,記錄條件將會觸發,並將自訂核取方塊欄位「VIP 客戶」更新為 True。

    在這個觸發流程中,我們展示了如何使用流程快速更新欄位。在下一部分,我們將展示用於動作和相關記錄的觸發流程。

    建立用於動作和相關記錄的觸發流程

    透過此觸發流程,我們可以更新任何記錄並執行動作,例如傳送電子郵件。此流程會在記錄儲存到資料庫之後執行。

    對於此記錄觸發流程,我們採用了先前更新帳戶 VIP 客戶狀態的流程情境,如果「年收入」大於 50000,則將其更新為 True。

    在此基礎上,我們將在帳戶記錄中建立一個工作,如果帳戶的 VIP 客戶狀態為 True,則會為目前的帳戶所有人建立一個新工作。

    請按照以下步驟建立用於動作和相關記錄的記錄觸發流程。

    • 在流程設定中點擊「新增流程」,然後選擇「記錄觸發流程」並點擊「建立」。
    • 要設定啟動,請選擇「物件」為「帳戶」。在觸發條件中,選擇自訂欄位 Is_VIP_c 為 True。
    • 在流程中新增一個「新增工作」動作。
    • 輸入「標籤」,並以下列方式設定「工作」動作。
    • 在「指派給 ID」文字欄位中,選擇「觸發帳戶」>「所有人 ID」。
    • 設定工作的「到期日」。
    • 將「相關記錄 ID」設定為「觸發帳戶」>「帳戶 ID」。
    • 輸入工作的「主旨」。
    • 儲存並啟用流程。

    概念驗證:

    • 導航到「帳戶」記錄頁面,並根據條件更新欄位,然後點擊「活動」頁籤以查看建立的工作。
    • 透過這種方式,我們可以藉助「記錄觸發流程」更新或建立動作或相關記錄。

    十一. 範例 4. 排程觸發流程


    有一間金融公司,摩根大通私人有限公司。該公司的財務團隊想要自動化提醒電子郵件,在到期日前兩天通知客戶提交貸款 EMI 金額。

    建立排程觸發流程

    • 點擊「新增流程」按鈕。-> 選擇「從頭開始」以建立排程觸發流程。
    • 現在選擇「開始日期和時間」。流程將從選定的日期和時間開始執行。根據我們的情境,頻率設定為「每日」,因為我們希望每天執行此任務。

    現在,我們需要建立一個公式,用於找到到期日前兩天的日期。

    • 點擊「管理員」頁籤,在那裡我們可以找到「新增資源」選項。點擊「新增資源」選項以建立一個公式。
    • 在「資源類型」欄位中,選擇「公式」選項。輸入 API 名稱。然後,在「資料類型」中,選擇「日期」。在「公式編輯器」中輸入公式 – (!$Flow.CurrentDate) + 2。

    現在,我們需要提取記錄以檢查 EMI 的到期日;為此,新增「取得記錄」元素。輸入「標籤」和「API 名稱」。

    • 在「物件」欄位中選擇「帳戶」。在「欄位」中,從「帳戶」物件新增自訂 EMI 欄位,並在「值」欄位中輸入建立的公式資源。之後,將其他欄位保留原樣。
    • 欄位(自訂 EMI)= 值(FindDueDate)。
    • 然後新增「迴圈」元素,以檢查所有符合排程條件的記錄,並在「集合變數」中選擇我們在「取得記錄」元素 (Fetch_Customer_Records) 中儲存的記錄集合。
    • 然後在「For Each」元素之後新增「動作」元素,並在「動作」中選擇「傳送電子郵件」動作。
    • 然後設定電子郵件動作的值,我們需要在其中新增電子郵件內文、主旨、收件人電子郵件地址和寄件人地址。

    輸入「標籤」,並以下列方式設定「電子郵件」動作。

    • 在「內文」中,選擇建立的電子郵件內文,我建立了一個名為 EmailBody 的內文。
    • 從「迴圈」元素設定「收件人地址清單」。

    之後,儲存流程,然後偵錯,然後啟用流程。

    概念驗證:

    • 然後透過輸入到期日來建立或更新記錄。現在,Salesforce 將在到期日前兩天將電子郵件傳送給客戶。
    • 在這裡,您可以看到輸出,郵件已在到期日前兩天送達客戶。

    透過這種方式,我們可以在 Salesforce 中建立排程觸發流程。

    十二. 範例 5. 平台事件觸發流程


    在這個範例中,我們將介紹平台事件觸發流程。

    在建立記錄時,使用者可能會遇到各種錯誤和問題。這些錯誤和問題將報告給 Salesforce 管理員,因此 Salesforce 管理員很難在特定時間識別所有這些問題並提供解決方案。

    在 Salesforce 中建立平台事件觸發流程有以下先決條件:

    • 對於上述情境,我們將使用「流程執行錯誤事件」。此事件會傳送錯誤通知,這些錯誤可以儲存在任何物件中。
    • 我們需要一個自訂物件來儲存這些通知。在這裡,我建立了一個名為「記錄錯誤」的自訂物件。

    「流程執行錯誤事件」會捕獲我們建立的另一個流程中的錯誤。

    在這個情境中,我將執行一個「畫面流程」,如果它有任何錯誤,「流程執行錯誤事件」將捕獲該錯誤並將其儲存在「記錄錯誤」物件中。

    建立平台事件觸發流程

    我建立了一個名為「記錄錯誤」的自訂物件,其中包含兩個自訂欄位:「錯誤名稱」和「描述」。

    為了理解這個流程,我們將參考上面建立的「畫面流程」(範例 1)。

    現在點擊「新增流程」按鈕,然後選擇「平台事件觸發流程」。

    • 在「平台事件」選項中,選擇「流程執行錯誤事件」。因為此流程事件會通知使用者與「畫面流程」執行相關的錯誤。
    • 現在,為了儲存錯誤,我們已經建立了一個自訂物件。新增「建立記錄」元素,並根據下圖輸入資訊。
    • 然後,在「物件」欄位中,選擇「記錄錯誤」物件,我們要在其中儲存錯誤。
    • 要設定「記錄錯誤」物件欄位的欄位值。為此,在「欄位」選項中,選擇物件欄位,在「值」選項中,選擇「流程執行錯誤事件」欄位。
    FieldValue
    Name$Record>Flow API Name
    Description$Record>Flow Error Message

    之後,儲存流程並點擊「啟用」按鈕。

    概念驗證:

    • 現在我將從「畫面流程」建立一個帳戶記錄,並且我將故意將「名稱」欄位留空。這樣它就會拋出一個錯誤。
    • 當您儲存記錄時,您會收到一個錯誤,但您將無法理解錯誤的確切原因。
    • 現在,要了解原因,請導航到「記錄錯誤」頁籤,在那裡您會看到記錄已經建立,其中包含畫面流程名稱。當您點擊它時,您會看到錯誤背後的確切原因。

    透過這種方式,我們可以在 Salesforce 中建立平台事件觸發流程。

    十三. Salesforce 流程的限制和注意事項


    現在,我們來談談 Salesforce 流程的限制和注意事項,這些是我們在設計、管理和執行流程時應該注意的。

    Salesforce 流程限制

    以下是 Salesforce 中流程的限制:

    • 複雜的程式碼在流程中可能難以偵錯。每當涉及複雜邏輯時,更好的選擇是 Apex 程式碼。
    • Salesforce 流程整合到 Salesforce 生態系統中,這限制了它僅適用於依賴 Salesforce 的企業。
    • 對於包含大型資料集的自動化流程,Salesforce 流程可能不如其他工具或程式碼解決方案(如 Apex)有效。

    Salesforce 流程注意事項:

    我們在使用流程時應該注意一些基本事項。

    • 始終建議在啟用流程之前對其進行偵錯。
    • 確保流程沒有與任何限制規則衝突。
    • 對活動流程所做的任何變更都將使流程變為非活動狀態。變更後啟用流程。
    • 如果流程在您進行變更時沒有活動版本,則將使用最新的非活動版本。

    結論

    我們希望讓您了解如何在 Salesforce 流程中工作。本指南全面介紹了 Salesforce 中可用的各種流程類型,包括畫面流程、記錄觸發流程、排程觸發流程和平台事件觸發流程。

    ▍必讀文章:

    文章分享:

    ▍必讀文章

    有任何問題或申請免費試用,歡迎留下聯絡方式,我們將儘快與您聯絡!

    Salesforce
    沃克雲端 CRM 軟體導入商

    沃克雲端 Salesforce CRM 軟體導入顧問