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

公開カレンダー間のイベント転送で「相互参照 ID が無効です」というエラーが発生

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


[OwnerID] 項目は、イベントを公開カレンダーと関連付けるために使用されます。現時点では、データローダ経由で OwnerId を更新しても、イベントをある公開カレンダーから別の公開カレンダーに移動することはできません。

既存のイベントの [OwnerId] を、あるカレンダーから別のカレンダーに更新しようとすると、次のエラーが発生します。
 
「相互参照 ID が無効です」または「INVALID_CROSS_REFERENCE_KEY」

回避策として、既存のイベントをエクスポートし、新しいカレンダーの ID を [OwnerId] に設定することでエクスポートファイルを更新し、イベントを新しいイベントレコードとして再挿入し、元のイベントを削除します。
解決策

 

1.データローダ 45 以降を使用し、[カレンダー] オブジェクトからデータをエクスポートして、公開カレンダーの ID を収集します。


エクスポートクエリの例: SELECT Id,Name FROM Calendar WHERE Type = 'Public' AND IsActive = True  
 

2.データローダを使用して必要なイベントレコードをエクスポートし、ファイルを編集します。
注意: ベストプラクティスとして、元のイベントレコードのバックアップを維持するために、すべての項目を含むエクスポートを少なくとも 1 回実行することをおすすめします。 

 
  1. [エクスポート] ボタンをクリックします。
  2. [イベント] オブジェクトを選択します。
  3. [Choose a target for extraction (抽出の対象を選択)] 項目にファイル名を入力します。ファイル名の末尾には、必ず「.csv」を付けてください。[参照] ボタンをクリックして、エクスポートした csv ファイルの保存先を選択します。
  4. [次へ] ボタンをクリックします。
  5. [すべての項目を選択] ボタンをクリックします。フィルターを使用して、ある公開カレンダーから別の公開カレンダーに移動するイベントレコードのみをダウンロードします。たとえば、[OwnerID] が元の公開カレンダーの ID と等しいという条件でフィルタリングできます。
  6. エクスポートされた csv ファイルを開きます。カレンダー ID (OwnerID) とイベントレコード ID (ID) が 15 桁から 18 桁に変わりました。これは、MS Excel にレコード ID を認識させるための、Salesforce のアルゴリズムです。
  7. [所有者 ID] 列を編集し、元のカレンダー ID から、ステップ 1 で取得した新しいカレンダー ID に変更します。[OwnerId] 列に入力するカレンダー ID は、このイベントをコピーする公開カレンダーを指します。
  8. [別名で保存...] をクリックすると、編集したファイルの新しいバージョンが作成され、オリジナルはバックアップとして保存されます。
                                               

3.編集したファイルを挿入します。
 

  1. データローダから、[挿入] をクリックします。注意: [更新] または [更新/挿入] は機能せず、「相互参照 ID が無効です」というエラーが発生します。
  2. [イベント] オブジェクトを選択します。
  3. csv ファイルの保存場所を参照します。
  4. ファイル名をダブルクリックします。
  5. [次へ] をクリックします。データ選択ウィンドウが表示されます。
  6. [OK] をクリックします。
  7. [対応付けを作成または編集する] ボタンをクリックします。
  8. [項目を列に自動で合わせる] ボタンをクリックします。
  9. [OK] をクリックします。
  10. [次へ] をクリックします。
  11. 成功ファイルとエラーファイルを保存する場所を選択します。
  12. [完了] ボタンをクリックします。

4.新しいイベントレコードが目的の公開カレンダーと関連付けられていることを確認したら、イベントレコードの重複を避けるために、元の公開カレンダーからイベントレコードを削除します。
 
  1. エクスポートしたファイルを編集し、削除するイベントレコードのみが含まれていることを確認します。
  2. データローダで、[削除] ボタンをクリックします。
  3. [イベント] オブジェクトを選択します。
  4. ファイルを参照します。
  5. [次へ] をクリックし、後続のプロンプトに従います。
 
ナレッジ記事番号

000387135

 
読み込み中
Salesforce Help | Article