Dans Explore, vous pouvez rédiger des formules pour les mesures et les attributs personnalisés. Pour vous assurer que les formules fonctionnent, créez-les correctement. Si votre formule n’est pas construite correctement, l’éditeur de formule affiche un message d’erreur en temps réel pendant que vous rédigez ou modifiez la formule. 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 que vous pourriez voir dans l’éditeur de formule et vous fournit des conseils pour vous aider à corriger votre formule, avec des exemples de formules correctes et incorrectes.

Remarque : À partir du 13 août 2024, les rapports avec des formules mal configurées qui ont fonctionné jusqu’à présent ne fonctionneront plus et un message d’erreur s’affichera. Pour en savoir plus, consultez l’article : Abandon des calculs non valides dans Explore.

Cet article aborde les sujets suivants :

  • Correction des formules mal configurées
  • Types de messages d’erreur dans l’éditeur de formule

Articles connexes :

  • Ressources pour la rédaction de formules
  • Fonctions Explore - Référence

Correction des formules mal configurées

Si une mesure ou un attribut calculé contient une formule mal configurée, elle ou il ne renverra pas de résultats. Identifiez les formules mal configurées en vérifiant les emplacements suivants :

  • 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 utilise la formule et corrigez-la dans l’éditeur de formule. Puis republiez tous les tableaux de bord qui utilisent ce rapport.

Remarque – Si une formule mal configurée est imbriquée dans un calcul non basé sur les formules (une mesure de plage de dates ou un attribut de groupe ou de jeu, par exemple), aucun message d’erreur ne s’affiche dans ce calcul. Pour voir le message d’erreur dans l’éditeur de formule, ouvrez le calcul imbriqué d’origine.
Conseil : vous pouvez demander aux créateurs de rapports de corriger leurs formules. La colonne Créée par de la bibliothèque des rapports indique l’utilisateur qui a créé chaque rapport. Si vous ne voyez pas cette colonne, ajoutez-la en cliquant sur l’icône des colonnes () et en sélectionnant Créée par.

Pour mettre une formule mal configurée à jour

  1. Dans Explore, cliquez sur l’icône Rapports () pour ouvrir dans la bibliothèque de rapports
  2. Cliquez sur l’onglet Mises à jour nécessaires

  3. Cliquez sur l’un des rapports répertoriés pour l’ouvrir
  4. Pour chaque mesure ou attribut calculé :
    1. Cliquez sur la mesure ou sur l’attribut, puis sur l’icône de crayon à papier
    2. 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é.

    3. (facultatif) Créez une copie de la mesure ou de l’attribut avant d’effectuer des modifications. Cela évite d’impacter les rapports existants pendant le processus de résolution.
    4. 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

    5. (facultatif) Si vous avez créé une copie de la mesure ou de l’attribut, mettez l’original à jour.
  5. Enregistrez le rapport

Pour republier les tableaux de bord affectés

  1. Cliquez sur l’icône Tableaux de bord () pour ouvrir la bibliothèque de tableaux de bord
  2. Cliquez sur l’onglet Mises à jour nécessaires
  3. Placez votre curseur sur l’un des tableaux de bord et cliquez sur Modifier
  4. 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
  5. 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
  • Messages d’erreurs de syntaxe généraux
  • Messages d’erreurs de types de données
  • Messages d’erreurs d’agrégateur de mesures
  • Autres message d’erreur

Erreurs les plus courantes dans les formules

La vidéo ci-dessous vous montre comment résoudre certains avertissements courants.

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 au moins en partie incorrecte.

  • « Il y a un problème au niveau de la formule. Vérifiez votre syntaxe de calcul et réessayez. »

Les raisons les plus courantes pour cette erreur sont répertoriées dans le tableau ci-dessous.

Raison Formule incorrecte Formule correcte
Vous avez ouvert un crochet ou une parenthèse, mais vous ne l’avez pas fermé. 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 que vous pouvez voir 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) à
  • La jointure des opérations arithmétiques et des valeurs de texte
  • Fonctions

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"

Le même type de données doit être utilisé 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]

Le même type de données doit être utilisé 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"

Le même type de données doit être utilisé 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

Le même type de données doit être utilisé 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 et il ne faut pas utiliser 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])

L’objectif de cette formule est de joindre du texte comme illustré dans Recette Explore : joindre des attributs. C’est pour cette raison que l’attribut numérique doit être transformé 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])

