Utilisation de Visual Studio Code pour le développement Salesforce
Vidéo de démonstration Trail Together
Vous souhaitez suivre les instructions d’un formateur pendant que vous travaillez sur cette étape ? Regardez cette vidéo qui fait partie de la série Trail Together sur Trailhead Live.
(Ce clip commence à 19 min 41 s, au cas où vous voudriez revenir en arrière et regarder à nouveau le début de l’étape.)
Comparaison entre le terminal et la palette de commandes
Comme tout outil de développement de qualité, Visual Studio Code offre plusieurs possibilités pour effectuer les diverses opérations. Pour interagir avec la Salesforce CLI, vous pouvez utiliser le terminal intégré ou la fenêtre d'ouverture rapide.
Pour afficher la fenêtre d’ouverture rapide, appuyez sur la combinaison de touches Ctrl + P (Windows) ou Command + P (Mac). Pour afficher le menu d'aide, appuyez sur la touche ?
. Dans ce module, nous allons utiliser la fenêtre d'ouverture rapide en mode de palette de commandes, qui permet d'afficher et d'exécuter les commandes.
Création d'un projet
- Appuyez sur la combinaison de touches Ctrl + Maj + P (Windows) ou Command + Maj + P (Mac) pour afficher la palette de commandes.
- Assurez-vous que la nouvelle invite commence par
>
.
- Saisissez
SFDX:Create Project
(SFDX:créer un projet).
- Sélectionnez SFDX: Create Project.
- Sélectionnez Standard.
- Saisissez le nom de projet
VSCodeQuickstart
, puis appuyez sur Enter (Entrée).
- Sélectionnez votre Desktop (Bureau) comme emplacement de création du projet pour en faciliter l'accès.
- Attendez l'ouverture de la nouvelle fenêtre Visual Studio Code. Une invite doit indiquer la préparation de votre projet par l'extension avant le remplissage de l'explorateur de fichiers.
Recherche de vos fichiers
- Appuyez sur la combinaison de touches Ctrl + P (Windows) ou Command + P (Mac) pour afficher la palette de recherche. Le focus bascule sur la recherche de fichiers.
- Saisissez
project-scratch-def.json
dans le champ.
- Cliquez sur le résultat pour ouvrir le fichier.
- Cliquez sur le menu Search (Rechercher) ().
- Recherchez
orgName
.
- Dans le premier résultat trouvé dans le fichier project-scratch-def.json.
- Définissez la valeur de
orgName
(situé après les deux points et entre les guillemets “”) surLearning VS Code
(Apprentissage de VS Code).
- Enregistrez le fichier en appuyant sur la combinaison de touches Ctrl + S (Windows) ou Command + S (Mac).
Authentification sur votre Playground
- Appuyez sur la combinaison de touches Ctrl + Maj + P (Windows) ou Command + Maj + P (Mac) pour afficher la palette de commandes.
- Saisissez
SFDX:Authorize an Org
(SFDX:autoriser une organisation).
- Sélectionnez SFDX: Authorize an Org.
- Pour accepter l'URL de connexion par défaut, appuyez sur la touche Enter (Entrée).
- Saisissez l’alias
VSCodePlayground
.
- Notez que votre navigateur par défaut ouvre une nouvelle fenêtre de connexion à Salesforce. Connectez-vous à votre Playground en utilisant le nom d'utilisateur et le mot de passe récupérés à l'étape précédente.
- Lorsque vous êtes invité à accorder l’accès à l’application connectée, cliquez sur Allow (Autoriser).
- Fermez la fenêtre du navigateur.
La fenêtre du terminal de ligne de commande renvoie un message de confirmation lorsque la transaction est terminée.
Création d’une classe Apex
- Cliquez sur le menu Explorer (Explorateur) ().
- Sous le répertoire VSCODEQUICKSTART, cliquez sur force-app pour afficher l'arborescence. Le répertoire force-app/main/default contient les métadonnées incluses dans le projet, telles que les applications, l’aura, les classes, etc.
- Cliquez avec le bouton droit sur le dossier classes.
- Sélectionnez SFDX: Create Apex Class.
- Saisissez le nom
AccountController
(Contrôleur de compte).
- Si VS Code vous le demande, sélectionnez force-app/main/default/classes en tant que répertoire auquel vous souhaitez ajouter
AccountController.cls
.
- Dans le nouveau fichier ouvert AccountController.cls, remplacez le code par défaut par :
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]; } }
- Enregistrez votre fichier.
Requête
Notre nouvelle classe Apex contient une requête SOQL dont nous devons vérifier le fonctionnement avant de la déployer dans notre organisation. Nous utilisons la palette de commandes pour exécuter la requête avec votre organisation.
- À la ligne 3 du code, mettez en surbrillance la requête
SELECT Id,Name,Active__c FROM Account WHERE Active__c = ’Yes’
(ne mettez pas en surbrillance la clause WITH SECURITY_ENFORCED)
- Appuyez sur la combinaison de touches Ctrl + Maj + P (Windows) ou Command + Maj + P (Mac) pour afficher la palette de commandes.
- Saisissez
SOQL
.
- Sélectionnez
SFDX:Execute SOQL Query with Currently Selected Text
(SFDX:Exécuter requête SOQL avec le texte actuellement sélectionné).
- Sélectionnez REST API et appuyez sur la touche Entrée.
- Examinez les résultats de votre requête sous l’onglet Output (Sortie) du terminal intégré. La fenêtre doit indiquer un résumé de ce genre : SFDX: Execute SOQL Query .../... ended with exit code 0. Elle indique la réussite de l'exécution.
Déploiement
La dernière étape consiste à déployer votre code dans votre Payground depuis Visual Studio Code.
- Cliquez avec le bouton droit sur le dossier classes.
- Cliquez sur SFDX: Deploy Source to Org.
- Sous l'onglet Output (Sortie) du terminal intégré, examinez les résultats de votre déploiement. La notification suivante devrait également s'afficher : SFDX: Deploy Source to Org .../... ended with exit code 0. Elle indique la réussite de l'exécution.
Conclusion
Vous avez appris à utiliser Visual Studio Code et les extensions Salesforce. Vous avez découvert comment les fonctionnalités d’un IDE peuvent optimiser l’efficacité de vos efforts de développement. Vous êtes prêt à explorer des opérations plus complexes, notamment le débogage avec Apex Replay Debugger, la personnalisation de votre éditeur pour l’adapter à vos besoins et l’exécution de vos travaux de développeur avec Visual Studio Code.