目次
はじめに
こんにちは。
今回は、フローを実行する条件としてプロファイルを使用する方法についてご紹介します。
具体的にはプロファイルIDを取得し、そのIDをエントリ条件に設定することで実現可能です。
では設定方法をご紹介していきます。
フローを実行する条件としてプロファイルを使用する方法
1. 事前準備
今回設定方法をご紹介するにあたって、以下の処理を行うレコードトリガーフローを作成していくこととします。
「取引先責任者」のレコードが作成または更新された時に、項目「取引先責任者 所有者」のユーザーが特定のプロファイル(システム管理者)である場合、フローを実行しカスタム項目「所有者:システム管理者」にチェックを入れる
ユーザーが特定のプロファイルであることを条件にフローを実行するにはプロファイルのIDが必要となるので、まずその取得方法を以下で説明し、その後フローを作成していきます。
2. プロファイルIDを取得する
プロファイルのIDはプロファイルの詳細ページのURLより取得することが可能です。
[設定]から[プロファイル]を開くと画像①の画面が表示されるので、IDを取得したいプロファイル名を見つけクリックします。
そうするとプロファイルの詳細ページが表示されるので、そのページのURLのうち、画像②の赤枠で囲んだ箇所(00e2w000005HbSc)がプロファイルのIDとなります。この後にフローで使用するのでメモをしておきます。
関連記事:レコードID・レコードタイプIDを取得する方法まとめ
3. フローを作成する
1. でお伝えした以下の処理を行うレコードトリガーフローを作成していきます。
「取引先責任者」のレコードが作成または更新された時に、項目「取引先責任者 所有者」のユーザーが特定のプロファイル(システム管理者)である場合、フローを実行しカスタム項目「所有者:システム管理者」にチェックを入れる
① レコードトリガーフローの作成を開始する
[設定] > [フロー] > [新規フロー] を選択し、画像①のように[レコードトリガーフロー]を選択し[作成]をクリックします。
② ユーザーが特定のプロファイルである場合にフローが実行されるように設定する
フローの開始要素の設定を編集し、項目「取引先責任者 所有者」のユーザーが特定のプロファイル(システム管理者)である場合にフローが実行されるよう設定していきます。
[作成]をクリックした後、画像②の画面が表示されるので以下のように設定を行います。
オブジェクト:取引先責任者
フローをトリガーする条件:レコードが作成または更新された
条件の要件:数式の評価が True になる
更新されたレコードでフローを実行するタイミング:条件の要件に一致するようにレコードを更新したときのみ
フローを最適化:アクションと関連レコード
[条件の要件]で「数式の評価が True になる」を選択すると表示される[数式]には、以下の数式を入力します。入力後、[構文を確認]ボタンを押し数式が有効であることを確認します。
数式{!$Record.Owner.Profile.Id} = '00e2w000005HbSc'
数式の解説
この式は「現在のレコードの所有者のプロファイル ID が '00e2w000005HbSc'
と等しいか」をチェックする数式です。$Record
は現在のレコードを示し、Owner
はそのレコードの所有者、Profile
は所有者のプロファイル、そして Id
はそのプロファイルのIDであり、画像③のように[リソースを挿入...]で$Record
から順にクリックしていくことで入力可能です。'00e2w000005HbSc'
は 2. で取得したプロファイルIDを入力しています。
③ レコードを更新する
②で所有者のプロファイルがシステム管理者である場合にフローを実行するよう設定ができたので、次にフローへカスタム項目「所有者:システム管理者」にチェックを入れる処理を設定します。
②で編集した緑色のアイコンの下にある[ + ]をクリックし、画像④のように[レコードを更新]を選択します。
その後表示される画像⑤の画面では、以下のように値を入力します。これでフローの作成が完了です。[保存] をクリックして、[有効化] をクリックします。
表示ラベル:「所有者:システム管理者」項目の更新(任意)
API参照名:UpdateField_OwnerAdmin(任意)
更新するレコードを検索してその値を設定する方法:フローをトリガーした 取引先責任者 レコードを使用
レコード を更新する条件の要件:なし - 常にレコードを更新
取引先責任者 の項目値を レコード に設定(項目 ← 値):
OwnerAdmin__c ← {!$GlobalConstant.True}
* 「OwnerAdmin__c」はカスタム項目「所有者:システム管理者」のAPI参照名
4. 作成したフローを確認する
最後に作成したフローによって、 1. でお伝えした以下の処理が実行されるかをテストしていきます。項目「取引先責任者 所有者」のユーザーがシステム管理者である場合、それ以外のプロファイルである場合についてそれぞれのプロファイルで「取引先責任者」レコードを作成することで確認します。
「取引先責任者」のレコードが作成または更新された時に、項目「取引先責任者 所有者」のユーザーが特定のプロファイル(システム管理者)である場合、フローを実行しカスタム項目「所有者:システム管理者」にチェックを入れる
① プロファイルが「システム管理者」のユーザーの場合
プロファイルが「システム管理者」である画像①のユーザーで「取引先責任者」レコードを作成します。
画像②のように必須項目である「名前」項目の「姓」のみ入力してレコードを作成したところ、作成されたレコードでは画像③のように「所有者:システム管理者」項目にチェックが入っておりフローが実行されていることが確認できました。
② プロファイルが「システム管理者」でないユーザーの場合
次にプロファイルが「システム管理者」でない画像④のユーザーで「取引先責任者」レコードを作成します。
①と同様の手順で画像⑤のようにレコードを作成したところ、作成されたレコードでは画像⑥のように「所有者:システム管理者」項目にチェックは入っておらず設定通りフローが実行されていないことが確認できました。
まとめ
今回は、フローを実行する条件としてプロファイルIDを指定する方法をご紹介しました。
プロファイルだけでなく、特定のユーザーやレコードタイプに限定して何らかの処理を行いたい場合も、同様にIDを取得し、条件として指定することで実現が可能となります。
Salesforceに関するお悩みはありませんか?
今回ご紹介したフローをはじめとするSalesforceの機能活用について、
「調べるのに時間がかかる...」
「作ったはいいがバグが起こらないか心配...」
「Salesforceを活用したいけどそこまで手が回らない...」
などお悩み事はありませんか?
Air合同会社ではSalesforceエンジニアを一人雇うほどの業務は無いが、業務を任せたいというお客様へ月 数時間~40時間で柔軟にご利用頂けるSalesforce活用支援サービスを提供しています。
機能の実装や改善のご提案、社内での内製化支援まで、Salesforce認定資格保持者で構成される当社チームが貴社のSalesforceのお悩みを解決いたします。Salesforceをより活用し課題解決を行なっていくための手段としてぜひご検討ください。
Salesforce業務を他社に外注するイメージがわかない…という方に向け、外注する際のメリット・デメリットやSalesforce開発の流れを以下の記事で解説しています。ぜひご覧ください。
Salesforce運用保守を外注するメリット・デメリットとは?
Salesforceのノーコード・ローコード開発の流れを解説!
また、弊社では「サービスについて簡単に知りたい」「Salesforceの使い方について相談したい」などSalesforceに関する無料相談会も随時実施しています。
貴社の課題解決のお力になれるよう、Salesforce認定資格を持つ担当者が心を込めてサポートいたします。まずはお気軽に下記ボタンよりお問い合わせください。
Salesforceオンライン無料相談会
Air合同会社では
「サービスについて簡単に知りたい」
「Salesforceの使い方について相談したい」
など、Salesforceのお悩みに関する無料相談会を随時実施しております。
\Salesforce認定資格を持つ担当者が対応!/
無料相談のご予約はこちら