【Salesforce】割り当てルールの管理画面で確認したい設定項目

【Salesforce】割り当てルールの管理画面で確認したい設定項目
🛡️ 超解決

Salesforceでリードやケースを自動で適切な担当者に振り分ける「割り当てルール」は、営業やサポート業務の効率化に欠かせない機能です。しかし、いざルールを設定したものの「想定通りに割り当てが行われない」「特定のユーザーにだけ割り当たらない」「ルールがまったく動作しない」といったトラブルに遭遇した経験はないでしょうか。このような問題は、多くの場合、割り当てルールの設定そのものだけでなく、有効化の状態や組織の権限設定、オブジェクトごとのルール条件など、複数の要素が絡み合っています。本記事では、管理画面で確認すべきポイントを具体的な手順とともに整理し、原因を切り分けて次のアクションを判断できるように解説します。

【要点】この記事で確認すること

  • 最初に見る場所: Salesforceの設定メニューにある「割り当てルール」画面。ルールが有効か、ルールエントリが正しく並んでいるかを確認します。
  • 切り分けの軸: ルールの有効/無効、ルールエントリの優先順位、オブジェクト(リード・ケース)ごとの設定、ユーザーの参照権限と所有権限、ワークフロールールやApexトリガとの競合。
  • 注意点: 割り当てルールは有効化後に作成・更新したレコードにのみ適用されます。過去のレコードには再適用されません。また、ルールの評価順序やエントリ条件のミスを見落としやすいため、設定値の再確認が重要です。

ADVERTISEMENT

割り当てルールが動作しない原因を切り分けるための基本確認

まず、割り当てルールが意図通りに動作しない場合の原因を体系的に切り分ける方法を説明します。管理画面での確認は、以下の3つのレイヤーに分けて行うと効率的です。

1. ルール本体の状態: 割り当てルールが有効になっているか、ルールエントリが適切な順序で並んでいるか。

2. オブジェクトとユーザー権限: 割り当ての対象となるオブジェクト(リード、ケースなど)の設定や、割り当て先ユーザーにレコードの所有権限があるか。

3. その他の自動化との競合: ワークフロールール、フロー、Apexトリガなどが割り当てルールより先に実行され、レコードの所有者を変更していないか。

管理画面でルールの有効状態を確認する手順

  1. 画面右上の歯車アイコンをクリックし、「設定」を選択します。
  2. 「設定」画面で左側の検索ボックスに「割り当てルール」と入力し、「割り当てルール」をクリックします(表示言語が英語の場合は「Assignment Rules」)。
  3. 「リード割り当てルール」または「ケース割り当てルール」のタブを選択します。ここで一覧に表示されるルール名の左に緑色のチェックマークが付いていれば有効、灰色なら無効です。
  4. ルール名をクリックして詳細を開き、「ルールエントリ」のセクションで各エントリの「評価順序」と「条件」を確認します。エントリの順序は上から順に評価されるため、優先したい条件を上位に配置する必要があります。
  5. エントリの条件が正しいか、割り当て先ユーザーやキューが存在しているかを確認します。

よくある設定ミスと失敗パターン

実際の現場でよく発生する失敗パターンをいくつか挙げ、それぞれの確認ポイントを解説します。

ルールが有効だがエントリが1つもない

ルールを有効にしても、ルールエントリが1つも設定されていないと、割り当ては行われません(全てのレコードがデフォルトのキューまたは未割り当てのままになります)。管理画面でルールエントリが存在するか、また各エントリに「割り当て先」が設定されているかを必ず確認してください。

エントリの優先順位が想定と逆

ルールエントリは上から順に評価され、最初に条件に一致したエントリが適用されます。そのため、具体的な条件(例:顧客業種が「製造業」)を後回しにし、より緩い条件(例:地域が「東京」)を先に設定すると、想定とは異なるユーザーに割り当てられることがあります。エントリの評価順序をドラッグ&ドロップで並べ替えられるので、条件の範囲が狭いものから順に並べるのが基本です。

割り当て先ユーザーが無効または権限不足

ルールエントリで指定したユーザーやキューが、割り当て対象のオブジェクトに対して「所有権限」を持っていない場合、割り当てに失敗します。特に、システム管理者以外のユーザーに割り当てる場合は、そのユーザーのプロファイルまたは権限セットで「リードの所有権の割り当て」または「ケースの所有権の割り当て」の権限が有効になっている必要があります。また、ユーザーが無効化(非アクティブ)になっていないかも確認してください。

管理者権限での詳細確認手順

より詳細な原因を特定するために、管理者は以下の手順で設定を検証できます。

