Salesforce 開発での Visual Studio Code の使用

Trail Together の動画

このステップをインストラクターの説明を見ながら進めて行きたい場合は、Trailhead Live の Trail Together シリーズの一部である、こちらの動画をご覧ください。

(巻き戻して最初から見直したい場合、このクリップは 19:41 分から開始されます。)

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

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

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

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

プロジェクトを作成する

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

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

ファイルを検索する

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

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

Playground で認証する

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

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

Apex クラスを作成する

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

クエリ

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

  1. コードの 3 行目で、クエリ SELECT Id,Name,Active__c FROM Account WHERE Active__c = 'Yes' を強調表示します。
  2. Ctrl + Shift + P キー (Windows) または Cmd + Shift + P キー (macOS) を押して、コマンドパレットを表示します。
  3. SOQL と入力します。
  4. SFDX:Execute SOQL Query with Currently Selected Text を選択します。
  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 で終了しました)」という通知も表示されます。これは、正常に実行されたという意味です。

最後に一言

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

無料で学習を続けましょう!
続けるにはアカウントにサインアップしてください。
サインアップすると次のような機能が利用できるようになります。
  • 各自のキャリア目標に合わせてパーソナライズされたおすすめが表示される
  • ハンズオン Challenge やテストでスキルを練習できる
  • 進捗状況を追跡して上司と共有できる
  • メンターやキャリアチャンスと繋がることができる