Comment corriger MALFORMED_ID dans les déploiements Salesforce
Une valeur transmise là où Salesforce attend un ID d'enregistrement n'est pas un ID valide du tout, pas simplement le mauvais.
Se produit lors de : DML et SOQL à l'exécution, dans les chargements de données, les intégrations et les tests ApexCe que cela signifie
MALFORMED_ID signifie que la valeur reçue par Salesforce n'est pas syntaxiquement un ID d'enregistrement valide : longueur incorrecte, caractères invalides, ou une valeur qui n'est pas du tout un ID. Cela diffère d'INVALID_ID_FIELD, où l'ID est bien formé mais pointe vers le mauvais enregistrement ou objet ; MALFORMED_ID signifie que la chaîne elle-même est cassée.
Un ID Salesforce valide compte toujours 15 ou 18 caractères alphanumériques commençant par un préfixe de clé d'objet à trois caractères ; tout ce qui est plus court, plus long, ou contient des caractères en dehors de [A-Za-z0-9] échoue à cette vérification avant même que Salesforce ne tente de le résoudre en enregistrement.
Causes courantes
La solution
- Valider le format de l'ID avant utilisationVérifiez que tout ID construit dynamiquement ou importé compte exactement 15 ou 18 caractères alphanumériques avant de le transmettre à un DML ou une recherche.
Boolean looksLikeId = idValue != null && idValue.isAlphanumeric() && (idValue.length() == 15 || idValue.length() == 18); - Réexporter les fichiers de chargement de données sans reformatageExportez les CSV en texte brut et désactivez la mise en forme automatique du tableur qui peut altérer ou tronquer les colonnes d'ID.
- Ne jamais coder en dur des ID de substitution dans la préparation des testsInterrogez un véritable ID d'enregistrement dans la préparation des tests plutôt que d'assigner une chaîne littérale à une variable typée Id.
Comment Serpent évite cela
Serpent AI résout les références par clé métier plutôt que par chaînes d'ID brutes lors du déplacement des changements entre environnements, si bien qu'un ID mal formé ou codé en dur n'atteint jamais le déploiement d'une org cible. Consultez la bibliothèque des erreurs de déploiement Salesforce.

Prévention
Erreurs associées
MALFORMED_ID, expliqué
Démarrez gratuitement. Sans carte bancaire, sans installation, sans engagement.
Configuration en moins de 15 minutes. Aucun recrutement DevOps nécessaire.
