Loading
Salesforce から送信されるメールは、承認済ドメインからのみとなります続きを読む

ODataService での「An error occurred while connecting to the external system (外部システムへの接続中にエラーが発生しました)」

公開日: Oct 13, 2022
説明
外部データソースで検索を有効にしている一部の顧客には、次のエラーが発生する場合があります。

'ODataService:An error occurred while connecting to the external system.Please try again, or contact your administrator about this error.Attempted to reach this URL: https://mycompany.com/ExternalService/vwExternalObject1' (外部システムへの接続中にエラーが発生しました。後でもう一度お試しいただくか、このエラーについてシステム管理者にお問い合わせください。アクセス試行先 URL: https://mycompany.com/ExternalService/vwExternalObject1)

または、グローバル検索を通じて外部オブジェクトに関連付けられたレコードを検索しようとする場合にも同様です。

入手可能な外部データソースがあり、外部オブジェクトがすでに作成されている前提で、この問題を再現する一般的な手順は次のようになります。
  1. Classic の場合は [設定] | [ビルド] | [開発] | [外部データソース] に移動し、LEX の場合は [設定] | [データ] | [外部データソース] に移動して、外部データソースの検索を有効にします。次に [編集] をクリックし、[パラメータ] で [検索の有効化] にチェックを付けて保存します。
  2. 検索を使用して外部オブジェクトレコードを検索します。
  3. 前述のエラーが発生する前に、次が表示されます。
Searching vwExternalObject1...
Searching vwExternalObject2...
Searching vwExternalObject3..

[注意 : vwExternalObject1、vwExternalObject2... は外部オブジェクトの名前です]



 
解決策
  • Salesforce では、外部オブジェクトに対してローカルに行われるインデックス付けはありません。外部オブジェクトはすべて外部システムに保存されるため、その外部システムの検索機能に依存します。 
  • データソースに対して検索が有効になっている場合、Salesforce は単にそのデータソースが基になっている各外部オブジェクトのエンドポイントにコールアウトを行い、データソースによって返された結果を表示します。前述のステップ 1 で説明したチェックボックスは、検索結果を見つけるために Salesforce がコールアウトを行うかどうかを制御します。
  • [外部データソース] の [検索の有効化] をクリックすると、外部データの SOSL と Salesforce グローバル検索が有効になります。検索可能な外部オブジェクトを制御するには、各外部オブジェクトで [検索を許可] を選択または選択解除します。
  • 今後のリリース (セーフハーバー) で特定の問題が外部システム側で発生する可能性をより明確にするための取り組みが現在行われています。それまでは、一般的な作業ルールとして、エラーメッセージに「アクセス試行先 URL」、エンドポイントまたは URL に関する何らかの要素、HTTP エラーコードのようなものが含まれている場合、外部システムの問題であると仮定できます。
  • 具体的には、「受信されたエラー: 500」が表示される場合は、外部システムからの HTTP コードエラーです。 OData の場合は通常、OData 仕様に従っていない外部システム、リダイレクトにより要求に問題を引き起こすゲートウェイの問題、特に検索の場合は標準ではないため設定されていないことなどが関係します。
  • ここでの回避策は、[検索の有効化] のチェックを外し、外部データソース設定の検索を無効にすることです。
  • 前述の理由から、現時点で Salesforce は外部オブジェクトのインデックス付けを無効にできないことに注意してください。
ナレッジ記事番号

000387806

 
読み込み中
Salesforce Help | Article