大量データの登録を行うプログラムのテストを繰り返しているときに、ストレージの容量が少ないと、何度かカスタムオブジェクトのレコードを一括で消したいときがあります。
ついつい忘れちゃうので、メモしておきます。
一括削除にはDataLoaderを使用しますので、インストールしていない場合は、管理コンソールの「管理者設定」→「データの管理」→「データローダ」のページから、ダウンロードしておきましょう。
インストール後、DataLoaderを起動します。
目次
削除対象データの抽出
まず最初に、削除したいレコードのIdを抽出する必要があります。削除にはForceIdを指定するので、それをSalesForceから持ってくるわけです。
下記のような画面が開きますので、「Export All」を選択します。
次に、対象の組織にログインします。左記の画面で、ユーザ名とパスワードを入力してログインしましょう。
すると、SalesFoceのオブジェクトを開く画面がひらきますので、レコードを削除したいオブジェクトを選択して「Next」ボタンを押します。
次の画面の左上で、抽出したいカラムを選択します。削除は、ForceIdをキーに行いますので、「Id」だけを選択すればOKです。
「Finish」ボタンを押すと、抽出ができます。
抽出先に指定したファイルは後ほど使いますので、名前を覚えておきましょう。
左記のようにエラーなしで抽出できましたか?
成功したら、「OK」を押してダイアログを閉じます。
データ削除
それでは、抽出したIdのレコードを一括で削除します。
再度DataLoaderを起動します。
下のような画面が開きますので、今度は「Delete」を選択します。
次の画面で削除対象のオブジェクトを選択し、下のファイル選択ダイアログに先ほど抽出したCSVを指定します。
そして、「Next」を押しましょう。
すると、下のような画面になります。指定したCSVには「Id」というカラムが含まれているということなので、「Create or Edit a Map」を押下して、そのカラム「Id」を、先ほど選択したオブジェクトのどのカラムにマッピングするかを指定します。
この画面で、SalesForceの「Id」というカラムとCSVファイルの「Id」というカラムをマッピングします。
「Auto-Match Fields To Columns」を押すと自動でマッピングされますよ。
最後に、成功またはエラーの結果を吐くファイルを指定して「Finish」を押せば抽出したIdのレコードが 削除されます。
抽出条件を変えれば、狙ったレコードのみを消せますので、便利ですね。