Dans Explore, vous pouvez rédiger des formules pour les mesures et les attributs personnalisés. Il est important de créer les formules correctement pour vous assurer qu’elles fonctionnent. Si une formule n’est pas correcte, l’éditeur de formule affiche un message d’erreur en temps réel. Le message d’erreur identifie le problème et aide à le résoudre.
Cet article explique comment corriger une formule mal configurée dans vos rapports. Il répertorie les messages d’erreur dans l’éditeur de formule et fournit des conseils pour vous aider à corriger votre formule, avec des exemples de formules correctes et incorrectes.
Cet article aborde les sujets suivants :
Articles connexes :
Correction des formules mal configurées
Si une mesure ou un attribut calculé contient une formule mal configurée, aucun résultat n’est renvoyé. Identifiez les formules mal configurées en vérifiant ces endroits :
- Bibliothèque de rapports : les rapports qui utilisent une formule mal configurée s’affichent dans la catégorie Mises à jour requises de la bibliothèque de rapports.
- Bibliothèque de tableaux de bord : les tableaux de bord qui utilisent les rapports affectés s’affichent dans l’onglet Mises à jour requises de la bibliothèque de tableaux de bord.
- Créateur de rapports : un message d’avertissement s’affiche en bas d’un rapport qui utilise la formule.
- Éditeur de formule : un message d’avertissement s’affiche dans l’éditeur de formule pour la formule affectée.
Pour corriger une formule mal configurée, ouvrez un rapport qui l’utilise et corrigez-la dans l’éditeur de formule. Puis republiez tous les tableaux de bord qui utilisent ce rapport.
Pour mettre une formule mal configurée à jour
- Dans Explore, cliquez sur l’icône Rapports (
) pour ouvrir dans la bibliothèque de rapports. -
Cliquez sur l’onglet Mises à jour nécessaires.
- Cliquez sur l’un des rapports répertoriés pour l’ouvrir.
- Pour chaque mesure ou attribut calculé :
- Cliquez sur la mesure ou sur l’attribut, puis sur l’icône de crayon à papier.
-
Vérifiez la formule pour identifier tout problème de configuration. Les parties mal configurées sont soulignées. Un message d’erreur vous indique ce qui doit être corrigé.

- (facultatif) Créez une copie de la mesure ou de l’attribut avant d’effectuer des modifications. Cela évite l’impact sur les rapports existants pendant le dépannage.
-
Corrigez les problèmes qui existent dans la formule identifiée par le message d’erreur. Consultez les sections ci-dessous pour en savoir plus sur chaque message d’erreur spécifique.
Si vous corrigez la formule d’une mesure ou d’un attribut calculé dans un rapport, cela la corrige également dans tous les autres rapports où elle est utilisée.
- (facultatif) Si vous avez créé une copie de la mesure ou de l’attribut, mettez l’original à jour.
- Enregistrez le rapport
Pour republier les tableaux de bord affectés
- Cliquez sur l’icône Tableaux de bord (
) pour ouvrir la bibliothèque de tableaux de bord - Cliquez sur l’onglet Mises à jour nécessaires
- Placez votre curseur sur l’un des tableaux de bord et cliquez sur Modifier
- Dans le tableau de bord, cliquez sur la flèche de menu déroulant en regard de Partager et sélectionnez Publier. La prochaine fois que les utilisateurs consultent le tableau de bord partagé, ils en voient la dernière version
- Cliquez sur Publier
Types de messages d’erreur dans l’éditeur de formule
Cette section répertorie les types de messages d’erreur suivants et fournit des conseils conçus pour vous aider à résoudre les problèmes :
Erreurs les plus courantes dans les formules
Consultez les sections ci-dessous pour en savoir plus sur chaque message d’erreur spécifique.
Messages d’erreurs de syntaxe généraux
Si vous voyez le message d’erreur suivant, cela signifie que la syntaxe de votre formule est incorrecte :
-
« Il y a un problème au niveau de la formule. Vérifiez votre syntaxe de calcul et réessayez. »

