【Salesforce】Visual Studio Code 開発者コンソールの Open Execute Anonymous Windowの代わり

Salesforce

開発やテスト時、Apexクラスを作るまでではないんだけど、ちょっとだけApexコードを実行したいことってありますよね。例えば~特定のデータを一括で消したい時とか。DataloaderだとExportしてdeleteして~で手間が多いですが、Apexコードだと下記みたいなコードを書くだけで消せちゃう。

List<Account> accList = [SELECT Id FROM Account WHERE Kubun__c = ‘テスト’];
delete accList;

大量件数だとガバナ的に処理しきれないのでDataloaderでやる必要ありですが、数百件程度のデータであればこっちのがパフォーマンスが良い。

そんな時は開発者コンソールの Open Execute Anonymous Window でちょちょっとやってしまうのが常なのですが、開発エディタをVSCodeに乗り換えた場合それができるのか?いちいち開発者コンソールを開かないといけないのか?

匿名Apexの実行

コマンドパレットを探したらありました。
SFDX: エディタのコンテンツを使用して匿名Apexを実行

現在アクティブになっているエディタのApexコードを実行してくれるみたいなので、新規ファイルに適当にApexコードを書いて実行してみる。

実行結果というか、ログが出力コンソールに吐かれる。

エラー時の挙動

あえてエラーを起こすとどうなるか?

開発者コンソールの場合、コンパイルできなかったり実行時エラーが発生するとこんな感じでポップアップが表示されるが

VSCodeの場合、まず失敗したことが右下に通知される。詳細は出力コンソールに吐かれる。

匿名Apexコードの再利用

最後に、例えばこのファイルをプロジェクトのどっか(ローカル)に保存しておけば再利用がしやすい。全く同じコードを使いたい時も、少し手直しして使いたい時も、1から書き直すより早い。分かりやすいファイル名で保存しとけば使い勝手も良い。

ちなみに標準テンプレートでプロジェクトを作成するとscript/apexフォルダが予め用意されているので、そこに保存しておくのもありかな。

関連

【Salesforce】開発者コンソールからVSCodeに乗り換え 良い点・悪い点

コメント

タイトルとURLをコピーしました