L’objectif de cette formule est d’additionner 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 la durée des tâches supplémentaires, qui ne nécessitera pas de transformation et sera prêt à l’emploi 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 considérée comme du texte, mais un nombre sans guillemets est considéré comme un nombre. Ici, il ne faut pas utiliser de guillemets.

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. Vous devez utiliser 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 utilisées après les mots-clés THEN et ELSE doivent être du même type. Une valeur entre guillemets est considérée comme du texte, mais un nombre sans guillemets est considéré comme un nombre. Il y a donc deux façons de résoudre cette erreur, comme expliqué 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 définies 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. Cependant, 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 est faite pour transformer les attributs de texte avec des valeurs numériques en texte. L’attribut ID du ticket est un champ numérique et ne peut donc pas être utilisé avec cette fonction. Cependant, 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://subdomain.zendesk.com/

ageagent/organizations/" +

STRING([ID de l’organisation du ticket]), [Case à cocher de l’organisation])

LINK(”
https://subdomain.zendesk
.com
/agent/organizations/” +
STRING([ID de l’organisation du ticket]), [Nom de l’organisation du ticket])

ou

LINK(”
https://subdomain.zendesk
.com
/agent/organizations/” +
STRING([ID de l’organisation du ticket]),
STRING([Case à cocher de l’organisation]))

La fonction LINK s’attend à ce que le deuxième paramètre soit du texte, c’est pour cette raison que vous ne pouvez pas utiliser d’attribut booléen. Il y a deux options, comme illustré ci-dessus. Vous pouvez utiliser un attribut texte ou transformer l’attribut booléen en texte 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, les conditions de tous les cas doivent être de type texte. Une valeur entre guillemets est considérée comme du texte, mais un nombre sans guillemets est considéré comme un nombre. Le 3 doit donc être en guillemets.

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. Une valeur entre guillemets est considérée comme du texte, mais un nombre sans guillemets est considéré comme un nombre. Le 2 doit donc être en guillemets.

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 si c’est un attribut texte ou n’utilisez pas de guillemets pour toutes les valeurs si c’est un attribut numérique. Instance de la partie d’appel est un attribut numérique et la formule ne doit donc pas utiliser de guillemets

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. Dans ce cas, vous devez utiliser l’agrégateur VALUE.

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, pas les mesures. La meilleure façon de corriger cette erreur est d’utiliser les mêmes conditions que celles utilisées dans la mesure Tickets résolus.

Vous pouvez donc mettre la formule à jour comme illustré ci-dessus.

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, pas les mesures. Si la formule originale est plus complexe et ne peut pas être réutilisée, essayez d’utiliser la fonction ATTRIBUTE_FIX pour spécifier à quels niveaux l’attribut doit être agrégé. Dans ce cas, il doit être calculé au niveau ID de la mise à jour du ticket ID.

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. Sa formule contient déjà un agrégateur. Par exemple MED(Délai avant première réponse (h)). Calculer une moyenne au-dessus d’une médiane n’est pas autorisé, donc l’agrégateur de haut niveau doit être défini sur SUM, ou l’agrégateur de bas niveau changé en 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 les plus courantes pour cette erreur sont :

  • La mesure ou l’attribut utilisé provient d’un autre jeu de données.
  • Il y a une faute de frappe dans le nom de la mesure ou de l’attribut.
  • Le nom de la mesure ou de l’attribut n’est pas écrit dans la langue du profil de l’utilisateur.
  • La formule fait référence à une mesure ou un attribut calculé dont le nom inclut des guillemets. Supprimez les guillemets pour résoudre l’erreur.

Dans cet exemple, il y a une faute de frappe dans le nom de l’attribut.

[Groupe calculé] a une formule mal configurée. Corrigez-la avant d’enregistrer. IF [Groupe calculé] = "light" THEN TRUE ELSE FALSE ENDIF La formule de Groupe calculé est mal configurée. Vous devez donc commencer par corriger ce problème.
Le calcul fait référence à lui-même ici COUNT(Tickets ventes). Supprimez-le ou remplacez-le. COUNT(Tickets ventes)/COUNT(Tickets) Vous ajoutez une formule à l’intérieur d’elle-même. Dans ce cas, la formule en train d’être modifiée est Tickets ventes et l’utilisateur essaie d’ajouter Tickets ventes à l’intérieur de 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 calculée Délai avant la deuxième réponse est basée sur un autre calcul, lui-même basé sur un autre calcul. On parle de calculs imbriqués. 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")
  • INCLUDES_ALL([Marqueurs de tickets], "assistance", "ventes")

  • IN([Groupe du ticket], ARRAY( "Assistance", "Ventes"))

Les fonctions INCLUDE ne sont autorisées 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. Pour effectuer des calculs en utilisant des mesures calculées de plage de dates, utilisez plutôt une mesure calculée de résultat.

Réalisé par Zendesk