-- C'est quoi un objet Salesforce ?
Les objets salesforce sont des tables de base données utilisé pour stocker les donnée d'une org.
Il en existe deux type à savoir :
Les objets standards : ce sont des objets fournies par salesforce comme Lead, Opp, Contact,
Opportunity, Compaign ...
Les objets personnalisés : ce sont des objets créés par les développeurs selon le besoin métier
-- Une app Salesforce ?
Une application Salesforce est un regroupement des objets, des onglets...
Chaque application répond à un besoin spécifique et utilisé par un nombre de profiles.
Il en existe deux types : des apps standard Salesforce (Sales, Service Cloud ... )
-- C'est quoi un sharing rule ?
Sharing rules sont utilisés pour permettre accès plus grand ( comparé à org wide ) à des utilisateurs
comme
les public groups, roles
Deux types de sharing rules : Criteria Based et Owner Based Sharing Rules
-- C'est quoi Salesforce ?
Salesforce est une plateforme CRM ou bien Customer Relationship Management basée sur le cloud
Elle offre des solutions pour aider les entreprise à mieux gérer leurs relation clients et gérer les
données.
Elle offre des produits et des solutions pour les services marketing, sales, commerce, service, IT...
-- Les roles ?
Les roles définie la visibilité des données pour les utilisateurs, On peut se baser sur l'hiérarchie des
roles
pour définir les enregistrements qu'un utilisateur peut voir
Les roles sont facultatifs lors de la création d'un nouveau utilisateur
-- Les profiles ?
Les profiles définie ce qu'un utilisateur peut faire (Une collection des permissions ), les apps, les
objets auquel un utilisateur peut accéder
Chaque utilisateur doit avoir un profile
-- Les types de relations ( lookup et Master-détails ) :
Master-détails relationship est une relation entre un master object représentant le parent et un child
object ( détails )
Master-détails relationship est une relation forte, si un objet parent est supprimé l'objet child sera
supprimé automatiquement
fortement couplé != faiblement couplé
-- Flows ?
Les flows permettent l'automatisation des processus métier
Il en existe deux types : les screen flows et les auto-launched flows
Il s'exécute aprés un événement déclencheurs cela peut etre par exemple la création
la mise à jour d'un enregistrement, ca peut etre aussi des flows programmés
Flow -> Flow Trigger History ( pour faire l'audit des triggers qui se déclenche pour un objet )
-- C'est quoi Apex ?
Apex est un langage orienté objet qui se compile et s'exécute sur le cloud
On peut le créer pour coder la logique métier via des triggers, classes et ainsi de suite
Les codes Apex fonctionnent entièrement à la demande
-- SOQL vs SOSL ?
SOQL est un langage de requetage qui permet de receuperer les données d'un seul objet à la fois
SOSL est un langage de requetage qui permet de faire une recherche sur tous les objets ( slmnt les
champs avec des types spécifique : phone, text )
Au contraire, avec SOQL on peut récupérer les données de n'importe quel type de champs
-- OmniStudio ?
OmniStudio est un ensemble des outils déclaratives comme OmniScripts et les flex cards pour la
partie UI ( Digital Experience )
On a aussi les DR et les IP pour la partie back-end ( Service Management )
Permet de répondre aux besoins spécifique à l'industrie
Vlocity ou bien ce qu'on appelle Salesforce Industries après l'acquisition en 2020 est un ensemble de
solutions cloud spécique à l'industrie ( Energy, Insurance, Telecom ... )
construits à base de la plateforme Salesforce
Deux types de packages salesforce : Managed et Unmanaged
Unmanaged = Open Source
-- C'est quoi un junction object ?
Junction object est un objet intermédiaire qui permet de modéliser les relations Many to Many
exemple : Offre d'emploi et candidat ( relation plusieurs à plusieurs ), on peut la modéliser en
utilisant
un junction object postulation
-- Validation rules ?
Les validations rules consistent en un ensemble de formules et expressions utilisées afin de valider
les enregistrements
c'est très utile pour renforcer l'integrité des données et avoir des données qui respecte les standards
définies par l'entreprise
-- C'est quoi record types ?
Les record types permettent d'associer des page layouts, des picklists et des processus métier
différents à des utilisateurs selon le profil
-- C'est quoi une sandbox ?
une sandbox est une copie de l'organisation de production utilisée pour des fins de tests et de
développement
4 types : dev, dev pro (test+dev) , partial sandbox and full sandbox (test)
1 - Les types de relations entre objets dans SF ?
- Master details ( 1 à plusieurs )
Premièrement la relation Master-détails qui s'agit d'une relation entre deux objets fortement couplés
à savoir l'objet Master représentant l'objet parent et l'objet détails représentant le parent enfant
Lorsque je dis une relation forte c'est à dire l'objet parent influence le comportement de l'objet
enfant
par exemple si l'objet parent est supprimé l'autre est supprimé automatiquement
- Lookup ( 1 à plusieurs )
Par contre, les relations faiblement couplé permettant de relier deux objets entre eux
On peut créer autant de relations lookup dans un objet salesforce mais on ne peut créer que 2
champs lookup
- Many to many
permet de représenter une relation plusieurs à plusieurs entre deux objets et cela se modélise grace
à un objet intermédiaire s'appelant junction object
2 - Les triggers Apex
Les triggers ou bien les déclencheurs apex permettent d'exécuter un traitement spécifique avant ou
bien après une
opération sur un objet, il existe notamment 7 types de triggers :
Avant/Aprés create, update, delete et après undelete
Les meilleurs pratiques de triggers :
Faire un seul trigger par objet, ça permet une meilleur visibilité par rapport aux triggers qui s'exécute
Minimiser le code métier dans les triggers généralement il faut faire appel à une classe handler qui
contient tout le logique métier
Eviter la récursion c'est le fait de déclencher des appels en boucle ( sol : une variable boolean
statique )
3 - Différence entre un profil et un role ?
Les roles définie la visibilité des données pour les utilisateurs, On peut se baser sur l'hiérarchie des
roles
pour définir les enregistrements qu'un utilisateur peut voir
Les roles sont facultatifs lors de la création d'un nouveau utilisateur
Par contre, les profils définissent ce qu'un utilisateur peut faire (Une collection des permissions ), les
apps, les objets auquel un utilisateur peut accéder
Chaque utilisateur doit avoir un profile
OWD ou bien Organisation Wide Default définit comme son nom l'indique le niveau d'accès par
défaut aux différents objets de l'org
Les différents niveaux d'accès sont : public read only - public read and write - private - controlled by
parent ( controllé par le parent dans la relation entre objet)
4 - Salesforce editions
C'est un bundle de fonctionnalités et features SF :
Essentials -> Professional -> Entreprise -> Unlimited & Developper
5 - Les sandbox ce sont des copie des orgs de production ou bien des orgs de pré-production
Qu'on utilise pour des fins de dév et de test des nouvelles fonctionnalités avant d'envoyer vers le
prod
6 - On implémente l'interface Schedulable pour définir des jobs apex qui s'exécute d'une manière
régulière weekly, monthly ( schedule of quequable) ...
L'interface Queuable : permet d'exécuter des jobs apex d'une manière asynchrone une fois les
resources sont dispo en l'ajoutant à un queue
Les méthodes futures pour des méthodes asynchrones surtt les appels des web services
7 - La version d'API actuelle d'APEX : v 55 ( summer 22 )
8 - il existe 3 release de salesforce : Summer, Winter, Spring
9 - La différence entre process builder et flows ?
Les deux permettent l'automatisation des processus mais process builder est déprécié et SF
recommande l'utilisation des Flows
Les flows permettent d'uaomatiser des parcours guidées avec des UI
10 - Les types de flows ?
Screen Flows utilisé pour les processus qui nécessitent des intéractions avec les utilisateurs
AutoLaunched Flows ne nécessite pas une intéraction de la part d'utilisateur
with schedule trigger : processus planifiés
with record trigger : après une opération sur des objets
12 - méthodes de déploiement : SFDX - Change Set ( Inbound - Outbound ) + scratch org ( org de test
)
13 - La couverture des test minimale : 75%
14 - Les outils de dév : Visual studio code, Dev console
15 - order of execution :
1. System Validation Rules
2. Apex Before Triggers
3. Custom Validation Rules
4. Duplicate Rules
5. Apex After Triggers
6. Assignment Rules
7. Auto-Response Rules
8. Workflow Rules
9. Processes
10. Escalation Rules
11. Roll-Up Summary Fields
16 - solutions cloud : sales cloud, service cloud, experience cloud ( communities ), Salesforce
industries ( vlocity )
17 - faire appel à un web service externe, le site doit etre ajouté à remote site settings
18 - C'est quoi record types ?
Les record types permettent d'associer des page layouts, des picklists et des processus métier
différents à des utilisateurs selon le profil
Permission sets est un ensemble de permission qu'on peut affecter à des profiles afin d'extensier les
permissions définit dans l'owd
Queues est un ensemble de users qui partage le mee workload et auquel on peut affecter leads,
cases ... qu'il peuvent accepter et traiter par la suite