Utilisation des données Salesforce dans le code Apex
Nous utilisons SOQL pour interroger une organisation Salesforce et utilisons ses données avec notre code. Dans cette étape, nous utilisons SOQL pour obtenir des informations sur le produit que nous voulons ajouter en tant qu’élément de commande bonus.
Ajout de SOQL pour obtenir des données de Salesforce
- Dans votre classe, sous le commentaire
//TO DO 3.1
(près de la ligne 5), collez ce code :
Que faisons-nous ici ?
Nous utilisons tout d’abord SOQL pour obtenir l’ID et le code produit (BOT-BB-12
) du bouquet, et nous stockons l’ID dans une liste appelée bonusProductList
. Nous vérifions ensuite le nombre d’éléments dans bonusProductList
. Si la liste contient au moins une valeur, nous définissons un nouveau sObject Product2, appelé bonusProduct
, et nous l’associons au premier sObject dans la liste bonusProductList
.
Nous utilisons ensuite une autre requête SOQL pour obtenir l’ID de l’élément PricebookEntry pour l’élément bonusProduct
. Nous stockons l’ID PricebookEntry dans une liste PricebookEntry appelée entryList
.
Enfin, nous vérifions le nombre d’éléments dans entryList
. Si la liste contient au moins une valeur, nous définissons un nouveau sObject PricebookEntry, appelé entry
, et nous l’associons au premier sObject dans la liste entryList
.
Utilisation de DML pour envoyer des données à Salesforce
Si vous avez suivi le module Programmation orientée objet pour les administrateurs, vous vous souvenez probablement que DML est le langage de manipulation de données que nous utilisons pour envoyer des données à une organisation Salesforce. En tant qu’administrateur ou administratrice, vous connaissez DML pour les instructions Insert (créer un enregistrement), Update (modifier un enregistrement) et Delete (supprimer un enregistrement) que vous utilisez avec des outils de manipulation de données, tels que Data Loader.
Nous avons créé un ou plusieurs bouquets gratuits et les avons ajoutés à une liste. Cependant, ils n’existent que dans le code Apex. Nous n’avons rien enregistré dans l’organisation Salesforce. Nous utilisons DML pour cela.
- Dans votre classe, sous le commentaire
//TO DO 3.2
, collez ce code : - Sous le commentaire
//TO DO 2.4
, supprimez les caractères de commentaire (//
) de la ligne suivante ://PricebookEntryId = entry.id,
- Enfin, nous devons mettre fin à l’instruction
if
(le code qui est exécuté si nous déterminons que nous avons un bouquet bonus).
Dans votre classe, sous le commentaire//TO DO 3.3
, collez ce code : - Enregistrez votre classe.
Votre classe doit se présenter comme suit :