Skip to main content

フローで Salesforce レコードを操作する

学習の目的

この単元を完了すると、次のことができるようになります。

  • フローで Salesforce レコードをどのように操作するかを理解する。
  • Salesforce レコードを作成するフローを作成する。
  • Salesforce レコードを更新するフローを作成する。
メモ

メモ

日本語で受講されている方へ
このバッジの Trailhead ハンズオン Challenge は英語で受講していただく必要があります。英語の意味についてはかっこ内の翻訳をご参照ください。Trailhead Playground では (1) [Locale (地域)] を [United States (米国)] に、[Language (言語)] を [English (英語)] に切り替えて、(2) 英語の値のみをコピーして貼り付けてください。こちらの指示に従ってください。

翻訳版の Trailhead を活用する方法については、自分の言語の Trailhead バッジをご覧ください。

メモ

このバッジは、Flow Builder のスキルを習得するための過程の一部です。「Flow Builder を使用したフローの作成」トレイルでは、初めから終わりまで Flow Builder について学習します。このトレイルで推奨されるバッジの順序に従えば、プロセスの自動化に関する確固たるスキルが身に付き、Flow Builder のエキスパートになります。

始める前に

この単元では、前のバッジで学んだ内容をさらに広げます。変数についてよく知らない場合や復習が必要な場合は、「Flow Builder の基本」バッジの「フロー変数について」単元を参照してください。

Salesforce では、フローとは実際に何かを実行するフローチャートのことです。フローで何を実行できるかを見ていきましょう。

Flow Builder の効果

フローが効果を発揮するのは、ユーザーに代わって何かを自動的に実行できるという点です。たとえば、データの更新、メールの送信、レコードの承認申請、外部システムとの連携などが可能です。フローにはほぼ無限の可能性があります。

「Flow Builder の基本」モジュールでは変数について学習しましたが、変数に変更を加えても Salesforce レコードには影響しないという点に注意することが重要です。変数の変更をレコードにプッシュしたり、何らかの方法で Salesforce データを操作したりするには、データ要素を使用します。この要素では、レコードからの値の取得、レコードの作成、レコードの更新、レコードの削除など、あらゆることを実行できます。

詳しく見ていく前に、データ要素に関する次の動画をご覧ください。

1 つのレコードを最初から作成する

フローでは Salesforce のあらゆる種別のオブジェクトのレコードを作成できます。標準オブジェクトとカスタムオブジェクトに加えて、バックグラウンドオブジェクトまでも作成できます。バックグラウンドオブジェクトは見たことがない方もいるかもしれません。オブジェクトマネージャーに表示されるものであれば、そのレコードを作成できるということを覚えておいてください。取引先、取引先責任者、リード、ToDo、商談商品、サービス契約、カスタムオブジェクトなどのすべてが対象です。一部の API 限定オブジェクトも作成できますが、そのようなオブジェクトは要件が厳しかったり、下流への影響が大きかったりするため、慎重を期してください。

レコードを作成するときには、[レコードを作成] 要素をどのように設定するかに応じて、同時に 1 つのレコードまたは多数のレコードを作成できます。複数のレコードを作成するには、特種な変数 (レコードコレクション変数) が必要であるため、それについてはコレクション変数について学習するときに説明します。ここでは、1 つのレコードを作成することに焦点を絞りましょう。

Flo Smith は Pyroclastic, Inc. の Salesforce システム管理者であり、ビジネスアナリストです。このモジュールでは、あなたは Flo のチームの Salesforce システム管理者として、Flo が Pyroclastic のビジネスプロセスの一部を自動化するのに協力します。

Pyroclastic の営業マネージャーは、新しい取引先レコードの所有者に、新しい取引先に連絡するのを忘れないように通知したいと考えています。Flo はあなたに新しい取引先についてのフォローアップ ToDo を作成するフローの作成を任せました。あなたは、これを実現するために新しいフローで [レコードを作成] 要素を使用します。

メモ

