プログラマ38の日記

主にプログラムメモです。

Salesforce: 自動採番項目をupsertの外部ID(externalIdField)として使う

Salesforceで自動採番項目を外部IDにできるようになりました。

Apex内でupsertのキーとして使用できるようになりましたが、DataLoaderをGUIで使う時はupsertの外部IDとして選ぶことができません。

 

Help | Training | Salesforceの記載には、

データローダは ID 項目、あるいは、外部 ID 項目を API の Describe コマンドの結果より、
作成可能な、または、更新可能な項目を表示します。
しかしながら、自動採番の項目が作成可能、または、更新可能ではないので、データローダには表示されません。
これは、ユーザが潜在的な Insert エラーを実行しないようにするための意図的なものです。

 と書いてます。

 

ですが、DataLoaderのコマンドライン操作では、問題なくupsertの外部IDとして、自動採番項目が使えます。(もちろん、自動採番項目で登録されてない値でupsertするとエラーになります)