Comment corriger DEPENDENCY_EXISTS dans les déploiements Salesforce
Salesforce refuse de supprimer un champ, un objet ou une valeur de picklist parce qu'un autre composant y fait encore référence.
Se produit lors de : la suppression de métadonnées, via destructiveChanges.xml ou SetupCe que cela signifie
DEPENDENCY_EXISTS bloque la suppression de métadonnées, un champ personnalisé, un objet, un record type ou une valeur de picklist, parce qu'autre chose dans l'org y fait toujours référence : une formule, une validation rule, un flow, un report, ou un page layout. Salesforce protège l'intégrité des données en refusant de retirer un composant tant que des dépendants en ont besoin.
Cela ne se déclenche que lorsque la métadonnée existe déjà dans l'org cible et que quelque chose la supprime, que ce soit via Setup, un déploiement destructiveChanges.xml, ou la Tooling API ; cela n'apparaît jamais lors d'un simple déploiement additif de nouvelles métadonnées.
Causes courantes
La solution
- Trouvez chaque dépendant avec la vérification des dépendances de SalesforceUtilisez l'outil "Where is this used?" dans Setup sur le champ ou l'objet pour lister chaque formule, flow, report et layout qui y fait référence.
- Supprimez ou mettez à jour chaque dépendance en premierModifiez ou supprimez la formule, le flow, la validation rule ou le report qui fait référence, afin qu'il ne pointe plus vers le composant.
- Supprimez le composant dans une étape distincteUne fois qu'il ne reste plus de dépendants, supprimez le champ ou l'objet seul, après que le nettoyage des dépendances a été appliqué dans l'org cible.
<!-- destructiveChangesPost.xml, deployed after the dependency cleanup lands --> <Package xmlns="http://soap.sforce.com/2006/04/metadata"> <types> <members>Account.Legacy_Score__c</members> <name>CustomField</name> </types> <version>62.0</version> </Package>
Comment Serpent évite cela
Serpent exécute une vérification préalable des dépendances avant qu'une suppression n'atteigne une org partagée, de sorte qu'un champ toujours référencé apparaisse comme une tâche bloquée plutôt que comme un déploiement en production en échec. Voir la bibliothèque des erreurs de déploiement Salesforce.

Prévention
Erreurs associées
DEPENDENCY_EXISTS, les réponses
Commencez gratuitement. Sans carte bancaire, sans installation, sans engagement.
Configuration en moins de 15 minutes. Aucune embauche DevOps nécessaire.