このバッジではレコードトリガーフローを使用します。このフローには追加の設定と機能があります。レコードトリガーフローについてまだ学習していない方のために、例の中で手順を 1 つずつ説明していきます。レコードトリガーフローについての詳細は「レコードトリガーフロー」バッジを参照してください。

Flow Builder のハンズオン

ではここで Trailhead Playground を起動し、このモジュールの手順を実行してみましょう。Trailhead Playground を開くには、ハンズオン Challenge までスクロールダウンし、[起動] をクリックします。また、ハンズオン Challenge を実行するときにも Playground を使用します。

  1. レコードトリガーフローを作成します。
    1. オブジェクト: 取引先
    2. フローをトリガーする条件: レコードが作成された
    3. 条件の要件: [すべての条件に一致 (AND)]
    4. 項目: 種別
    5. 演算子: 次の文字列と一致する
    6. 値: Prospect
    7. フローを最適化: アクションと関連レコード
  2. フローキャンバスで、[Start (開始)] 要素の後のパスにある 要素を追加 にカーソルを合わせて 要素を追加 をクリックします。[レコードを作成] を選択します。
  3. [Label (表示ラベル)] に Create Follow-Up (フォローアップの作成) と入力します。
    表示ラベルはキャンバス上とフロー内で参照されるその他のすべての場所で要素の識別子となります。ですから、内容を表す名前を付けます。
  4. [説明] に「Create a task named Follow-Up Discovery Call, assigned to the account's owner」と入力します。
  5. [How Many Records to Create (作成するレコード数)] で [1] を選択します。
    ([Multiple (複数)] を選択すれば複数のレコードを作成できますが、それについては別のバッジで取り扱います。)
  6. [How to Set the Record Fields (レコード項目の設定方法)] で [Use separate resources, and literal values (個別のリソースおよびリテラル値を使用)] を選択します。
    このオプションを選択すると、各項目の値を個別に宣言できるため、複数のソースからのデータを使用してレコードを作成する場合に便利です。
  7. [Object (オブジェクト)] で [Task (ToDo)] を選択します。
    ステップ 3 ~ 7 に対応する [New Create Records (新規のレコードの作成)] パネル。
  8. 次に、[項目値を設定] で、新しい ToDo レコードに含める各項目の値を設定します。

    項目
    OwnerId $Record > OwnerId
    (スクロールダウンして Owner オブジェクトではなく OwnerId 項目を選択します。正しい OwnerId を選択した場合、他の項目を選択すると [Value (値)] 項目に 大文字の A と小文字の a を組み合わせたアイコン。 と表示されます。)
    Priority 標準
    Status 未開始
    Subject Follow-Up Discovery Call
    (選択リスト値を選択するのではなく、このテキストを直接入力します。)
    WhatId $Record > Id
    メモ: $Record はレコードトリガーフローでよく使用される特別な変数です。フローをトリガーしたレコードの項目が含まれています。たとえば、$Record > OwnerId はトリガーレコードの所有者を示します。フローで $Record を使用するには、リソースを選択するときに [グローバル変数] セクションから選択します。
  9. フローを保存します。[フローの表示ラベル] に「Create Follow-Up on New Prospect」と入力します。

この方法は Flow Builder の他の多くの要素にも使用できます。

フローを説明する

先ほど追加した [レコードを作成] 要素では、[説明] 項目にテキストを入力しました。要素に説明があると、要素の横に 要素の説明 アイコンが表示されます。アイコンにマウスポインターを置くと、要素の説明が表示されます。

[Create Follow-Up (フォローアップの作成)] 要素の説明: Create a task… assigned to the account's owner.

できるだけ説明を入力することをお勧めします。説明によって、作成しているオートメーションが文書化されます。このテキストには、フローを開いたすべてのシステム管理者がアクセスできるため、内容を推測する必要がなく、問題のトラブルシューティングが容易になります。少しの手間で将来的に多くの時間を節約し、ストレスを軽減できます。

