こんにちは、Nambuです。皆さんはSalesforceの開発を行うときはどのようにしているでしょうか?よくあるのは開発者コンソールの利用だと思いますが、非常に便利なIDEであるVisual Studio Code(VSCode)を今回はご紹介したいと思います。この記事ではセットアップについての説明になりますが別の記事では実際にソースコードを編集するところについても説明したいと思います!
VSCodeのセットアップ
早速ですがここからは実際にVSCodeのセットアップ手順をご紹介します。
Salesforce CLIのインストール
以下のサイトにアクセスしてインストーラをダウンロードし、Salesforce CLIインストールします。Salesforce CLIはSalesforce組織を利用した開発およびビルドの自動化のためのコマンドラインインタフェースで、インストールをするとsfdx
コマンドにシェルからアクセスできるようになります。 https://developer.salesforce.com/tools/salesforcecliVSCodeのインストール
今回の主役であるVSCodeを以下のサイトにアクセスしてインストーラをダウンロードし、インストールします。
https://code.visualstudio.com/downloadVSCodeの日本語化
ダウンロードした段階ではVSCodeは日本語ではないため、必要に応じて日本語化ツールをインストールします。
まず、VSCodeを立ち上げた画面の左側にある拡張機能をクリックします。 次に検索欄に入力して「Japanese Language Pack for VS Code」をインストールします。 インストールが終わったら右下に出る通知から[Change Language and Restart]を押して再起動します。 ※再起動をしても日本語化しなかった場合、[Ctrl + Shift + P]でコマンドパレットを開いて[>Configue Display Language]から日本語を選択します。拡張機能のインストール
ここまででVSCodeを使用する準備が出来たので、ここからは環境構築に移っていきます!
まず、日本語化ツールをインストールした時と同じく拡張機能をクリックします。 次に検索欄に入力して「Salesforce Extension Pack」をインストールします。これをインストールすると9個の拡張機能がまとめてインストールされます。プロジェクトの作成
[Ctrl + Shift + P]でコマンドパレットを開いて[>SFDX: Create Project with Manifest]を選択します。 次に、「標準」を選択して適当なプロジェクトフォルダ名を付けます。その際にSandboxの環境ごとにプロジェクトを分けることになると思うので、Sandboxの組織名などがわかるような形の命名をすると良いと思います。 すると、VSCode上のフォルダ一覧でも今作成したものが表示されるようになります。設定ファイルの修正
まず、今回の説明のようにログイン先がSandBoxである場合、「sfdx-project.json」のSalesforceのログインURLを
"sfdcLoginUrl": "https://login.salesforce.com" から
"sfdcLoginUrl": "https://test.salesforce.com"に変更します。 続いて、[manifest]配下にある「package.xml」を別途格納するように修正します。また、説明画像のpackage.xmlはApexクラスのみを取得するようになっているので、ご自身の必要に応じて編集を行います。Salesforce組織への接続
設定ファイルが修正できたので実際のSalesforce組織とVSCodeを接続したいと思います。
[Ctrl + Shift + P]でコマンドパレットを開いて[>SFDX: Authorize an Org]を選択します。 今回の例ではSandBoxの前提なので「Sandbox」を選択し、適当なエイリアス名を入力します。複数組織への接続を管理する場合はこのエイリアス名で接続先を判断することになるので区別のつく名称をつけるのが良いと思います。 すると、ブラウザでログイン画面が立ち上がるので、接続したい環境にログインします。ログインが出来たらブラウザは閉じても問題ありません。 もしここの手順でブラウザが立ち上がらない場合、大抵は拡張機能の「Salesforce CLI Integration」が原因のことが多く、ひとつ前のバージョンの拡張機能をインストールすると立ち上がることがあります。そのため、Salesforceのメジャーバージョンアップ前後によく発生します。
接続が完了すると以下の画像のように正常に実行されましたと表示されます。 この接続自体はVSCodeを終了してもWindowsを終了しても残り続けますが、同じSalesforceユーザでの接続に最大人数の制限があるので4~5人が接続すると接続が古い人から順に切断されます。セッション切れのようなメッセージが出たら一度接続情報の削除([Ctrl + Shift + P]でコマンドパレットを開いて[>SFDX: Log Out from All Authorized Orgs]を選択)を行い、再度接続すれば良いです。
また、複数環境の接続情報を保持しておくことも可能で、画面左下のエイリアス名クリックで接続先の切り替えが出来ますが、基本的には事故の元なので非推奨となります。ソースコードのダウンロード
最後に接続した組織からソースコードを手元のVSCodeへダウンロードします。
対象組織に接続している状態で、[manifest]配下にある「package.xml」を右クリックして「SFDX:マニュフェストファイルのソースを組織から取得」を実行します。 すると、「package.xml」に名前を記載したソースコードがローカルにダウンロードされます。 以下にダウンロードしたソースコードのフォルダ構成を載せます。
プロジェクトフォルダ ┣ .husky ┣ .sf ┣ .sfdx ┣ .vscode ┣ config ┣ force-app ┃ ┗ main ┃ ┗ default ┃ ┣ applications ┃ ┣ aura ┃ ┣ classes ┃ ┃ ┗ (Apexクラス.cls) ┃ ┣ components ┃ ┣ contentassets ┃ ┣ flexipages ┃ ┣ layouts ┃ ┣ lwc ┃ ┣ objects ┃ ┣ pages ┃ ┃ ┗ (VFページ.page) ┃ ┣ permissionsets ┃ ┣ staticresources ┃ ┗ (静的リソース) ┃ ┣ tabs ┃ ┗ triggers ┃ ┗ (トリガ.trigger) ┣ manifest ┃ ┗ package.xml ┗ sfdx-project.json
最後に
以上でインストールからソースコードをダウンロードするまでの説明となります!ここまでだいぶ長く大変だったと思いますが無事ダウンロードまでできたでしょうか?今回は一旦ここまでにして次の記事にてソースコードの編集・反映・テストの実行について説明したいと思います。今回だけではあまり凄さを感じられてないかもしれませんので、是非とも続きの記事も確認してみてください!
今回はこのくらいで、また会いましょう!