Skip to main content
From 16:00 UTC on January 17, 2026, to 20:00 UTC on January 17, 2026, we will perform planned maintenance on the Trailhead, myTrailhead, and Trailblazer Community sites. During the maintenance, these sites will be unavailable, and users won't be able to access them. Please plan your activities around this required maintenance.

画面フローとページコンポーネントの確認

学習の目的

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

  • 画面フローの設計に役立つ重要な決定を行う。
  • 契約にリベート種別を適用する画面フローを設計する。
  • リベートのパネルコンポーネントとタブコンポーネントを標準オブジェクトのページレイアウトに追加する。

インセンティブを表示する

Cindy は Salesforce フローなどのコード不要のツールを使用して、対象リベートを選択すると実行されるビジネスプロセスを作成することができます。Vance が契約で対象リベートを選択すると、Cindy が作成した画面フローがトリガーされます。Cindy はより複雑なシナリオの画面フローロジックを拡張するために API をトリガーすることもできます。今回は Flow Builder でフローを作成することにしました。

Cindy は次の要件を念頭に置いて画面フローを設計しました。

  • 画面フローは、プログラムリベート種別パネルカードの [対象] タブから選択された複数のリベート種別を処理する必要がある。
  • [プログラムリベート種別を追加] をクリックすると、ユーザーは新しいリベートプログラムを作成するよう促される。ユーザーにプログラムの名前と支払頻度を入力し、それを確認するよう求める必要がある。
  • 新しいリベートプログラムは、契約の取引先をメンバーとして作成され、選択したリベート種別にそのすべての属性が含まれる。
  • 必要であれば、Cindy は契約が有効になるとすぐに関連付けられた新しいリベートプログラムも有効になるようにすることもできる。

フローの内容

メモ

このモジュールでは、画面フローを設定する手順については詳しく説明しません。こちらのリンクを使用して組織にサンプル画面フローをダウンロードし、要件に従って調整することができます。このバッジでは、自由形式に設定されたフローの例を示しています。

Cindy はビジネス要件に従って画面フローを設計する必要がありました。ただし、フローに追加した特定の要素に関係なく、彼女が決めなければならない設定がいくつかありました。

  1. 2 つの入力変数を定義します。
    • 彼女は対象リベート種別を保存する変数を次のように定義しました。
      • データ型: レコード
      • オブジェクト: プログラムリベート種別
      • フロー外部での可用性: 入力で使用可能
      • [複数の値を許可 (コレクション)] チェックボックスをオンにする
        対象リベート種別を保存するコレクション変数を作成します。
    • 彼女は対象契約レコードを保存する変数を次のように定義しました。
      • データ型: レコード
      • オブジェクト: 契約
      • フロー外部での可用性: 入力で使用可能
      • [複数の値を許可 (コレクション)] チェックボックスをオフにする
        対象オブジェクトレコードを保存する単一レコード変数を作成します。
  1. リベートプログラムを作成する方法を決定し、リベート種別を適用します。
    • リベートプログラムを作成します。
      • 契約の取引先は、選択したリベート種別を使用して既存のリベートプログラムに追加できる。報奨金がどのメンバーに対しても同じである場合、これが最善のオプションです。
      • 契約の取引先は、選択したリベート種別のすべての属性をディープコピーする新しいリベートプログラムに追加できる。報奨金が取引先によって異なり、取引先ごとに交渉が行われる場合は、これが最善のオプションです。
    • リベート種別をプログラムに関連付けます。
      • 次のステップで説明するように参照レコードを作成して、選択したリベート種別を契約に直接適用します。
      • 選択したリベート種別をコピーし、契約に適用します。新しいプログラムを作成する場合は、リベート種別と関連オブジェクトをコピーします。次に、新しくコピーしたリベート種別をコピーしたプログラムに追加します。
        新しいリベートプログラムを作成し、選択したリベート種別をそれに追加するサブフローを追加します。
  1. リベート種別と契約参照を保存するプログラムリベート種別参照レコードを作成します。次の入力を指定します。
    • 参照オブジェクトは、現在のオブジェクトである契約。
    • プログラムリベート種別は、選択またはコピーしたリベート種別 ID。
    • プログラムリベート種別ソースは、コピーされた標準リベートプログラムから選択した統合可リベート種別 ID。
      プログラムリベート種別参照レコードを保存するレコードを作成します。
  1. 契約の取引先をリベートプログラムの有効メンバーとして追加します。
  2. 必要に応じて、契約レコードにリベートプログラムを入力します。Cindy はリベートプログラム参照用のカスタム項目をすでに契約に作成してあります。これは契約とそのリベートプログラムとの関連付けを維持するのに役立ちます。
    対象レコードにリベートプログラムを入力する [レコードを更新] 要素を作成します。
  3. 必要に応じて、契約と併せてリベートプログラムの承認を管理します。

Cindy は契約の画面フローに次のコンポーネントを追加しました。一部は必須ですが、それ以外はユースケースに特化したものです。システム管理者は画面フローに検証を追加して、ユーザーが選択したリベート種別を参照レコードに追加したときに失敗または成功のメッセージが表示されるようにすることもできます。

対象リベート種別を契約に追加し、リベート種別を使用して新しいプログラムを作成するのに役立つ要素で構成されたサンプル画面フロー。

コンポーネント

リソース種別

必須

目的

契約のレコードを取得

[レコードを取得] 要素

はい

契約の次の項目を選択し、値をまとめてレコード変数に保存する。

  • ID
  • 契約番号
  • 取引先 ID
  • 作成日

メンバーのレコードを取得

[レコードを取得] 要素

はい

メンバーの次の項目を選択すると、すべての項目が自動的に保存される。レコードを次で絞り込む。

  • リベートプログラム ID
  • 取引先 ID