Trailhead の演習と Challenge では何度もコピーして貼り付けるという作業を省略するために、説明が含まれていませんが、現実の世界でベストプラクティスであることは間違いありません。

1 つのレコードを更新する

Salesforce に存在するレコードであれば、フローで編集できます。必要な作業は、どのレコードを編集するかと、どのように変更するかを指定するだけです。

Flo Smith は営業からまた別の依頼を受けました。これは、アップセルを扱う部門からのものです。その部門では活動リストを作成するためにレポートを実行していますが、取引先責任者に電話番号がないことがあります。電話番号を検索しないで済めば、営業エージェントの時間を大幅に節約できます。Flo はあなたにフローの作成を任せました。このフローでは、取引先責任者に電話番号があるかどうかをチェックし、ない場合には関連する取引先の電話番号を取引先責任者にコピーします。

フロー内でレコードを更新するには、[レコードを更新] 要素を使用します。

  1. レコードトリガーフローを作成します。
    1. Object (オブジェクト): Contact (取引先責任者)
    2. フローをトリガーする条件: レコードが作成された
    3. 条件の要件: [すべての条件に一致 (AND)]
    4. 項目: Phone
    5. 演算子: null
    6. Value (値): $GlobalConstant.True
    7. フローを最適化: 高速項目更新
  2. フローキャンバスで、[Start (開始)] 要素の後のパスにある 要素を追加 にカーソルを合わせて 要素を追加 をクリックします。[レコードを更新] を選択します。
  3. [表示ラベル] に、「Set Contact Phone」と入力します。
  4. [How to Find Records to Update and Set Their Values (更新するレコードを検索してその値を設定する方法)] では、選択できるオプションが [Use the contact record that triggered the flow (フローをトリガーした取引先責任者レコードを使用)] のみになっています。

    ステップ 4 ~ 5 に対応する [New Update Records (新規のレコードの更新)] パネル。
  5. [取引先責任者の項目値をレコードに設定] で次のように設定します。
    1. [項目] で [Phone] を選択します。
    2. [値] で [$Record > Account > Phone] を選択します。
  6. フローを保存します。[フローの表示ラベル] に「Copy Account Phone to New Contact」と入力します。

レコードを削除する

もちろん、どの Salesforce レコードも永遠に存在するわけではありません。ときには、竜巻のようなフローによってオズの国までレコードを飛ばしてしまう必要があります。(そこまででなくても、少なくともごみ箱までは。)フローを使用してレコードを削除するには、[レコードを削除] 要素を使用します。

メモ

Salesforce レコードの削除は決して安易に行うべきではありません。レコードを削除する必要がある場合は、フローをユーザーに対して有効にする前に、必ず Sandbox で徹底的にテストしてください。フローが間違ったレコードを自動的に削除し始めたら困ります。

また、レコードは通常何らかの理由があって存在しているということを忘れないでください。その理由が、何らかの問題が発生した証拠というだけの場合もあります。原則として、最初から存在すべきでなかったレコードで、今後のレコードや調査にそのレコードの存在が不要である場合を除き、レコードを削除することは避けます。

[レコードを削除] 要素は [レコードを作成] 要素と [レコードを更新] レコードに似ています。[レコードを削除] 要素では、条件 (3)、オブジェクト (4)、検索条件 (5) を設定します。次に例を示します。

前述の説明に対応する [新規のレコードの削除] ウィンドウ。

それだけではありません。レコードを操作する要素がもう 1 つあります。次の単元では、その要素や他の要素でどのように変数が使用されるかを見ていきましょう。

リソース

無料で学習を続けましょう!
続けるにはアカウントにサインアップしてください。
サインアップすると次のような機能が利用できるようになります。
  • 各自のキャリア目標に合わせてパーソナライズされたおすすめが表示される
  • ハンズオン Challenge やテストでスキルを練習できる
  • 進捗状況を追跡して上司と共有できる
  • メンターやキャリアチャンスと繋がることができる