Salesforce 開発での Visual Studio Code の使用

このステップでは、統合ターミナルの使用方法や、新しくインストールした Salesforce Extension Pack など、より高度な機能のいくつかを説明します。

ターミナルか、コマンドパレットか

他の優れた開発ツールと同様に、Visual Studio Code でも複数の方法で操作を行うことができます。Salesforce CLI を操作するには、統合ターミナルとクイックオープンウィンドウという 2 つの主要な方法があります。

クイックオープンウィンドウを表示するには、Command + P キー (Mac) または Ctrl + P キー (Windows) を押します。? と入力すると、ヘルプメニューを表示できます。このモジュールでは、クイックオープンウィンドウをコマンドパレットモードで使用します。これによりコマンドの表示と実行が可能になります。

項目に「?」と入力された、クイックオープンウィンドウの [global commands (グローバルコマンド)] ビュー。

プロジェクトを作成する

  1. Mac で Command + Shift + P キー、Windows または Linux で Ctrl + Shift + P キーを押して、コマンドパレットを表示します。
  2. 新しいプロンプトが次の文字で開始することを確認します: >
  3. 「SFDX:Create Project」と入力し、Enter キーを押して標準テンプレートを選択します。
  4. プロジェクト名に MyComponent と入力して、Enter キーを押します。
  5. 後で見つけやすいように、プロジェクトを作成する場所としてデスクトップを選択します。
  6. 新しい Visual Studio Code ウィンドウが開くまで待ちます。ファイルエクスプローラへの入力前に、拡張機能がプロジェクトの準備をしていることを示すメッセージが表示されます。

拡張機能の通知: Running SFDX: Create Project (「SFDX: プロジェクトを作成」の実行中)。

ファイルを検索する

  1. Mac で Command + P キー、Windows で Ctrl + P キーを押して、検索パレットを表示します。これにより、フォーカスがファイルの検索に移動します。
  2. 項目に project-scratch-def.json と入力します。
  3. 結果をクリックしてファイルを開きます。
  4. Visual Studio Code の左側で、[Find and Replace (検索および置換)] メニューをクリックします。 虫眼鏡
  5. orgName を検索します。
  6. project-scratch-def.json で見つかった最初の結果で、
  7. orgName 値 (: の後で""の間) を Learning VS Code (VS Code の学習) に変更します。
  8. Command + S キー (Mac) または Ctrl + S キー (Windows) を押してファイルを保存します。

新しい組織名が指定された project-scratch-def.json ファイル。

Playground で認証する

  1. Mac で Command + Shift + P キー、Windows または Linux で Ctrl + Shift + P キーを押して、コマンドパレットを表示します。
  2. SFDX: Authorize an Org (SFDX: 組織を承認) と入力します。
  3. デフォルトのログイン URL を受け入れるには、Enter キーを押します。
  4. 別名に VSCodePlayground を入力します。
  5. デフォルトのブラウザで新しい Salesforce ログインウィンドウが開きます。前のステップで取得した Playground のユーザ名とパスワードを使用して Playground にログインします。
  6. 接続アプリケーションへのアクセスを許可するか確認されたら、[Allow (許可)] をクリックして許可します。 グローバル接続アプリケーションの [Allow Access (アクセスを許可)] ページ
  7. ブラウザウィンドウを閉じます。

トランザクションが完了すると、コマンドラインターミナルウィンドウに成功メッセージが表示されます。

Successfully authorized USER with org ID (正常に承認されたユーザと組織 ID)/You may now close the browser (ブラウザを閉じることができます)。

Apex クラスを作成する

  1. Visual Studio Code でエクスプローラアイコン エクスプローラアイコン をクリックして force-app フォルダを展開します。
  2. VSCODEQUICKSTART ディレクトリの下で、force-app をクリックしてそのフォルダツリーを表示します。force-app/main/default ディレクトリには、プロジェクト内に含まれるメタデータ (applications、aura、classes など) があります。 展開されて classes フォルダが表示されたフォルダツリー。
  3. Mac で Command + Shift + P キー、Windows で Ctrl + Shift + P キーを押して、コマンドパレットを表示します。
  4. SFDX: Create Apex Class (SFDX: Apex クラスを作成) と入力します。
  5. 名前として AccountController と入力します。
  6. VS Code から要求されたら、AccountController.cls を追加するディレクトリとして force-app/main/default/classes を選択します。
  7. 新しく開いた AccountController.cls ファイルで、デフォルトのコードを次のコードに置き換えます。
  8. public with sharing class AccountController {
      public static List<Account> getAllActiveAccounts() {
        return [SELECT Id,Name,Active__c FROM Account WHERE Active__c = 'Yes'];
      }
    }
  9. ファイルを保存します。

クエリ  

新しい Apex クラスには SOQL クエリが含まれていますが、組織にリリースする前に期待どおりに機能するか確認する必要があります。コマンドパレットを使用し、組織に対してクエリを実行します。

  1. コードの 3 行目で、クエリ SELECT Id,Name,Active__c FROM Account WHERE Active__c = 'Yes' を強調表示します。
  2. Mac で Command + Shift + P キー、Windows または Linux で Ctrl + Shift + P キーを押して、コマンドパレットを表示します。
  3. SFDX:Execute SOQL Query with Currently Selected Text (SFDX:現在選択されているテキストで SOQL クエリを実行) を検索します。
  4. Enter キーを押します。
  5. [REST API] を選択し、Enter キーを押します。
  6. 統合ターミナルウィンドウの [Output (出力)] タブでクエリの結果を確認します。ウィンドウには「SFDX: Execute SOQL Query ... ended with exit code 0 (SFDX: SOQL クエリを実行 ... 終了コード 0 で終了しました)」というサマリーが表示されます。これは、正常に実行されたという意味です。

Trailhead Playground から受信した 10 レコードが表示されている [Output (出力)] タブ。

リリース

最後のステップでは、コードを Visual Studio Code 内から Playground にリリースします。

  1. classes フォルダを右クリックします。
    クラスフォルダが右クリックされ、オプションリストで [SFDX: Deploy Source to Org (SFDX: 組織にソースをリリース)] が選択されています。
  2. [SFDX: Deploy Source to Org (SFDX: 組織にソースをリリース)] をクリックします。
  3. 統合ターミナルの [Output (出力)] タブにリリースの結果が表示されます。「SFDX: Deploy Source to Org ... ended with exit code 0 (SFDX: 組織にソースをリリース ... 終了コード 0 で終了しました)」という通知も表示されます。これは、正常に実行されたという意味です。

成功を示す終了コード 0 を含む結果を表示する [Output (出力)] タブ。

最後に一言

ここでは、Visual Studio Code と Salesforce 拡張機能を使用する方法を学習しました。IDE の機能が開発効率の最大化にどう役立つかを確認しました。これで、Apex Replay Debugger を使用したデバッグ、ニーズに合わせたエディタのカスタマイズ、Visual Studio Code での開発者パイプラインの実行など、より複雑なトピックを確認できるようになりました。