選択したリベート種別を取得

[レコードを取得] 要素

はい

リベート種別の ID でレコードを絞り込む。ID はレコードコレクション変数 {!SelectedRebateTypes} を使用するループ要素を使用して取得できる。

メンバーのレコードを作成

[レコードを作成] 要素

いいえ

画面フローで新しいリベートプログラムを作成できる場合は、この要素を使用して取引先 ID とリベートプログラム ID を抽出し、新しいメンバーレコードを作成する。

リベート種別のレコードを作成

[レコードを作成] 要素

いいえ

画面フローでリベートプログラムを作成できる場合は、この要素を使用して選択した対象リベート種別をコピーして新しいリベートプログラムを作成する。

参照レコードを作成

[レコードを作成] 要素

はい

次の入力を使用して、プログラムリベート種別参照レコードを作成する。

  • 参照オブジェクトは、現在のオブジェクトである契約。
  • プログラムリベート種別は、選択またはコピーしたリベート種別 ID。
  • プログラムリベート種別ソースは、選択した統合可リベート種別 ID。

選択したリベート種別を追加

画面要素

はい

この画面フローでは、ユーザーが選択したレコードに対象リベート種別を追加するときに、確認のポップアップがどのように表示されるか、そしてユーザーが何を確認するかを定義する。

リベートプログラムを取得

画面要素

いいえ

ユーザーが新しいプログラムの属性を定義できるようにする、または既存のプログラムをコピーできるようにする場合、この要素でその画面がどのように表示されるかを定義する。

リベートプログラムは作成されていますか?

決定要素

いいえ

ユーザーが既存のリベートプログラムを選択すると、その値が渡される。

ユーザーの選択からプログラムを取得

決定要素

いいえ

ユーザーがリベートプログラムを作成すると属性値が渡される。

メンバーは存在しますか?

決定要素

はい

契約の取引先がすでにリベートプログラムに登録されている場合、その情報がプログラムリベート種別パネルカードの [適用済み] タブに渡される。

リベートプログラムを設定

割り当て要素

いいえ

決定要素のいずれにおいても、参照契約レコードを既存またはコピーしたリベートプログラムに関連付けるのにこの割り当てが役立つ。

プログラムを作成

サブフロー

はい

このサブフローは、既存のリベートプログラムをコピーするのか、新しいリベートプログラムを作成するのかに応じて、必要なすべての属性使用してプログラムレコードを作成する。

報奨金と検索条件を作成

サブフロー

いいえ

選択したリベート種別がリベートプログラムに追加されると、関連する報奨金と対象資格基準もコピーされる。

Cindy は設定のリストにある 2 番目の要件に完了のチェックを付けました。また、要求に応じて異なるロジックを使用して注文でも同様のフローを作成しました。 

あと残っているのは、ユーザーがインセンティブを表示して適用できるようにするコンポーネントを契約と注文のページレイアウトに追加することです。

コンポーネントのドラッグアンドドロップ

Cindy が 2 つのコンポーネントを契約と注文のページレイアウトにどのように追加したかを見てみましょう。

  1. 対象オブジェクトレコードの詳細ページを開きます。Cindy は Meridian Partners の契約レコードを開きました。
  2. [設定] をクリックして、[編集ページ] を選択します。
  3. [プログラムリベート種別パネル] コンポーネントを、ページ上のコンポーネントを表示する場所にドラッグします。
  4. [フロー] 項目で値を選択します。Cindy は [Rebates for Contracts (契約のリベート)] を選択しました。
  5. [対象プログラムリベート種別変数] で値を選択します。この変数は、画面フローで定義したプログラムリベート種別オブジェクトのレコードコレクション変数にする必要があります。Cindy は [SelectedRebateTypes] を選択します。
  6. [レコード変数] の値を選択します。この変数は、画面フローで定義した対象オブジェクトのレコード変数にする必要があります。Cindy は [CurrentRecord] を選択します。
  7. [プログラムリベート種別タブ] コンポーネントを、ページ上のコンポーネントを表示する場所にドラッグします。
  8. 作業を保存し、[有効化] をクリックします。
    Lightning アプリケーションビルダーに表示されたリベート種別の 2 つの Lightning コンポーネント。
  9. 組織のデフォルトとして割り当てます。
  10. 次の詳細を使用して、注文ページレイアウトでステップ 1 ~ 9 を繰り返します。

    オブジェクトページレイアウト

    フロー

    対象プログラムリベート種別変数

    レコード変数

    注文

    Rebates on Orders (注文のリベート)

    SelectedRebateTypes

    CurrentRecord

これで最後の 3 つ目の設定が完了しました。 

まとめ

ここまで多くのことを学んできました。まず最初に、セールスプロセスがつながっていないために Rayler Parts が抱えているビジネス上の課題を確認しました。

次に、セールスプロセス内でインセンティブがシームレスに統合されていれば、プログラムマネージャー、取引先マネージャー、業務マネージャーにどのようなメリットがあるかを確認しました。契約のコンテキスト内でインセンティブ条件を直接調整する方法を説明しました。注文時に分析用のリベート情報があり、パートナーがより高額な報奨金と支払を得られる方法を明確に把握することができました。

最後に、このプロセスの作成に使用された設定を調べました。セールスプロセスを強化するために、Cindy がこのエクスペリエンスをどのように作成したかを説明しました。 

このモジュールでは Cindy、Vance、Rishi が辿った道を一緒に見てきました。次は皆さんが リベート管理で新しい道を切り開いてください。

リソース

Salesforce ヘルプで Trailhead のフィードバックを共有してください。

Trailhead についての感想をお聞かせください。[Salesforce ヘルプ] サイトから新しいフィードバックフォームにいつでもアクセスできるようになりました。

詳細はこちら フィードバックの共有に進む