割り当てルールの実行順序とデバッグログ

割り当てルールがどのタイミングで実行されるかを理解しておくことが重要です。リードやケースの作成時、または所有者更新のトリガとなる更新が行われた際にルールが評価されます。ルールが実行されない場合、以下の点を確認します。

  1. 「設定」→「割り当てルール」で該当ルールの「有効」チェックボックスがオンになっているか。
  2. ルールエントリの条件に、レコードの項目値が正しくマッチしているか。例えば、条件で指定した値に誤字やスペースの違いがないか。
  3. 「デバッグログ」を有効にして、レコード作成時のルール評価ログを取得し、エントリがどのように評価されたかを確認する。設定→「デバッグログ」→「新規」から対象ユーザーを選択し、トレースフラグを設定します。その後、テスト用のレコードを作成し、ログを確認します。ログ内で「AssignmentRule」関連の行を検索すると、適用されたルールエントリや理由が記録されています。

キューとユーザーの所有権限を確認する

割り当て先にキューを指定する場合、キューに割り当てられたユーザーがキュー経由でレコードを所有できるよう、キューに「キュー所有者」として適切なユーザーが設定されている必要があります。キュー設定は「設定」→「キュー」から確認できます。また、個人所有(ユーザー)に割り当てる場合は、そのユーザーが同じオブジェクトのレコードを所有できるプロファイル権限を持っているか確認します。特に「参照他ユーザーからの割り当て」や「所有権の割り当て」といった権限が不足していると、割り当てに失敗します。

ルールの評価条件と他の自動化との競合をチェックする

割り当てルールは、レコード保存前に実行される「保存前トリガ」や「ワークフロールール」とは異なるタイミングで動作します。そのため、以下のような自動化機能が割り当てルールを上書きすることがあります。

自動化機能 実行タイミング 割り当てルールとの関係
ワークフロールール(項目自動更新) レコード保存後(割り当てルールの前に実行) 項目自動更新でオーナー項目を変更することが可能。割り当てルールが設定しても、その後にワークフロールールがオーナーを上書きする可能性がある。
Apexトリガ(before insert, after insert) レコード保存前・保存後 beforeトリガでオーナー項目を変更すると、割り当てルールはその変更後に評価される。afterトリガでオーナーを再度変更することも可能。
フロー(レコードトリガーフロー) 保存後(非同期の場合もある) フローがオーナーを更新する場合、割り当てルールの結果を上書きする。フローの実行順序に注意。

競合を確認するには、該当のオブジェクトに対して有効なワークフロールールやフローを一覧表示し、オーナー項目(OwnerId)を更新するルールがないか調べます。また、Apexクラスでトリガが実装されている場合は、そのコード内でOwnerIdを更新していないか確認します。

よくある質問とその回答

Q1: 割り当てルールが有効なのに、リードが誰にも割り当てられずに未割り当てのままになるのはなぜ?

考えられる原因として、ルールエントリが1つも設定されていない、または全てのエントリの条件が一致しない場合があります。また、デフォルトのキューや「未割り当て」という設定になっている可能性もあります。ルールエントリの最後に「条件なし(常に一致)」のエントリを追加し、特定のキューやユーザーに割り当てるようにすると、必ず割り当てが行われます。

Q2: 過去に作成されたリードに割り当てルールを再適用したいのですが、どうすればいいですか?

割り当てルールは新規作成時または所有者更新時のみ動作するため、既存レコードには再適用されません。既存のリードにルールを適用するには、データローダなどを使用して所有者項目を更新(例えば一度別のユーザーに変更して戻す)トリガするか、一括更新用のApexバッチを実装する必要があります。

Q3: 割り当てルールのエントリで指定したキューが表示されません。

キューが正しく作成されていない可能性があります。「設定」→「キュー」で対象のキューが存在し、サポート対象のオブジェクト(リードやケース)がそのキューに関連付けられているか確認します。また、キューにメンバー(ユーザー)が含まれていることも必要です。

まとめ

本記事では、Salesforceの割り当てルールでトラブルが発生した際に管理画面で確認すべきポイントを解説しました。まずはルールが有効か、ルールエントリの条件と順序が妥当かを確認し、次に割り当て先のユーザーやキューに権限が正しく設定されているかを検証します。さらに、他の自動化機能との競合がないかをワークフロールールやフロー、Apexトリガの観点から調べることで、原因を特定しやすくなります。日常的に割り当てルールを運用する際は、テスト用に条件を絞った簡単なエントリを用意し、実際にレコードを作成して動作確認を行うことをお勧めします。


この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。