Loading
透過 Salesforce Flow 自動化業務流程
建立儲存前流程以獲得更佳的資料品質

建立儲存前流程以獲得更佳的資料品質

建立儲存前記錄觸發流程,此流程會在建立課程出席者記錄之前驗證資料品質並強制執行業務規則。無論如何建立課程出席者,此流程都能防止重複註冊、驗證課程容量,並透過封鎖無效記錄並根據業務邏輯設定適當的狀態來確保資料完整性。

必要版本

檢視支援的版本。
需要的使用者權限
若要使用 Flow Builder 中所有可用的流程類型、元素和功能 (包括 Einstein 和 Agentforce for Flow) 來開啟、編輯、建立、啟用或停用流程: 管理流程

此範例流程與 自動化課程管理流程專案中的其他範例流程一起運作。

此儲存前流程會在記錄建立流程期間執行,然後再將課程出席者記錄儲存至資料庫。透過最佳化快速欄位更新,流程會攔截儲存作業,並在建立時驗證資料。首先,它會透過查詢具有相同連絡人與課程遞送的記錄,來檢查是否已存在相同的課程出席者記錄。如果找到重複項目,流程會使用自訂錯誤訊息立即封鎖儲存,進而防止錯誤資料進入系統。如果記錄是唯一的,則流程會透過計數現有出席者並將其與允許的上限進行比較來檢查課程遞送容量。根據此計數,流程會自動將新出席者的狀態設定為「已註冊」或「已加入候補名單」,並為已註冊出席者產生確認碼。無論如何建立記錄 (無論是透過 UI、API、資料匯入或畫面流程),此方法都能確保資料驗證一致,並保證在任何無效的資料到達資料庫之前,都會強制執行業務規則。

  1. 開啟「流程」清單檢視。
    • 在設定「快速尋找」方塊中,輸入流程,然後選取「流程」。
    • 進入「自動化」應用程式,選取「流程」 索引標籤。
    • 從任何 Lightning 應用程式的「流程」 索引標籤中,按一下動作功能表,然後選取「開啟流程」。
  2. 建立記錄觸發的流程。
    1. 進入「自動化」應用程式,按一下「新增」。選取「觸發的自動化」,然後選取「記錄觸發流程」。
    2. 進入「設定」,按一下「新增流程」,選取「觸發的自動化」,然後選取「記錄觸發流程」。
    「設定開始」面板隨即開啟。
  3. 設定「開始」元素。
    1. 在「設定開始」面板上,針對「物件」選取「課程出席者」。
    2. 針對「觸發流程的時機」,選取「已建立記錄」。
    3. 針對「最佳化流程」,選取「快速欄位更新」。
  4. 取得與具有「取得記錄」元素的新記錄具有相同課程出席者和課程傳送的所有記錄。
    1. 按一下 新增元素加號圖示,然後選取「取得記錄」。
      「取得記錄」面板隨即開啟。
    2. 針對「標籤」,輸入 取得重複記錄
      API 名稱會自動填入。
    3. 針對「描述」,輸入「取得與觸發記錄具有相同連絡人識別碼和課程記錄識別碼的所有課程出席者記錄」。將結果儲存在「取得重複記錄的課程出席者」記錄集合中。
    4. 針對「物件」,選取「課程出席者」。
    5. 針對「欄位」,選取「出席者」。
    6. 針對「運算子」,選取「等於」。
    7. 針對「值」,選取「觸發 Course_Attendee__c > 出席者 > 連絡人識別碼」。
    8. 按一下 + 新增條件
      第二個篩選條件會新增至「取得記錄」元素。
    9. 針對「欄位」,選取「課程遞送」。
    10. 針對「運算子」,選取「等於」。
    11. 針對「值」,選取「觸發 Course_Attendee__c > 課程傳送 > 記錄識別碼」。
    12. 針對「要儲存多少記錄」,選取「所有記錄」。
  5. 判斷「取得記錄」元素是否傳回任何具有「決策」元素的記錄。
    1. 按一下 新增元素加號圖示,然後選取「決策」。
      「決策」面板隨即開啟。
    2. 針對「標籤」,輸入 Funded Duplicate Records?
      API 名稱會自動填入。
    3. 針對「描述」,輸入 判斷是否在「取得重複記錄」中找到任何重複的課程出席者記錄。
    4. 針對「選取決策邏輯」,選取「手動定義 (預設)」。
    5. 針對「成果標籤」,輸入
    6. 針對「結果 API 名稱」,輸入 IsDuplicateRecord
    7. 針對「資源」,選取「從取得重複記錄的課程出席者」。
    8. 針對「運算子」,選取「為 Null」。
    9. 針對「值」,選取「False」。
    10. 在「成果訂單」下,選取「預設成果」。
    11. 針對「標籤」,輸入
  6. 當新記錄是具有「自訂錯誤」元素的重複記錄時,新增自訂錯誤。
    1. 在「是」路徑中,按一下 新增元素加號圖示,然後選取「自訂錯誤」。
      「自訂錯誤訊息」面板隨即開啟。
    2. 針對「標籤」,輸入 建立重複記錄錯誤訊息
      API 名稱會自動填入。
    3. 針對「描述」,輸入 關閉自訂錯誤訊息,並防止建立觸發的課程出席者記錄。
    4. 針對「錯誤訊息」,輸入 我們無法建立此記錄,因為它已經存在。
  7. 讓自訂錯誤成為「是」路徑中的最後一個元素。
    1. 在「是」路徑的「自訂錯誤訊息」元素之後,按一下 新增元素加號圖示,然後選取「結束」。
      「是」路徑中的最後一個元素為「結束」元素。
  8. 取得所有具有與「取得記錄」元素新記錄相同課程的課程出席者記錄。
    1. 在「無」路徑中,按一下 新增元素加號圖示,然後選取「取得記錄」。
      「取得記錄」面板隨即開啟。
    2. 針對「標籤」,輸入 取得所有課程出席者
      API 名稱會自動填入。
    3. 針對「描述」,輸入 取得所有具有符合觸發記錄其課程遞送記錄識別碼的課程出席者記錄。將結果儲存在「取得所有課程出席者」記錄集合中。
    4. 針對「物件」,選取「課程出席者」。
    5. 針對「欄位」,選取「課程遞送」。
    6. 針對「運算子」,選取「等於」。
    7. 針對「值」,選取「觸發 Course_Attendee__c > 課程傳送 > 記錄識別碼」。
    8. 針對「要儲存多少記錄」,選取「所有記錄」。
  9. 新增變數以儲存「取得記錄」元素傳回的記錄計數。
    1. 若要開啟「工具箱」,請按一下「工具箱圖示。」。
    2. 按一下「新增資源」,然後選取「變數」。
    3. 針對「API 名稱」,輸入 AttendeeCount
    4. 針對「描述」,輸入「儲存觸發記錄的課程傳送出席者數量」。
    5. 針對「資料類型」,選取「數字」。
    6. 針對「小數點位數」,輸入 0
    7. 按一下「完成」。
  10. 使用「指派」元素將課程的課程出席者記錄數量儲存在 AttendeeCount 變數中。
    1. 在「取得所有課程出席者」元素之後,按一下 新增元素加號圖示,然後選取「指派」。
      「指派」面板隨即開啟。
    2. 針對「標籤」,輸入 設定 AttendeeCount 變數
      API 名稱會自動填入。
    3. 針對「描述」,輸入 將 AttendeeCount 變數的值設定為「取得所有課程出席者」傳回的記錄數量。
    4. 針對「變數」,選取「AttendeeCount」。
    5. 針對「運算子」,選取「等於計數」。
    6. 針對「值」,選取「取得所有課程出席者中的課程出席者」。
  11. 決定是否使用「決策」元素完整註冊課程傳送。
    1. 在「設定出席者計數變數」元素之後,按一下「新增元素加號圖示」,然後選取「決策」。
      「決策」面板隨即開啟。
    2. 針對「標籤」,輸入「是否完成課程遞送?」
      API 名稱會自動填入。
    3. 針對「描述」,輸入 判斷觸發記錄之課程傳送的課程出席者計數是否大於或等於課程傳送所允許的出席者上限。
    4. 針對「選取決策邏輯」,選取「手動定義 (預設)」。
    5. 針對「成果標籤」,輸入
    6. 針對「結果 API 名稱」,輸入 IsFull
    7. 針對「資源」,選取「AttendeeCount」。
    8. 針對「運算子」,選取「大於」或「等於」。
    9. 針對「值」,選取「觸發 Course_Attendee__c > 課程遞送 > 出席次數上限」。
    10. 在「成果訂單」下,選取「預設成果」。
    11. 針對「標籤」,輸入
  12. 如果類別已完成,請使用「指派」元素將課程出席者狀態設定為「已加入候補名單」。
    1. 在「是」路徑中,按一下 新增元素加號圖示,然後選取「指派」。
      「指派」面板隨即開啟。
    2. 針對「標籤」,輸入「將觸發記錄狀態設定為候補名單」。
      API 名稱會自動填入。
    3. 針對「描述」,輸入 將觸發記錄的狀態設定為「已加入候補名單」。
    4. 針對「欄位」,選取「觸發 Course_Attendee__c > 狀態」。
    5. 針對「運算子」,選取「等於」。
    6. 針對「值」,選取「已等候清單」。
  13. 讓「指派」元素成為「是」路徑中的最後一個元素。
    1. 在「指派」元素後的「是」路徑中,按一下 新增元素加號圖示,然後選取「結束」。
      「是」路徑中的最後一個元素為「結束」元素。
  14. 建立公式以產生課程確認碼。
    1. 若要開啟「工具箱」,請按一下「工具箱圖示。」。
    2. 按一下「新增資源」,然後選取「公式」。
    3. 針對「API 名稱」,輸入 CourseConfirmationCode
    4. 針對「描述」,輸入 產生包含課程出席者姓氏、課程遞送的月份、日期和年份,以及課程名稱前 10 個字元的課程確認碼。
    5. 針對「資料類型」,選取「文字」。
    6. 針對「公式」,輸入此文字:"CRC–" & {!$Record.AttendeeId__r.LastName} & "–" & TEXT(MONTH(TODAY())) & "–" & TEXT(DAY(TODAY())) & "–" & TEXT(YEAR(TODAY())) & "–" & LEFT({!$Record.CourseDeliveryId__r.CourseId__r.Name}, 10)
    7. 按一下「檢查語法」。
      如果您遵循「建立資料模型」中的步驟,則公式有效。
    8. 按一下「完成」。
  15. 如果類別未完成,請使用「指派」元素設定課程出席者狀態和確認代碼。
    1. 在「否」路徑中,按一下 新增元素加號圖示,然後選取「指派」。
      「指派」面板隨即開啟。
    2. 針對「標籤」,輸入 設定觸發記錄欄位
      API 名稱會自動填入。
    3. 針對「描述」,輸入「設定觸發記錄的狀態和確認代碼欄位」。
    4. 針對「欄位」,選取「觸發 Course_Attendee > 狀態」。
    5. 針對「運算子」,選取「等於」。
    6. 針對「值」,選取「已註冊」。
    7. 按一下 + 新增指派
    8. 針對「欄位」,選取「觸發 Course_Attendee > 確認代碼」。
    9. 針對「運算子」,選取「等於」。
    10. 針對「值」,選取「CourseConfirmationCode」。
  16. 儲存記錄觸發流程。
    1. 按一下「儲存」。
    2. 針對「流程標籤」,輸入 管理新的課程出席者記錄
      「流程 API 名稱」會自動填入。
    3. 針對「描述」,輸入在儲存前管理新的課程出席者記錄,防止重複和無效記錄,並設定相關的課程出席者欄位值。
    4. 按一下「儲存」。
    新增課程出席者記錄的已完成儲存前記錄觸發流程。
 
正在載入
Salesforce Help | Article