LoginSignup
3
1

【Salesforce】マスタデータと仮データの自動化

Last updated at Posted at 2023-12-09

はじめに

Salesforce Advent Calendar 2023 9日目を担当するyappiです!
少しSalesforceを離れていましたが、ここ最近からまた勉強再開し始めました!!

Salesforceでは、プロセスビルダーやワークフローの廃止が出始め、フローへの移行が推奨されていますね。。とはいえ、仕事でSalesforceチームにいましたが、フローは全く触ったことがなかったので、今回はフローの使い方と、ありそうな業務自動化について記事にまとめようと思います。

やりたいこと

今回実装するフローは、業務でありそうなマスタデータへの自動反映フローを実装したいと思います。
物にはよりますが、マスタデータと聞くと結構重要なものが多いイメージで、マスタデータとして問題ないか?など確認した上で、反映するみたいなことは少なからずありそうだな・・と思いました。
また、外部から取得したデータをそのままマスタデータに取り込むと重複や不備があるかもしれない、、そのため一旦仮データとして保持して選別して、マスタに反映するなど、、
上記の観点から、こういう自動化やってみようと思い、実装してみました!

実装内容

今回実装・設定するのは以下になります!

  • カスタムオブジェクト2つ
  • フロー

カスタムオブジェクトは下記の2つを作成してます!

スクリーンショット 2023-12-09 11.14.30.png

オブジェクト内の項目はそれぞれ以下のように設定しています

商品マスタ

スクリーンショット 2023-12-09 11.16.49.png

項目は標準項目に加えて、 商品名種類金額があり、商品マスタ【仮】Idという項目があり、商品マスタ【仮】Idはマスタデータの元データとなる仮データを特定できるように設定します

商品マスタ【仮】

スクリーンショット 2023-12-09 11.18.07.png

仮のデータも同じように、商品名種別金額があり、このデータを使って作成されたマスタデータを特定するマスタIdを持っています
そして、このオブジェクトだけ、マスタ反映フラグを設定しており、このフラグがtrueの場合、マスタデータを作成するといったフローを作成していきます

これで、オブジェクトの設定は完了です!

Salesforceフローの実装概要

次は、実際にフローの実装をして自動化の流れを作っていきます

今回自動化では下記を意識してフローを実装していきます!

  1. どういったタイミング、条件でマスタデータを作成するか?
  2. 後々に仮データとマスタデータの整合性が調べられるように紐付けのIdがわかること

まず、タイミングと条件ですが、基本、仮データの作成・更新のタイミングで実行しようと思います。また、条件は、項目部分で紹介しましたが、マスタ反映フラグtrueの時に実行できるように制御します。

フローの実装

実装については、以下の手順でフローを作成していきます。

下記画面のようにホームから'フロー'と検索し選択 > [新規フロー]ボタンを押下
スクリーンショット 2023-12-09 11.32.36.png

[レコードトリガーフロー]を選択 > [作成]ボタンを押下
スクリーンショット 2023-12-09 11.34.59.png

以下の内容でフローの入力 > [保存]ボタンを押下
スクリーンショット 2023-12-09 11.37.58.png

各種簡単に説明すると、、

  • オブジェクトを選択 ... データの作成・更新対象のオブジェクトを選択
  • トリガ-を設定 ... フローを起動するタイミング
  • エントリ条件を設定 ... フローを起動する条件
  • 更新されたレコードでフローを実行するタイミング ... 一致するたびか一致する時のみなのか違い
  • フローを最適化 ... レコード更新前に動くか更新後かの違いだと思います。

今回の条件に合わせると、商品マスタ【仮】のレコードが作成・更新された時に、マスタ反映フラグtrueの時にのみ動作するという起動条件です。(下2つの項目はなんとなくで選択してます・・・w)

次は、実際の処理内容の実装です

再生マークの下の[+]マークを押下して次の処理を作成します
フローが起動したら、マスタデータを作成するため、[レコードを作成]を選択
スクリーンショット 2023-12-09 11.54.34.png

以下のような内容で入力
スクリーンショット 2023-12-09 11.59.02.png

今回は、商品マスタオブジェクトにレコードを1件登録します。また、各項目は仮データの項目値を転記するような設定をします。

次は、仮データと紐付けをするマスタデータIdに値を入れたいので、作成したマスタデータを取得します。
スクリーンショット 2023-12-09 12.30.36.png

取得ができたら、商品マスタ【仮】のデータにもマスタデータのIdをもたせる処理です。
スクリーンショット 2023-12-09 12.27.22.png

これは、フローをトリガーした商品マスタ【仮】のため、マスタデータを作成した元の仮データとなります。
このレコードに対して、RegisterMasterDataの商品マスタIdとあるので、登録された時にわりあてられるカスタムオブジェクトIdが仮データにも登録されレコードを更新します。

これでフローの実装は完了です。実際に[有効化]をして動作確認してみましょう。
フローの一覧画面に戻ると画像1番下に追加されていることがわかります。
スクリーンショット 2023-12-09 12.09.37.png

動作確認

商品マスタ【仮】のレコードを作成してみましょう!

商品マスタにはまだ何も登録されていません
スクリーンショット 2023-12-09 12.18.02.png

新規登録画面から、必要な項目を入力します!この時、フラグはまだfalseのままにして登録し、マスタに反映されないことを確認します!
スクリーンショット 2023-12-09 12.18.54.png

登録されていませんでした!画面から確認してみてください
次は、フラグをtrueに更新してみましょう!
スクリーンショット 2023-12-09 12.20.25.png

仮データのマスタId項目にIdが入力されていることが確認できます!
スクリーンショット 2023-12-09 12.35.30.png

ではマスタデータが本当に作成されているかを確認しましょう!
スクリーンショット 2023-12-09 12.36.27.png

マスタデータも作成されており、商品マスタ【仮】Id項目にIdが入っていることが確認できます!
SalesforceのカスタムオブジェクトIdは、Salesforceのリンクから確認できるので、相互に一致しているか確認してみてください!

これで自動化フローの実装は完了です!

終わりに

今回は、Salesforceフローについて記事をまとめてみました!毎年定期的にアップデートがあるSalesforceはキャッチアップがすごく難しい気がしていて、久しぶりに開いたらプロセスビルダー廃止・ワークフロー廃止などなど驚きましたが、フローで全て管理できるのはいいことですね。
今後も幅広く技術をキャッチアップしていきたいと思います!

それでは良いエンジニアライフを・・・!

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1