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

キャンペーンレコードを一括削除すると、「Cascade deleting too many records (カスケード削除するレコード数が多すぎます)」というエラーが発生する

公開日: Oct 13, 2022
説明
※この記事は英語版を翻訳しており、一部機械翻訳を含むため内容は後日更新される可能性があります。最新の内容は英語版を参照してください。表示言語は画面右下の言語名から切り替えられます。


キャンペーンレコードが削除されると、子のキャンペーンメンバーレコードもカスケード削除によって削除されます。キャンペーンメンバーオブジェクトが別のオブジェクトとの主従関係の主側として設定されている場合、カスケード削除はその子 (または従) オブジェクトにも引き継がれます。キャンペーンとキャンペーンメンバーオブジェクトのリレーションの場合、これらの従オブジェクトには取引先責任者とリードが含まれます。 

カスケード削除でキャンペーンメンバー、取引先責任者、リード、またはその他のカスタムの従オブジェクトのレコードが多すぎる場合、データローダーは次のエラーメッセージを返す場合があります。 
 
「カスケード削除するレコード数が多すぎます: キャンペーンメンバーレコードへのカスケード時に発生」
解決策
警告
データ操作を実行する前にデータのバックアップを必ず実行してください。詳細は、「Salesforce からバックアップデータをエクスポートする」または「データのエクスポート」を参照してください。少ないレコード数のサブセットでテストを実行し、Salesforce 内の対応するレコードを手動で開き、レコードが正しいことを確認して、操作が正常に終了したことを確認することをお勧めします。


解決策 1:データローダーのバッチサイズを 1 に下げる

この場合の望ましい解決策は、データローダーの設定でバッチサイズをできるだけ小さく、できれば 1 に下げることです。これにより、データローダーは一度に 1 つの親レコードとその関連する子を削除できるようになります。 
 
  1. データローダーを開きます。
  2. [設定] | [設定] を選択します。
  3. バッチサイズを 1 に変更します。
  4. 保存します。
  5. キャンペーンの一括削除を再度実行します。

削除された親に関連付けられた子レコードの数が非常に多い場合、バッチ サイズを 1 に設定してもエラーが発生することがあります。 



解決策 2:最初にキャンペーンメンバーを削除する

キャンペーンメンバーをキャンペーンから削除します。これにより、キャンペーンを削除するときにデータローダーがキャンペーンメンバーおよびその他の関連オブジェクトをカスケード削除する必要がなくなります。
 
  1. キャンペーン ID とキャンペーンメンバー ID を含むキャンペーンレポートを実行し、削除するキャンペーンに関連付けられたキャンペーンメンバーのみを表示するようにレポートを絞り込みます。
  2. レポートを CSV ファイルとしてエクスポートします。
  3. データローダーを起動 | [削除] | [Show all Salesforce objects (Salesforce のすべてのオブジェクトを表示)] チェックボックスをオン | [キャンペーンメンバー] をクリックします。
  4. エクスポートしたレポートを使用し、ID をメンバー ID にマップします。
  5. 完了したら、もう一度キャンペーンの一括削除を実行します。


関連情報:
データローダーのダウンロードと有効化
 
ナレッジ記事番号

000382550

 
読み込み中
Salesforce Help | Article