Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Les objets standard selon les objets inclus avec Salesforce. Les objets métiers courants tels
que Compte, Contact, Piste et Opportunité sont tous des objets standard.
Les objets personnalisés sont les objets que vous créez pour stocker des informations
spécifiques à votre société ou secteur d'activité. Pour DreamHouse, D’Angelo souhaite
élaborer un objet personnalisé Propriété qui stocke des informations sur les maisons que sa
société met en vente.
Les objets sont les conteneurs de vos informations, mais ils offrent également des
fonctionnalités spéciales. Par exemple, lorsque vous créez un objet personnalisé, la plate-
forme crée automatiquement des éléments tels que la présentation de page pour l'interface
utilisateur.
Relations de référence
Dans notre exemple Compte-Contact ci-dessus, la relation entre les deux objets est
une relation de référence. Une relation de référence relie principalement deux objets, ce qui
permet de « référencer » un objet depuis les éléments associés d'un autre objet.
Relations principal-détails
Alors que les relations de référence sont relativement simples, les relations principal-
détails sont plus étroites. Dans ce type de relation, un objet est principal (maître) et un autre
est détail (subordonné). L'objet principal contrôle certains comportements de l'objet de détail,
par exemple qui peut afficher les données de l'objet de détail.
Dans une relation principal-détails, l'objet de détail n'est pas autonome. Il est hautement
dépendant du principal. En effet, si un enregistrement de l'objet principal est supprimé, tous
les enregistrements de détail associés sont également supprimés. Lorsque vous créez des
relations principal-détails, vous créez toujours le champ de relation dans l'objet de détail.
Vous devez transférer entre 50 000 et 5 000 000 d'enregistrements. Si vous devez charger plus
de 5 millions d’enregistrements, nous vous recommandons de travailler avec un partenaire
Salesforce ou de rechercher un produit partenaire adapté dans App Exchange.
Vous devez procéder au chargement dans un objet non pris en charge par l'assistant
d'importation de données.
Vous souhaitez planifier des chargements de données réguliers, par exemple des importations
de nuit.
Hébergé : Apex est enregistré, compilé et exécuté sur le serveur, Lightning Platform.
Orienté objet : Apex prend en charge les classes, les interfaces et l'héritage.
Fortement typé : Apex valide des références à des objets lors de la compilation.
Orienté vers les données : Apex offre un accès transactionnel à la base de données, qui
permet de restaurer les opérations.
Facile à utiliser : Apex est basé sur les idiomes Java habituels.
Facile à tester : Apex fournit une prise en charge intégrée de création de tests unitaires,
d'exécution et de couverture de code. Salesforce vérifie que tous les codes Apex
personnalisés fonctionnent normalement, en exécutant tous les tests unitaires avant
une mise à niveau de la plate-forme.
Versions gérées : un code Apex personnalisé peut être sauvegardé dans différentes
versions de l'API.
Utilisation de sObjects
Apex est étroitement intégrée à la base de données. Par conséquent, vous pouvez accéder aux
enregistrements Salesforce et à leurs champs directement depuis Apex. Chaque enregistrement dans
Salesforce est représenté nativement en tant que sObject dans Apex. Par exemple, l'enregistrement de
compte Acme correspond à un sObject Compte dans Apex. Les champs de l'enregistrement Acme que
vous pouvez afficher et modifier dans l'interface utilisateur peuvent également être lus et modifiés
directement sur le sObject.
Les noms d'API d'un objet et de champs peuvent être différents de leurs étiquettes. Par
exemple, le champ Employés porte l'étiquette Employés et s'affiche dans la page
d'enregistrement du compte en tant que Employés, mais son nom d'API est
NumberOfEmployees. Pour accéder à ce champ dans Apex, vous devez utiliser le nom d'API
du champ : NumberOfEmployees.
Pour des objets et des champs personnalisés, le nom d'API se termine toujours par le suffixe
__c. Pour des champs de relation personnalisés, le nom d'API se termine par le suffixe __r.
Par exemple :
Un champ de relation personnalisé avec une étiquette Éléments porte le nom d'API
Éléments__r.
Instructions DML
Les instructions DML disponibles sont les suivantes :
insert
update
upsert
delete
undelete
merge
Chaque instruction DML accepte un sObject unique ou une liste (ou un tableau) de sObjects.
L'utilisation d'une liste de sObjects est plus efficace pour traiter les enregistrements.
La plupart de ces instructions sont des opérations de base de données connues. Les
instructions upsert et merge sont spécifiques à Salesforce et peuvent se révéler très utiles.
L’opération DML upsert crée des enregistrements et met à jour des enregistrements sObject
dans une instruction unique, à l’aide d’un champ défini pour déterminer la présence d’objets
existants, ou du champ ID si aucun champ n’est spécifié.
L'instruction merge fusionne jusqu'à trois enregistrements du même type de sObject dans l'un
des enregistrements, supprime les autres, et attribue un nouveau parent à tous les
enregistrements associés.
Méthodes Database
Apex contient la classe Database intégrée. Elle fournit des méthodes qui exécutent des opérations
DML et reproduisent les instructions DML équivalentes.
Les méthodes Database ci-dessous sont statiques et sont appelées dans le nom de la classe.
Database.insert()
Database.update()
Database.upsert()
Database.delete()
Database.undelete()
Database.merge()
Pour lire un enregistrement depuis Salesforce, vous devez écrire une requête. Salesforce fournit le
Salesforce Object Query Language, ou SOQL en abrégé, que vous pouvez utiliser pour lire des
enregistrements sauvegardés. SOQL est similaire au langage SQL standard mais est personnalisé pour
Lightning Platform.
Apex a un accès direct aux enregistrements Salesforce stockés dans la base de données. Par
conséquent, vous pouvez incorporer des requêtes SOQL dans votre code Apex et obtenir des
résultats de façon simple. Lorsqu'il est incorporé dans Apex, SOQL est appelé SOQL en
ligne.
Pour inclure des requêtes SOQL dans votre code Apex, placez l'instruction SOQL entre
crochets et attribuez la valeur renvoyée à un tableau de sObjects. Par exemple, la requête ci-
dessous récupère tous les enregistrements de compte qui ont deux champs, Nom et Téléphone,
et renvoie un tableau de sObjects Compte.
La clause WHERE est facultative. Commençons avec une requête très simple. Par exemple, la
requête suivante récupère les comptes et obtient les champs nom et téléphone pour chaque
compte.
1. SELECT Name,Phone : cette partie répertorie les champs que vous souhaitez récupérer.
Les champs sont spécifiés après le mot-clé SELECT dans une liste de valeurs séparées
une virgule. Vous pouvez également spécifier un seul champ, auquel cas la virgule
n'est pas nécessaire (p. ex. SELECT Phone ).
2. FROM Account : Cette partie spécifie l'objet standard ou personnalisé que vous souhaitez
récupérer. Dans cet exemple, l'objet est Compte. Pour un objet personnalisé appelé
Releve_Factures, il correspond à Releve_Factures__c.
La clause WHERE peut contenir plusieurs conditions qui sont regroupées à l'aide d'opérateurs
logiques (AND, OR) et de parenthèses. Par exemple, la requête suivante renvoie tous les
comptes portant le nom SFDC Computing et comptant plus de 25 employés :
Voici un autre exemple avec une condition plus complexe. Cette requête renvoie tous les
comptes SFDC Computing, ou tous les comptes avec plus de 25 employés dont la ville de
facturation est Los Angeles.
L'ordre de tri par défaut est l'ordre alphabétique, spécifié par ASC (ascendant). L'instruction
précédente est équivalente à :
SELECT Name,Phone FROM Account ORDER BY Name ASC
Salesforce Object Search Language (SOSL) est un langage de recherche Salesforce utilisé pour
effectuer des recherches de texte dans des enregistrements. Utilisez SOSL pour rechercher des champs
dans plusieurs enregistrements d'objet standard et personnalisé dans Salesforce. SOSL est similaire à
Apache Lucene.
L'ajout de requêtes SOSL à Apex est simple : vous pouvez incorporer des requêtes SOSL
directement dans votre code Apex. Lorsqu'il est incorporé dans Apex, SOSL est appelé SOSL
en ligne.
Voici un exemple d'une requête SOSL qui recherche les comptes et les contacts dont un
champ contient le mot « SFDC ».
RETURNING Account(Name),
Contact(FirstName,LastName)];
Autre différence, SOSL mappe les champs à l'aide d'une correspondance sur un mot, alors que
SOQL effectue une correspondance exacte par défaut (quand aucun caractère générique n'est
utilisé). Par exemple, la recherche de « Numérique » dans SOSL renvoie les enregistrements
qui contiennent les valeurs de champ « Numérique » ou « La société numérique », alors que
SOQL renvoie uniquement les enregistrements qui contiennent les valeurs de champ
« Numérique ».
SOQL et SOSL sont deux langages distincts avec des syntaxes différentes. Chaque langage a
une utilisation spécifique :
Utilisez SOSL pour rechercher des champs dans plusieurs objets. Les requêtes SOSL
peuvent rechercher la plupart des champs de texte d'un objet.
Mot unique: un seul mot, par exemple test ou hello . Les mots de
la SearchQuery sont séparés par une espace, une ponctuation et passent de lettres à des
chiffres (et inversement). Les mots sont toujours insensibles à la casse.
Les déclencheurs Apex permettent d'exécuter des actions personnalisées avant ou après
certains événements sur des enregistrements dans Salesforce, notamment des insertions, des
mises à jour ou des suppressions. Tout comme les systèmes de base de données prennent en
charge les déclencheurs, Apex offre la prise en charge de déclencheur pour la gestion des
enregistrements.
Généralement, vous utilisez des déclencheurs pour effectuer des opérations en fonction de
conditions spécifiques, modifier des enregistrements associés ou empêcher l'exécution de
certaines opérations. Vous pouvez utiliser des déclencheurs pour exécuter toutes les actions
possibles dans Apex, y compris exécuter des requêtes SOQL et DML ou appeler des
méthodes Apex personnalisées.
Utilisez des déclencheurs pour exécuter les tâches que les outils pointer-cliquer ne peuvent
pas activer dans l'interface utilisateur de Salesforce. Par exemple, pour valider une valeur de
champ ou mettre à jour un champ dans un enregistrement, utilisez plutôt des règles de
validation et des règles de workflow.
Les déclencheurs peuvent être définis pour des objets standard de niveau supérieur, par
exemple un Compte ou un Contact, pour des objets personnalisés et pour certains objets
enfants standard. Par défaut, les déclencheurs sont actifs à leur création. Salesforce active
automatiquement les déclencheurs lorsque les événements de base de données spécifiés se
produisent.
code_block
Pour exécuter un déclencheur avant ou après des opérations d'insertion, de mise à jour, de
suppression ou d'annulation de suppression, spécifiez plusieurs événements de déclencheur
dans une liste de valeurs séparées par une virgule. Ces événements sont les suivants :
before insert
before update
before delete
after insert
after update
after delete
after undelete
Types de déclencheur
Il existe deux types de déclencheur.
Les déclencheurs after sont utilisés pour accéder aux valeurs de champ définies par le
système (par exemple le champ Id ou LastModifiedDate d'un enregistrement), et pour
appliquer les modifications dans d'autres enregistrements. Les enregistrements qui
activent le déclencheur after sont en lecture seule.
Introduction à Visualforce
Visualforce est une infrastructure de développement Web. Elle permet aux développeurs d’élaborer
des interfaces utilisateur sophistiquées et personnalisées pour des applications mobiles et de bureau,
qui peuvent être hébergées sur Lightning Platform. Vous pouvez utiliser Visualforce pour élaborer des
applications correspondant au style de Lightning Experience, aussi bien que votre propre interface
entièrement personnalisée.
Dans Visualforce, le développement d’applications est familier pour toutes les personnes qui ont
élaboré des applications Web. Les développeurs créent des pages Visualforce en assemblant des
composants, des balises HTML et des éléments de style facultatifs. Visualforce peut intégrer
n’importe quelle technologie Web standard ou infrastructure JavaScript pour créer une interface
utilisateur plus animée et plus riche. Chaque page est accessible via une URL unique. Lorsqu'une
personne accède à une page, le serveur exécute le traitement de données requis par la page, restitue la
page en HTML et renvoie les résultats au navigateur qui les affiche.
REST API
L’API REST est un service Web simple et puissant basé sur les principes de REST. Il expose
toutes sortes de fonctionnalités Salesforce via des ressources REST et des méthodes HTTP.
Vous pouvez par exemple créer, lire, mettre à jour et supprimer (CRUD) des enregistrements,
rechercher et interroger vos données, récupérer des métadonnées d’objet, et accéder à des
informations relatives aux limitations de votre organisation. L’API REST prend en charge
XML et JSON.
Dotée d’une structure de requête et de réponse légère et facile à utiliser, l’API REST est
idéale pour écrire des applications mobiles et Web.
API SOAP
L’API SOAP est un service Web robuste et puissant basé sur le protocole standard du secteur
qui porte le même nom. Il utilise un fichier WSDL (Web Services Description Language) afin
de définir rigoureusement les paramètres d’accès aux données via l’API. L’API SOAP prend
uniquement en charge XML. La plupart des fonctionnalités de l’API SOAP sont également
disponibles via l’API REST. Cela dépend seulement de la norme qui répond le mieux à vos
besoins.
L’API SOAP utilise le fichier WSDL comme s’il s’agissait d’un contrat formel entre l’API et
le client. Par conséquent, elle convient parfaitement à l’écriture d’intégrations serveur à
serveur.
L’API de transfert en masse est idéale pour exécuter des tâches sur un grand nombre
d’enregistrements, par exemple lors du chargement initial de données dans votre organisation.
API Streaming
L’API Streaming vous permet de définir des notifications qui se déclenchent lorsque des
modifications sont apportées à vos données. Il utilise un modèle publier/inscrire (ou pub/sub)
qui permet aux utilisateurs de s’abonner à des canaux diffusant certains types de modification
de données.
L’API SOAP permet par exemple d’intégrer Salesforce aux systèmes financiers et ERP de
votre organisation. Vous pouvez également fournir en temps réel des informations de support
et commerciales aux portails de sociétés et renseigner les systèmes métiers critiques avec des
informations sur les clients.
Par contre, l'API SOAP est optimisée pour des applications clientes en temps réel qui mettent
à jour quelques enregistrements seulement à la fois. Vous pouvez utiliser l’API SOAP pour
traiter des volumes d’enregistrements relativement importants, mais lorsque les jeux de
données contiennent des centaines de milliers d’enregistrements, l’API SOAP est moins
pratique. L’API de transfert en masse est conçue pour simplifier le traitement de milliers ou
de millions d’enregistrements.
Pour utiliser l’API de transfert en masse, le plus simple est de l’activer pour traiter les
enregistrements dans Data Loader à l’aide de fichiers CSV. L’utilisation de Data Loader vous
évite d’écrire votre propre application cliente.
Pour accéder aux fonctionnalités de l’API de métadonnées, le plus simple est d’utiliser les
extensions Salesforce pour Visual Studio Code ou l’outil de migration Ant. Les deux outils
s’appuient sur l’API de métadonnées. Ils utilisent les outils standard afin de simplifier
l’utilisation de l’API de métadonnées.
L’API SOAP Apex prend en charge OAuth 2.0 et l’ID de session pour l’autorisation.