Le tableau ci-dessous répertorie les raisons les plus courantes pour cette erreur.
| Motif | Formule incorrecte | Formule correcte |
|---|---|---|
| Vous avez ouvert un crochet ou une parenthèse sans le fermer, ou vous en avez fermé plus que vous n’en avez ouvert. | IF ([Statut du ticket] = "Solved")) THEN [ID du ticket] ENDIF | IF ([Statut du ticket] = "Solved") THEN [ID du ticket] ENDIF |
| Vous avez ouvert des guillemets, mais ne les avez pas fermés. | [Statut du ticket] = "Solved | [Statut du ticket] = "Solved" |
| Vous n’avez pas placé l’attribut entre crochets. | Statut du ticket = "Solved” | [Statut du ticket] = "Solved” |
| Vous n’avez pas ajouté d’agrégateur avant une mesure. | Délai avant première réponse - min | SUM(Délai avant première réponse - min) |
| Il manque une partie essentielle de la déclaration IF. Dans cet exemple, il manque ENDIF. | IF ([Statut du ticket] = "Solved") THEN [ID du ticket] | IF ([Statut du ticket] = "Solved") THEN [ID du ticket] ENDIF |
Messages d’erreurs de types de données
Le tableau ci-dessous montre des messages d’erreur portant sur les types de données dans le rédacteur de formule, y compris les versions incorrecte et correcte d’une formule.
Les sections ci-dessous couvrent les messages d’erreur de types de données :
Les expressions Égal(e) à, Pas égal(e) à, Supérieur(e) à et Inférieur(e) à
| Exemple de message d’erreur | Formule incorrecte | Formule correcte |
|---|---|---|
| Impossible d’utiliser [Étape du projet] comme texte et 1 comme nombre. Utilisez le même type. | [Étape du projet]=1 |
[Étape du projet]="1" Utilisez le même type de données de part et d’autre de l’expression d’égalité. Une valeur entre guillemets est considérée comme du texte, mais un nombre sans guillemets est considéré comme un nombre. Comme Étape du projet est un attribut texte, la valeur doit être entre guillemets. |
| Impossible d’utiliser [Pays du ticket] comme texte et [Indicatif de pays de l’utilisateur] comme nombre. Utilisez le même type. | [Pays du ticket]!=[Indicatif de pays de l’utilisateur] |
[Pays du ticket]!=[Nom du pays de l’utilisateur] Utilisez le même type de données de part et d’autre de l’expression d’inégalité. Pays du ticket est du texte et l’attribut sur la droite doit donc aussi être du texte. |
| Impossible d’utiliser [Ticket affecté - Date] comme texte et 26 comme nombre. Utilisez uniquement des nombres ou uniquement du texte. | [Ticket affecté - Date] >= 26 |
[Ticket affecté - Date] >= "2023-01-26" Utilisez le même type de données de part et d’autre de l’expression Supérieur(e) à ou Égal(e) à. Dans ce cas, c’est une date entre guillemets. |
| Impossible d’utiliser VALUE(Réponses des agents) comme nombre et 2 comme texte. Utilisez uniquement des nombres ou uniquement du texte. | VALUE(Réponses des agents)<”2” |
VALUE(Réponses des agents)<2 Utilisez le même type de données de part et d’autre de l’expression Inférieur(e) à. Une valeur entre guillemets est considérée comme du texte, mais un nombre sans guillemets est considéré comme un nombre. Comme Réponses des agents est une mesure, la valeur doit être un nombre, n’utilisez pas de guillemets. |
La jointure des opérations arithmétiques et des valeurs de texte
| Exemple de message d’erreur | Formule incorrecte | Formule correcte |
|---|---|---|
| Impossible d’utiliser [Groupe du ticket] comme texte et [ID du ticket] comme nombre. Utilisez uniquement des nombres ou uniquement du texte. Si nécessaire, utilisez la fonction STRING pour transformer les nombres en texte ou la fonction NUMBER pour transformer le texte en nombres. | [Groupe du ticket]+[ID du ticket] |
[Groupe du ticket]+STRING([ID du ticket]) Cette formule joint du texte comme illustré dans Recette Explore : joindre des attributs. Transformez l’attribut numérique en texte avec la fonction STRING. |
| Impossible d’utiliser VALUE(Délai avant résolution complète (min)) comme nombre et [Durée des tâches supplémentaires] comme texte. Utilisez uniquement des nombres ou uniquement du texte. Si nécessaire, utilisez la fonction STRING pour transformer les nombres en texte ou la fonction NUMBER pour transformer le texte en nombres. | VALUE(Délai avant résolution complète (min))+[Durée des tâches supplémentaires] |
VALUE(Délai avant résolution complète (min))+NUMBER([Durée des tâches supplémentaires]) Cette formule fait la somme de deux valeurs. Délai avant résolution complète (min) est un nombre, mais Durée des tâches supplémentaires est un champ de texte contenant des valeurs numériques. La meilleure approche est de créer un nouveau champ numérique personnalisé dans Support pour enregistrer une durée de tâche supplémentaire, qui fonctionne sans transformation dans Explore. Vous pouvez aussi transformer l’attribut texte en nombre avec la fonction NUMBER. |
| Impossible d’utiliser VALUE(Délai avant première réponse - min) comme nombre et "60" comme texte. Utilisez uniquement des nombres. | VALUE(Délai avant première réponse - min)/"60" |
VALUE(Délai avant première réponse - min)/60 Les opérations arithmétiques, comme les divisions, nécessitent des valeurs numériques. Une valeur entre guillemets est du texte, mais un nombre sans guillemets est un nombre. N’utilisez pas de guillemets ici. |
| Impossible d’utiliser COUNT(Commentaires) comme nombre et [Commentaire public] comme texte. Utilisez uniquement des nombres. | COUNT(Commentaires)-[Commentaire public] |
COUNT(Commentaires)-COUNT(Commentaires publics) Les opérations arithmétiques, comme les soustractions, nécessitent des valeurs numériques. Commentaire public est un attribut texte. Utilisez plutôt une mesure. |
Fonctions
| Exemple de message d’erreur | Formule incorrecte | Formule correcte |
|---|---|---|
| Impossible d’utiliser différents types dans l’instruction THEN. 1 est de type nombre et "0" est de type texte. Utilisez le même type. | IF [Statut du ticket]="Open" THEN 1 ELSE "0" ENDIF |
IF [Statut du ticket]= "Open" THEN 1 ELSE 0 ENDIF ou IF [Statut du ticket] = "Open" THEN "1" ELSE "0" ENDIF Les valeurs après les mots-clés THEN et ELSE doivent être du même type. Les guillemets indiquent du texte, leur absence indique un nombre. Résolvez cette erreur en utilisant l’une des deux méthodes ci-dessus. |
| Impossible d’utiliser 1 comme nombre et 2 comme nombre. Utilisez uniquement des booléens. | IF 1 OR 2 THEN [ID du ticket] ENDIF |
IF VALUE(Réponses des agents) = 1 OR VALUE(Réponses des agents) = 2 THEN [ID du ticket] ENDIF Les conditions dans la déclaration IF doivent être TRUE ou FALSE. La syntaxe correcte est : IF TRUE OR FALSE THEN [ID du ticket] ENDIF. Ajoutez plutôt des conditions. L’éditeur de formule n’évalue pas la validité des conditions elles-mêmes. |
| Impossible d’utiliser un nombre dans cette fonction. Utilisez du texte. | NUMBER([ID du ticket]) |
NUMBER([ID externe du ticket]) La fonction NUMBER transforme les attributs de texte avec des valeurs numériques en texte. L’attribut ID du ticket est un champ numérique et ne peut pas être utilisé avec cette fonction. Les attributs de texte comme ID externe du ticket peuvent l’être. |
| Impossible d’utiliser du texte, booléen, dans cette fonction. Utilisez du texte ou un nombre. | LINK("https://subdomian.zendesk.com/agent/organizations/" + STRING([ID de l’organisation du ticket]), [Case à cocher de l’organisation]) |
LINK("https://yoursubdomain.zendesk.com/agent/organizations/" + STRING([Ticket organization ID]), [Ticket organization name]) ou LINK("https://yoursubdomain.zendesk.com/agent/organizations/" + STRING([Ticket organization ID]), STRING([Organization check box])) La fonction LINK attend du texte comme deuxième paramètre. N’utilisez pas d’attribut booléen. Utilisez un attribut texte ou transformez l’attribut booléen avec la fonction STRING. |
| Impossible d’utiliser [Ticket créé - mois] comme texte ici. Utilisez le type horodatage. | DATE_LAST([Ticket créé - Mois]) |
DATE_LAST([Ticket créé - Horodatage]) La fonction DATE_LAST attend un attribut de type horodatage. |
| Impossible d’utiliser différents types de condition. Utilisez le type texte. | SWITCH ([Groupe du ticket]) {CASE "Support": "1" CASE 3: "2" } |
SWITCH ([Groupe du ticket]) {CASE "Support": "1" CASE "3": "2" } Comme Groupe du ticket est un attribut texte, toutes les conditions de cas doivent être de type texte. Placez le chiffre 3 entre guillemets pour en faire du texte. |
| Impossible d’utiliser différents types dans l’instruction SWITCH. "1" est de type texte et 2 est de type nombre. Utilisez le même type. | SWITCH ([Groupe du ticket]) {CASE "Support": "1"CASE "IT": 2 } |
SWITCH ([Groupe du ticket]) {CASE "Support": "1"CASE "IT": "2" } Les résultats de tous les cas doivent être du même type. Placez le chiffre 2 entre guillemets pour en faire du texte. |
| Vous ne pouvez pas utiliser différents types dans le tableau. Utilisez le même type. | IN([Instance de la partie d’appel], ARRAY(1, "2", "3")) |
IN([Instance de la partie d’appel], ARRAY(1, 2, 3)) Utilisez des guillemets pour toutes les valeurs s’il s’agit d’un attribut texte, ou ne les utilisez pas s’il s’agit d’un attribut numérique. L’instance de la partie d’appel est numérique, n’utilisez donc pas de guillemets. |
| Unité de temps non valide pour les dates données. | DATE_DIFF([Ticket résolu - Date], [Ticket créé - Date], "minutes") | Quand vous utilisez la fonction DATE_DIFF, vérifiez que l’unité de temps (troisième paramètre) correspond à la précision des champs de date. Pour les dates sans détails temporels (heures, minutes), seuls « année », « mois » ou « jour » sont autorisés. L’utilisation d’unités non prises en charge comme « minutes » provoquera une erreur. |
Messages d’erreurs d’agrégateur de mesures
| Exemple de message d’erreur | Formule incorrecte | Formule correcte |
|---|---|---|
| Impossible d’utiliser l’agrégateur SUM(mesure de la base de données). Utilisez l’agrégateur VALUE ou la fonction ATTRIBUTE_FIX ou ATTRIBUTE_ADD. | IF SUM(Temps d’attente du demandeur - min)>120 THEN "Long wait time" ELSE "Short wait time" ENDIF |
IF VALUE(Temps d’attente du demandeur - min)>120 THEN "Long wait time" ELSE "Short wait time" ENDIF Ce message d’erreur s’affiche dans les attributs calculés, pas les mesures. Utilisez l’agrégateur VALUE ici. |
| Impossible d’utiliser l’agrégateur COUNT(Tickets résolus). Utilisez l'agrégateur VALUE ou incluez les mesures dans la fonction ATTRIBUTE_FIX ou ATTRIBUTE_ADD. | IF COUNT(Tickets résolus)>1 THEN "Solved" ELSE "Unsolved" ENDIF |
IF ([Statut du ticket - Non trié] = "Solved" OR [Statut du ticket - Non trié] = "Closed") THEN "Solved" ELSE "Unsolved" ENDIF Ce message d’erreur s’affiche dans les attributs calculés. Pour remédier à ce problème, utilisez les mêmes conditions que la mesure Tickets résolus. |
| Impossible d’utiliser COUNT(Affectations des tickets aux développeurs) dans un attribut calculé. Incluez la mesure dans la fonction ATTRIBUTE_FIX ou ATTRIBUTE_ADD. | IF COUNT(Affectations des tickets aux développeurs)>1 THEN "Solved" ELSE "Unsolved" ENDIF |
IF ATTRIBUTE_FIX(COUNT(Affectations des tickets aux développeurs), [ID de la mise à jour du ticket])>1 THEN "Multiple escalations" ELSE "One or no escalations" ENDIF Ce message d’erreur s’affiche dans les attributs calculés. Si la formule originale est complexe, utilisez la fonction ATTRIBUTE_FIX pour spécifier des niveaux d’agrégation. Calculez-la au niveau ID de la mise à jour du ticket . |
| Temps dans le statut contient déjà des agrégateurs. Remplacer AVG par SUM ou assurez-vous que Temps dans le statut contient uniquement des agrégateurs VALUE. | AVG(Temps dans le statut) |
SUM(Temps dans le statut) Temps dans le statut est une mesure imbriquée avec un agrégateur existant. Calculer une moyenne au-dessus d’une médiane n’est pas autorisé. Définissez l’agrégateur principal sur SUM ou remplacez l’agrégateur inférieur par VALUE. |
Autres message d’erreur
| Exemple de message d’erreur | Formule incorrecte | Formule correcte |
|---|---|---|
| [Statuts des tickets] n’existe pas dans ce jeu de données. Vérifiez qu’il n’y a pas de faute de frappe. | [Statuts des tickets] ="Solved" |
[Statuts des tickets] ="Solved" Les raisons courantes pour cette erreur incluent :
|
| [Groupe calculé] a une formule mal configurée. Corrigez-la avant d’enregistrer. | IF [Groupe calculé] = "light" THEN TRUE ELSE FALSE ENDIF | Le groupe calculé est mal configuré. Corrigez-le d’abord. |
| Le calcul fait référence à lui-même ici COUNT(Tickets ventes). Supprimez-le ou remplacez-le. | COUNT(Tickets ventes)/COUNT(Tickets) | N’ajoutez pas de formule à l’intérieur d’elle-même. Dans ce cas, l’utilisateur modifie Tickets de ventes et essaie de l’inclure dans la formule. |
| Maximum 3 niveaux dans un calcul. Supprimez le calcul imbriqué ici : SUM((Délai avant la deuxième réponse) | MED(Délai avant la deuxième réponse) / MED(Délai avant première réponse - min | La mesure de délai avant la deuxième réponse est imbriquée. Le nombre maximum de calculs imbriqués autorisé est de 3. |
| Impossible d’utiliser [Groupe du ticket] ici. INCLUDES_ALL ne peut être utilisé que sur les attributs de marqueurs. | INCLUDES_ALL([Groupe du ticket], "Assistance", "Ventes") |
Les fonctions INCLUDE ne fonctionnent qu’avec des attributs de marqueurs. Pour les autres attributs, utilisez la fonction IN. |
| [Mesure calculée de plage de dates] contient une formule mal configurée. Corrigez-la avant d’enregistrer. | COUNT([Mesure calculée de plage de dates]) | Les mesures calculées de plage de dates ne sont pas prises en charge dans les mesures calculées. Utilisez plutôt une mesure calculée de résultat. |
| Vous ne pouvez pas utiliser [fonction] ici. Utilisez INCLUDES_ALL ou INCLUDES_ANY pour les attributs de marqueurs. | IF (CONTAINS([Marqueurs du ticket],"ventes")) THEN "Ventes" ELSE "Prod" ENDIF |
INCLUDES_ALL([Marqueurs de ticket], "Ventes", "Prod") Seuls INCLUDES_ALL et INCLUDES_ANY créer des rapports sur les marqueurs. |