LoginSignup
11
9

More than 3 years have passed since last update.

【Salesforce】SOQLツールを使いこなす

Last updated at Posted at 2021-04-05

はじめに

Apex開発を行う際に個人的に1番面倒だと感じる作業が、SOQLへのオブジェクト項目名記述です。
1つ2つなら問題ないのですが、必要項目が多数あった場合に1つ1つコピペするのは骨が折れます。

そこで今回は、開発が非常に捗るSOQL関連のツールを3つご紹介したいと思います。

1. Salesforce DevTools

【できること】

  • 項目名の自動補完、GUIで選択
  • エクスポート(csv)

皆さんご存知のChrome拡張機能です。
オブジェクトの定義書やER図が簡単に作成できるだけでなく、クエリエディターも使用できます。
今回紹介するツールの中では1番シンプルですが、その分お手軽に使用できます。

  1. 拡張機能を起動し、Search Objectsを選択
  2. 対象オブジェクトのラベル名 or API名を入力し、Query Editorを開く
  3. クエリ項目をクリックして選択し、Queryで結果取得・Exportでcsvファイルをダウンロード

image.png

とても簡単にクエリを構築できました。WHERE句の追記も可能なのでこれだけでも十分すぎるほど便利です。
入力フォームからApexへコピペも可能です。

詳しい使い方については、別記事で詳しく紹介されていますのでそちらをご覧下さい。
10倍速SFDC開発者への道: Salesforce DevToolsを使いこなそう!

2. SOQL Builder(Salesforce Extensions for Visual Studio Code ベータ版)

【できること】

  • 項目名の自動補完、GUIで選択
  • エクスポート(csv / json)
  • Apex向けのフォーマット
  • WHERE・ORDER BY・LIMITの指定
  • 集計関数の使用

多少事前準備が必要になりますが、Visual Studio Code内でSOQLを実行できます。
上記インストールの完了後、プロジェクトフォルダ > scripts > soql フォルダに.soql拡張子のファイル(名称は任意)を作成すれば準備完了です。
作成したファイル上で、画面右上のSwitch Between SOQL Builder and Text Editorアイコンをクリックすると、通常のエディタとSOQLビルダー画面を切り替えることが可能です。

image.png

ここではGUIでオブジェクト・項目が選択できるだけでなくWHERE句なども細かく指定できるため、SOQLに不慣れな方でも必要なクエリが発行できます。
またSOQL文を作成した後にもう一度Switch Between~をクリックすると、以下画像の様に整形されたSOQL文がエディタに反映されているため、Apexファイルにそのままコピペ可能です。
画面がイケてて便利なのですが、項目のラベル名が使用できないため、結局別の場所でAPI名を参照する必要があるのでご注意を。

image.png

3.LWC SOQL Builder

【できること】

  • オブジェクト/項目一覧をクリックするだけでSOQLが作れる!
  • サブクエリ、親リレーションもクリックで挿入できる!
  • 項目の入力補完にも対応!
  • オブジェクト/項目はAPI名だけでなくラベルでも検索可能!
  • CSVエクスポートできる!
  • 削除済みレコードも検索できる!
  • 管理パッケージ開発組織ではネームスペースを省略できる!
  • PWAサポート!デスクトップアプリのように動く!
  • SOQLを整形できる!Apexにきれいに貼れる。
  • LWC OSSで作っているのでLWCのサンプルアプリとしても使える。

※上記記事より抜粋

image.png

ただ一言、とにかく便利です。
ラベル名でクエリに追加できるし、自動でフォーマットされるのでそのままApexにコピペできてとても捗ります。
なにより親リレーションはもちろん、子リレーションのサブクエリまでクリックで構築可能。
WHERE句以下は自分で書く必要がありますが、項目の入力補完機能もあるので十分過ぎる機能性です。
面倒な準備も一切不要なので、とにかく一度使ってみて下さい。世界が変わります。

最後に

ご紹介したツールの特徴・使い所をまとめます。

まだ使った事がないツールがあればぜひ導入してみて下さい!

11
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
9