Salesforce 開発での Visual Studio Code の使用
Trail Together の動画
このステップをインストラクターの説明を見ながら進めて行きたい場合は、Trailhead Live の Trail Together シリーズの一部である、こちらの動画をご覧ください。
(巻き戻して最初から見直したい場合、このクリップは 19:41 分から開始されます。)
ターミナルか、コマンドパレットか
他の優れた開発ツールと同様に、Visual Studio Code でも複数の方法で操作を行うことができます。Salesforce CLI を操作するには、統合ターミナルとクイックオープンウィンドウという 2 つの主要な方法があります。
クイックオープンウィンドウを表示するには、Ctrl + P キー (Windows) または Cmd + P キー (macOS) を押します。?
と入力すると、ヘルプメニューを表示できます。このモジュールでは、クイックオープンウィンドウをコマンドパレットモードで使用します。これによりコマンドの表示と実行が可能になります。
プロジェクトを作成する
-
Ctrl + Shift + P キー (Windows) または Cmd + Shift + P キー (macOS) を押して、コマンドパレットを表示します。
- 新しいプロンプトが
>
で始まることを確認します。
-
SFDX:Create Project
(SFDX: プロジェクトを作成) と入力します。
-
[SFDX: Create Project (SFDX: プロジェクトを作成)] を選択します。
-
[Standard (標準)] を選択します。
- プロジェクト名に
VSCodeQuickstart
と入力して、Enter キーを押します。
- 後で見つけやすいように、プロジェクトを作成する場所としてデスクトップを選択します。
- 新しい Visual Studio Code ウィンドウが開くまで待ちます。ファイルエクスプローラーへの入力前に、拡張機能がプロジェクトの準備をしていることを示すメッセージが表示されます。
ファイルを検索する
-
Ctrl + P キー (Windows) または Cmd + P キー (macOS) を押して、検索パレットを表示します。これにより、フォーカスがファイルの検索に移動します。
- 項目に
project-scratch-def.json
と入力します。
- 結果をクリックしてファイルを開きます。
-
[Search (検索)] () メニューをクリックします。
-
orgName
を検索します。
- project-scratch-def.json で見つかった最初の結果で、
-
orgName
値 (: の後で""の間) をLearning VS Code
に変更します。
-
Ctrl + S キー (Windows) または Cmd + S キー (macOS) を押してファイルを保存します。
Playground で認証する
-
Ctrl + Shift + P キー (Windows) または Cmd + Shift + P キー (macOS) を押して、コマンドパレットを表示します。
-
SFDX:Authorize an Org
(SFDX: 組織を承認) と入力します。
-
[SFDX: Authorize an Org (SFDX: 組織を承認)] を選択します。
- デフォルトのログイン URL を受け入れるには、Enter キーを押します。
- 別名に
VSCodePlayground
を入力します。
- デフォルトのブラウザーで新しい Salesforce ログインウィンドウが開きます。前のステップで取得した Playground のユーザー名とパスワードを使用して Playground にログインします。
- 接続アプリケーションへのアクセスを許可するか確認されたら、[Allow (許可)] をクリックします。
- ブラウザーウィンドウを閉じます。
トランザクションが完了すると、コマンドラインターミナルウィンドウに成功メッセージが表示されます。
Apex クラスを作成する
-
[Explorer (エクスプローラー)] () メニューをクリックします。
- VSCODEQUICKSTART ディレクトリの下で、force-app をクリックしてそのフォルダーツリーを表示します。force-app/main/default ディレクトリには、プロジェクト内に含まれるメタデータ (applications、aura、classes など) があります。
-
classes フォルダーを右クリックします。
-
[SFDX: Create Apex Class (SFDX: Apex クラスを作成)] を選択します。
- 名前として
AccountController
と入力します。
- VS Code から要求されたら、
AccountController.cls
を追加するディレクトリとして force-app/main/default/classes を選択します。
- 新しく開いた AccountController.cls ファイルで、デフォルトのコードを次のコードに置き換えます。
public with sharing class AccountController { public static List<Account> getAllActiveAccounts() { return [SELECT Id, Name, Active__c FROM Account WHERE Active__c = 'Yes' WITH SECURITY_ENFORCED]; } }
- ファイルを保存します。
クエリ
新しい Apex クラスには SOQL クエリが含まれていますが、組織にリリースする前に期待どおりに機能するか確認する必要があります。コマンドパレットを使用し、組織に対してクエリを実行します。
- コードの 3 行目で、クエリ
SELECT Id,Name,Active__c FROM Account WHERE Active__c = 'Yes'
を強調表示します (WITH SECURITY_ENFORCED は強調表示しないようにしてください)。
-
Ctrl + Shift + P キー (Windows) または Cmd + Shift + P キー (macOS) を押して、コマンドパレットを表示します。
-
SOQL
と入力します。
-
SFDX:Execute SOQL Query with Currently Selected Text
を選択します。
-
[REST API] を選択し、Enter キーを押します。
- 統合ターミナルウィンドウの [Output (出力)] タブでクエリの結果を確認します。ウィンドウには「SFDX: Execute SOQL Query ... ended with exit code 0 (SFDX: SOQL クエリを実行 ... 終了コード 0 で終了しました)」というサマリーが表示されます。これは、正常に実行されたという意味です。
リリース
最後のステップでは、コードを Visual Studio Code 内から Playground にリリースします。
-
classes フォルダーを右クリックします。
-
[SFDX: Deploy Source to Org (SFDX: 組織にソースをリリース)] をクリックします。
- 統合ターミナルの [Output (出力)] タブにリリースの結果が表示されます。「SFDX: Deploy Source to Org ... ended with exit code 0 (SFDX: 組織にソースをリリース ... 終了コード 0 で終了しました)」という通知も表示されます。これは、正常に実行されたという意味です。
最後に一言
ここでは、Visual Studio Code と Salesforce 拡張機能を使用する方法を学習しました。IDE の機能が開発効率の最大化にどう役立つかを確認しました。これで、Apex Replay Debugger を使用したデバッグ、ニーズに合わせたエディターのカスタマイズ、Visual Studio Code での開発者パイプラインの実行など、より複雑なトピックを確認できるようになりました。