function readOnly(count){ }
Don't have an account?
Search for an answer or ask a question of the zone or Customer Support.
You need to sign in to do that
Sign in to start searching questions
Signup for a Developer Edition
Sign in to start a discussion
私のDeveloperEdiotionで作成したカスタムオブジェクトデータを
友人のDeveloperEditionの環境へインポートしようと思うのですが、
実際やってみるとSalesforceIDが「invalid」と叱られてしまいます。
そもそも、そのような事は不可能なのでしょうか?
>SalesforceIDは、各環境で接頭部分のコードが違うので、>そのままのcsvファイルを使ってもエラーになってしまうのか仰る通りinsert時にIdに値を入力しようとしてもエラーになるのでマッピング時に除外する必要があります。しかし単にそれだけでデータをインポートすると、主オブジェクトのIdがKeronさんの環境とご友人の環境で変わってしまい、従オブジェクトを作成するときに主従項目に入力する主Idが不整合となってしまいます。その問題を回避するのが MFuru さんの言う方法で、詳細な手順は下記のようになるかと思います。1. 友人環境の主従関係の主側カスタムオブジェクトに「旧Id」などという名前を付けたテキスト(外部ID)項目を作成する。2. 主オブジェクトを友人環境へinsertする。 その際、 ・exportした「Id」項目の値を「旧Id」項目へマッピングし、「Id」項目へはなにもマッピングしない。3. 従オブジェクトを友人環境へupsertする。 その際、 ・「Step 2b:Choose your related objects」で「旧Id」項目を指定する。 ・項目のマッピング時に「主従項目」を「主オブジェクト:旧Id」にマッピングする。4. 不要となった「旧Id」項目を削除する。
インポートは可能です。どのような方法でインポートしてますか?
もし使ってなければ、DataLoderを使ってみてはいかがでしょうか?
M.Furuさま、回答ありがとうございます。
当方、DataLoaderを使用しました。
手順としては、
1)私の環境で、主従関係のあるカスタムオブジェクト(主)とカスタムオブジェクト(従)を
DataLoaderにてExportを実施。
2)友人の環境で主従関係のカスタムオブジェクトを作成。但しデータは0件の状態。
3)友人の環境で、まずは、1)で出力したカスタムオブジェクト(主)側のcsvファイルを使用し、
DataLoaderにてInsertを実施。
4)全件がErrorとなり、Errorメッセージを見ると、salesforceIDが気に入らない旨が表示。
確かに、SalesforceIDは、各環境で接頭部分のコードが違うので、そのままのcsvファイルを
使ってもエラーになってしまうのか、csvファイル内のSalesforceIDの値を何か細工してあげないと
Insertできないのかどうかで、頭を悩ませております。
もし、回避策をご存知の方がいらっしゃいましたら、ご教授頂きたいと思います。
宜しくお願い致します。
エラーは参照関係の項目で出力されているということで良いですか?
その場合は、参照しているオブジェクトに外部ID項目を作って、レコードをインサートし、
InsertではなくUpsertを使って、外部IDを紐付けることで移行することができます。
M.Furuさま
早速の回答ありがとうございます。
外部ID項目を作る必要があるのは、
1)私の環境の主従関係の主側カスタムオブジェクト
2)友人の環境の主従関係の主側カスタムオブジェクト
の双方に作成してから、DataloaderによりExportをやり直して、
移行する時にInsertではなく、外部ID項目紐付きでのUpsertを
実施すれば良いということでしょうか?
以上、宜しくお願い致します。
minoawさま
とてもわかりやすく回答下さりありがとうございます。
手順通りやってみます。
ありがとうございました。
minoaw様
ご教授頂いたとおりやってみました。
無事移行が完了しました。
ご親切にありがとうございました。
>SalesforceIDは、各環境で接頭部分のコードが違うので、
>そのままのcsvファイルを使ってもエラーになってしまうのか
仰る通りinsert時にIdに値を入力しようとしてもエラーになるので
マッピング時に除外する必要があります。
しかし単にそれだけでデータをインポートすると、
主オブジェクトのIdがKeronさんの環境とご友人の環境で変わってしまい、
従オブジェクトを作成するときに主従項目に入力する主Idが不整合となってしまいます。
その問題を回避するのが MFuru さんの言う方法で、
詳細な手順は下記のようになるかと思います。
1. 友人環境の主従関係の主側カスタムオブジェクトに「旧Id」などという名前を付けたテキスト(外部ID)項目を作成する。
2. 主オブジェクトを友人環境へinsertする。
その際、
・exportした「Id」項目の値を「旧Id」項目へマッピングし、「Id」項目へはなにもマッピングしない。
3. 従オブジェクトを友人環境へupsertする。
その際、
・「Step 2b:Choose your related objects」で「旧Id」項目を指定する。
・項目のマッピング時に「主従項目」を「主オブジェクト:旧Id」にマッピングする。
4. 不要となった「旧Id」項目を削除する。
All Answers
インポートは可能です。どのような方法でインポートしてますか?
もし使ってなければ、DataLoderを使ってみてはいかがでしょうか?
M.Furuさま、回答ありがとうございます。
当方、DataLoaderを使用しました。
手順としては、
1)私の環境で、主従関係のあるカスタムオブジェクト(主)とカスタムオブジェクト(従)を
DataLoaderにてExportを実施。
2)友人の環境で主従関係のカスタムオブジェクトを作成。但しデータは0件の状態。
3)友人の環境で、まずは、1)で出力したカスタムオブジェクト(主)側のcsvファイルを使用し、
DataLoaderにてInsertを実施。
4)全件がErrorとなり、Errorメッセージを見ると、salesforceIDが気に入らない旨が表示。
確かに、SalesforceIDは、各環境で接頭部分のコードが違うので、そのままのcsvファイルを
使ってもエラーになってしまうのか、csvファイル内のSalesforceIDの値を何か細工してあげないと
Insertできないのかどうかで、頭を悩ませております。
もし、回避策をご存知の方がいらっしゃいましたら、ご教授頂きたいと思います。
宜しくお願い致します。
エラーは参照関係の項目で出力されているということで良いですか?
その場合は、参照しているオブジェクトに外部ID項目を作って、レコードをインサートし、
InsertではなくUpsertを使って、外部IDを紐付けることで移行することができます。
M.Furuさま
早速の回答ありがとうございます。
外部ID項目を作る必要があるのは、
1)私の環境の主従関係の主側カスタムオブジェクト
2)友人の環境の主従関係の主側カスタムオブジェクト
の双方に作成してから、DataloaderによりExportをやり直して、
移行する時にInsertではなく、外部ID項目紐付きでのUpsertを
実施すれば良いということでしょうか?
以上、宜しくお願い致します。
>SalesforceIDは、各環境で接頭部分のコードが違うので、
>そのままのcsvファイルを使ってもエラーになってしまうのか
仰る通りinsert時にIdに値を入力しようとしてもエラーになるので
マッピング時に除外する必要があります。
しかし単にそれだけでデータをインポートすると、
主オブジェクトのIdがKeronさんの環境とご友人の環境で変わってしまい、
従オブジェクトを作成するときに主従項目に入力する主Idが不整合となってしまいます。
その問題を回避するのが MFuru さんの言う方法で、
詳細な手順は下記のようになるかと思います。
1. 友人環境の主従関係の主側カスタムオブジェクトに「旧Id」などという名前を付けたテキスト(外部ID)項目を作成する。
2. 主オブジェクトを友人環境へinsertする。
その際、
・exportした「Id」項目の値を「旧Id」項目へマッピングし、「Id」項目へはなにもマッピングしない。
3. 従オブジェクトを友人環境へupsertする。
その際、
・「Step 2b:Choose your related objects」で「旧Id」項目を指定する。
・項目のマッピング時に「主従項目」を「主オブジェクト:旧Id」にマッピングする。
4. 不要となった「旧Id」項目を削除する。
minoawさま
とてもわかりやすく回答下さりありがとうございます。
手順通りやってみます。
ありがとうございました。
minoaw様
ご教授頂いたとおりやってみました。
無事移行が完了しました。
ご親切にありがとうございました。