Champs calculés dans les sources de données
Champs calculés dans les sources de données
Ajoutez de nouvelles colonnes et créez des calculs basés sur les données que vous avez déjà. Plus d'options de données vous permettent de visualiser des KPI plus précis.
Les champs calculés ne sont disponibles que dans les sources de données d'intégration et manuelles (non pris en charge dans SQL ou API).
Cette fonctionnalité effectue des calculs en temps réel, ce qui peut entraîner une performance plus lente sur de grands ensembles de données.
Apprenez à utiliser les champs calculés : 👇
Utilisation des décimales dans les champs calculés
Si vous souhaitez utiliser un calcul qui inclut un point décimal (comme 2.6 ou 30.075), utilisez le point au lieu d'une virgule. Cela s'applique à toutes les localisations.
La syntaxe actuelle utilise des virgules pour manipuler les arguments ou séparer une chose d'une autre. Par conséquent, si vous souhaitez inclure un nombre décimal, veuillez utiliser le point.
Valeur par défaut du champ dans les champs calculés
Vous pouvez définir une valeur par défaut dans votre champ calculé au cas où certaines lignes manqueraient de données. Si vous ajoutez une valeur par défaut, cette valeur remplira toutes les lignes vides et les autres lignes conserveront leur valeur d'origine.
Vous pouvez utiliser cette fonction sur un seul champ (par exemple, pour afficher "inconnu" dans les lignes sans données) ou intégrer la valeur par défaut dans un calcul.
Exemples :
-
Field("ID de l'espace de travail","1234") -
Field("Prix") + Field("Montant extraordinaire", "0") -
Field("Raison de la perte","inconnu") -
Field("Date de fin", Now())- retourne la date de fin. Si la date de fin est vide, retourne la date et l'heure actuelles. -
Field("Responsable du succès client", Field("Responsable d'équipe CSM"))- retourne les noms des CSM. Si le champ est vide, alors retourne le nom du Responsable d'équipe.

Calculs simples utilisant Field()
Avec Field(), vous pouvez effectuer différents calculs avec les champs déjà disponibles dans votre source de données.
Utilisez cette syntaxe : Field("Champ_1") + Field("Champ_2")
Exemples :
-
Calculez le temps total en minutes :
Field("Temps total") / 60 -
Additionnez les valeurs de deux champs :
Field("Prix") + Field("Montant de la TVA") -
Soustrayez les valeurs d'un champ à un autre :
Field("Prix total") - Field("Taxe totale") -
Combinez les valeurs de deux champs de texte. Voir le nom de l'organisation et son code pays (ajoutez un espace vide entre les deux pour les séparer) :
Field("Nom de l'organisation") + " " + Field("Pays")
Les noms de champs sont sensible à la casse, donc si vous tapez le calcul manuellement, vous devez entrer les noms exactement comme ils apparaissent dans la source de données.

La fonction Now() dans les champs calculés
Cette fonction retourne la date et l'heure actuelles. Vous pouvez l'utiliser comme une déclaration indépendante – Now() – ou la combiner avec d'autres fonctions.
Utilisez cette syntaxe : Now()
Exemples :
-
Retournez la date et l'heure actuelles :
Now() -
Retournez la date et l'heure d'un champ appelé Date de fin. Si le champ a des valeurs vides, le calcul retournera la date et l'heure actuelles :
Field("Date de fin", Now()) -
Différence de temps entre la date de début et maintenant (en secondes) :
DateDiff(Field("Démarré à"), Now()) -
Calculez la différence de temps entre Date de début et Date de fin. Si la date de fin contient des valeurs vides, le champ calculé retournera la date et l'heure actuelles :
DateDiff(Field("Date de début"), Field("Date de fin", Now())) -
Retournez le premier jour du mois prochain :
Date(Year(Now()), Month(Now())+1, 1)
Fréquence de mise à jour
-
Sources de données – Les valeurs dans le champ calculé seront mises à jour chaque fois que vous actualisez la page de la source de données.
-
Tableaux de bord – Les données sur vos widgets se mettront à jour dès que votre source de données se met à jour (nouvelles inscriptions ou mises à jour) ou chaque fois que vous cliquez sur Recalculer sur le tableau de bord.

Différence de date entre deux champs de source de données
La fonction DateDiff() calcule la différence de temps entre deux champs de date en secondes. L'ordre dans lequel vous ajoutez les champs n'est pas important, Plecto affichera toujours la valeur absolue.
Utilisez cette syntaxe : DateDiff(date_1, date_2)
Exemples :
-
Différence de date entre la date de début et maintenant (en secondes) :
DateDiff(Field("Démarré à"), Now()) -
Calculez combien de temps il faut pour conclure un accord (en minutes) :
DateDiff(Field("Date de création"), Field("Date de clôture"))/60 -
Calculez la différence de date entre le 20 avril 2024 à 9h15 jusqu'à maintenant (en secondes) :
DateDiff(Date(2024, 4, 20, 9, 15, 00), Now())
Les noms de champs sont sensible à la casse, donc si vous tapez le calcul manuellement, vous devez entrer les noms exactement comme ils apparaissent dans la source de données.


Convertir du texte en nombres dans votre source de données
Utilisez cette fonction si le champ de votre source de données contient des nombres mais est formaté en tant que texte. La fonction ToNumber() résout le problème où vous ne pouvez pas sélectionner un champ lors de la création d'une formule car il est formaté en tant que texte.
Utilisez cette syntaxe : ToNumber(Field("Unités"))
Exemples :
-
Convertir le format texte en format nombre dans le champ Nombre d'articles :
ToNumber(Field("Nombre d'articles")) -
Formatez les valeurs des Unités en nombres. Dans les inscriptions où la conversion échoue, la valeur par défaut affichée sera 0 :
ToNumber(Field("Unités"), 0)
Problème connu
Lors de la conversion, ToNumber() supprime les virgules : 1,000 (texte) sera converti en 1000 (nombre). Un point est utilisé comme séparateur décimal : 1.23 (texte) sera converti en 1.23 (nombre).



Fonction IF() dans les champs calculés
Créez un champ calculé avec une instruction IF et générez des valeurs conditionnelles dans votre source de données. La condition peut être n'importe laquelle des fonctions disponibles dans les champs calculés. Le IF() dans les champs calculés prend également en charge les instructions AND et OR.
Utilisez la syntaxe suivante :
-
If(condition, if_true, if_false)
-
If(Field("Valeur")=100,1,0)
Exemples :
-
Retournez toutes les valeurs numériques : If(Field("Montant")>=200,1,0)
-
Retournez des valeurs textuelles. Le texte doit être entouré de guillemets : If(Field("Montant")>=200,"Objectif atteint","En cours")
-
Vérifiez les jours ouvrables par rapport aux week-ends : Exemple 1 : If(DayOfWeek(Field("date"))<=5, "Jour ouvrable", "Week-end") Exemple 2 : If(DayOfWeek(Field("date"))<=5, 1, 0)
-
True() retourne "Oui" et False() retourne "Non" : If(Field("Montant")>=200,True(),False())
-
Retournez des valeurs d'autres champs : If(Field("Montant")>=200,Field("Canal 1"),Field("Canal 2"))
-
Utilisez n'importe quelle autre fonction comme condition : Exemple 1 : If(DateDiff(Field("Date de début"),Field("Date de fin"))>(2*24*3600),True(),False()) Exemple 2 : If(DateDiff(Field("Date de début"),Now())<(4*3600),"À temps","Retardé")
-
Instruction AND (&&) : If(Field("Campagne")=="Réagir"&&(Field("Taille de l'organisation")>=100,Field("AE Grand"),Field("AE Par défaut"))
-
Instruction OR (||) : If(Field("Campagne")=="Réagir"|| Field("Source")=="Référence",Field("AE Grand"),Field("AE Par défaut"))
-
Fonction IF imbriquée : If(Field("Statut")=="Gagné",If(Field("Pays")=="US",1,2),0)
-
Convertir les horodatages avec Epoch converter et utiliser des dates dans l'instruction : IF(Field("Date de début") >= 1677628800000 && Field("Date de début") <= 1709251199000, True(),False())
Bon à savoir :
-
Les lignes vides retourneront des lignes vides.
-
Vous ne pouvez pas mélanger deux types de champs différents comme le texte et le nombre pour est vrai, est faux. Une formule comme celle-ci ne fonctionnera pas : If(Field("Montant")>=200,1,"Non")
La fonction Switch dans les champs calculés
Avec Switch(), nous spécifions des paires de conditions et les valeurs retournées si ces conditions sont remplies.
La fonction Switch utilise la syntaxe suivante :
Switch(Field("Taille de l'organisation") <=50, "Tom",Field("Taille de l'organisation") >50, "Maria","Anna")
Exemples :
-
Switch(Condition1, Résultat1, Condition2, Résultat2, Condition3, Résultat3). Si la valeur dans le champ Jour de la semaine est 1, retournez Lundi, si la valeur est 2, retournez Mardi, etc. :
Switch( Field("Jour de la semaine") == 1, "Lundi", Field("Jour de la semaine") == 2, "Mardi", Field("Jour de la semaine") == 3, "Mercredi" ) -
Switch(Condition1, Résultat1, ..., Condition5, Résultat5, valeur_par_défaut). Si la valeur dans le champ Jour de la semaine est 1, retournez Lundi, si la valeur est 2, retournez Mardi. Si aucune des conditions n'est remplie, retournez tous les autres jours :
Switch( Field("Jour de la semaine") == 1, "Lundi", Field("Jour de la semaine") == 2, "Mardi", "tous les autres jours" ) -
Si la différence de date-heure entre Reçu à et Répondu à est inférieure ou égale à 20 secondes, retournez Rapide. Si entre 21 et 30 secondes, retournez Légèrement plus long. Si plus de 31 secondes, retournez Trop long :
Switch( DateDiff(Field("Reçu à"),Field("Répondu à")) <= 20, "Standard", DateDiff(Field("Reçu à"),Field("Répondu à")) <= 30, "Légèrement plus long", "Trop long" ) -
Trouvez le bon Responsable de compte :
Switch( Field("Taille de l'organisation") >= 100 && Field("Pays") == "GB", "Adam", Field("Taille de l'organisation") >= 30 && Field("Pays") == "CL", "Anna", "Jonathan" ) -
Switch "FR" à 🇫🇷 et d'autres drapeaux de pays :
Switch( Field("Pays d'adresse de l'organisation") == "FR", "🇫🇷", Field("Pays d'adresse de l'organisation") == "DK", "🇩🇰", Field("Pays d'adresse de l'organisation") == "ES", "🇪🇸", Field("Pays d'adresse de l'organisation") == "US", "🇺🇸" )
Bon à savoir :
-
L'ordre est important – nous retournons la valeur de la première condition remplie.
-
Avec un nombre pair d'arguments, nous supposons qu'il n'y a pas de valeur par défaut. Si le nombre d'arguments est impair, nous traitons le dernier argument comme valeur par défaut.
-
Les conditions peuvent être plus complexes, elles ne doivent pas nécessairement se référer à un seul champ.
-
Tous les comparateurs sont disponibles :
Égal == N'est pas égal != Supérieur à > Inférieur à < Et && Ou || -
Il n'y a pas de limite au nombre d'arguments que vous pouvez ajouter dans la fonction Switch.
-
Diviser la formule en lignes séparées n'est pas nécessaire, mais cela améliore la lisibilité.
-
Tous les résultats (et par défaut) doivent être du même type.



Convertir des nombres en texte dans votre source de données
Utilisez cette fonction si le champ de votre source de données contient des nombres et que vous souhaitez les formater en tant que texte.
Avec la fonction ToText(), vous pouvez combiner deux sorties de texte dans le même champ. Par exemple, ajoutez le Nom du compte + ID du compte dans le même champ.
Utilisez cette syntaxe : ToText(Field("ID du compte"))
Exemples :
-
Combinez Nom du compte et ID du compte dans un seul champ :
Field("Nom du compte") + ToText(Field("ID du compte"))Si vous souhaitez ajouter un espace entre le Nom du compte et l'ID, vous pouvez ajouter un espace vide
+ " " +dans le calcul, comme ceci :Field("Nom du compte") + " " + ToText(Field("ID du compte")) -
Formatez les valeurs de champ en texte. Dans les inscriptions où la conversion échoue, ajoutez une réponse par défaut "inconnu" :
ToText(Field("Numéro d'inscription", "inconnu"))
Travailler avec des arguments de date-heure uniques
Vous pouvez extraire des parties individuelles d'une date-heure ou les utiliser comme arguments dans une fonction Date(). Année, Mois, Jour du mois, Jour de la semaine, Jour de l'année, Semaine de l'année, Heure, Minute, Seconde.
Exemples :
-
Retournez l'année actuelle :
Year(Now()) -
Retournez le mois d'un champ (par exemple, 5 pour mai) :
Month(Field("date")) -
Retournez quel jour du mois nous sommes actuellement (par exemple, 11 pour le 11 du mois) :
DayOfMonth(Now()) -
Retournez quel jour nous sommes actuellement (par exemple, 2 pour mardi) :
DayOfWeek(Now()) -
Utilisez ces fonctions dans des instructions IF pour vérifier les jours ouvrables par rapport aux week-ends :
-
If(DayOfWeek(Field("date"))<=5, "Jour ouvrable", "Week-end") -
If(DayOfWeek(Field("date"))<=5, 1, 0) -
If(DayOfWeek(Field("date"))<=5, True(), False())
-
-
Retournez quel jour de l'année est la date fournie :
DayOfYear(Date(2024, 5, 25))– celui-ci est 146 😁 -
Retournez les numéros de semaine (de 1 à 52) :
WeekOfYear(Now()) -
Retournez l'heure actuelle dans le fuseau horaire de Londres :
Hour(Now(), "Europe/London") -
Retournez la minute d'un champ de date :
Minute(Field("date_modifié")) -
Retournez la seconde actuelle. Les nombres se mettent à jour à chaque actualisation de la page :
Second(Now())
Si aucun fuseau horaire n'est ajouté, le défaut sera UTC.
La fonction Date() dans les champs calculés
La fonction Date() retourne une date. Elle prend 3 à 7 arguments (les 3 premiers sont obligatoires) : année*, mois*, jour*, heure, minute, seconde, fuseau horaire.
Cette fonction est très personnalisable, vous pouvez donc combiner des nombres statiques, d'autres fonctions et des dates provenant d'autres champs pour retourner des dates personnalisées, comparer des dates ou calculer des différences de dates.
Utilisez cette syntaxe : Date(Année, Mois, Jour, Heure, Minute, Seconde, Fuseau horaire)
Exemples :
-
Utilisez Date() pour retourner une date statique. Par exemple,
Date(2024, 4, 20, 9, 15, 00)retournera 2024-04-20 09:15:00 dans le champ calculé. -
Ajoutez un fuseau horaire comme dernier argument. Si aucun fuseau horaire n'est ajouté, le défaut sera UTC.
Date(2024, 4, 20, 9, 15, 00, "Europe/Berlin")Si vous utilisez des boutons de la boîte à outils, Plecto ajoutera le fuseau horaire défini dans votre organisation.
-
Combinez Date() avec d'autres fonctions et champs de source de données :
-
Date(Year(Now()),Month(Now()),Day(Now()),Hour(Now()), Minute(Now()), Second(Now()), "UTC") -
Date(Year(Field("date")), Month(Now()), 20, "UTC")
-
-
Retournez le premier mars l'année prochaine :
Date(Year(Now())+1, 3, 1) -
Calculez la différence de date entre le 20 avril 2024 à 9h15 jusqu'à maintenant (en secondes) :
DateDiff(Date(2024, 4, 20, 9, 15, 00), Now()) -
Incluez Date() dans une instruction IF. Si la Date de fin est égale ou inférieure au 10 mai 2024 à 14h (une date statique), montrez le message "Prêt avant la date limite" :
IF(Field("Date de fin")<=Date(2024, 5, 10, 14, 00, 00), "Prêt avant la date limite","Prêt après la date limite")
Si aucun argument temporel n'est fourni (si heure, minute, seconde sont omis), Plecto par défaut à 00:00:00.
Fonction Time() dans les champs calculés
Cette fonction retourne l'heure et la minute d'un champ de date, par exemple : 13:45. Vous pouvez l'utiliser comme une déclaration indépendante – Time() – ou combiner Time avec d'autres fonctions.
La fonction Time prend jusqu'à deux arguments : date, fuseau horaire. Par exemple, Time(Field("Date de clôture"), "Europe/Berlin")
Utilisez cette syntaxe : Time()
Exemples :
-
Retournez l'heure et la minute d'un champ Heure de clôture. Si aucun fuseau horaire n'est spécifié, le défaut sera UTC :
Time(Field("Heure de clôture"),"Europe/Copenhague") -
Retournez l'heure actuelle :
Time(Now()) -
Retournez la date et l'heure d'un champ appelé Date de fin. Si le champ a des valeurs vides, le calcul retournera la date et l'heure actuelles :
Time(Field("Date de fin", Now()), "Europe/Paris") -
Retournez l'heure d'une date de début de widget sur un tableau de bord :
Time(StartDate(), "Europe/Copenhague")
Fonction Contains dans les champs calculés
Contains() est une fonction booléenne sensible à la casse qui retourne "Oui" ou "Non" dans le champ calculé.
Utilisez cette syntaxe : Contains(Field("nom_du_champ"), "mot_clé_contenant")
Exemples :
-
Vérifiez si le champ Nom de la campagne contient le mot "préparer". Le champ calculé retournera soit "Oui" soit "Non."
Contains(Field("Nom de la campagne"), "préparer") -
Vérifiez si la chaîne UUID du membre (champ appelé Employé d'inscription) contient "85e" :
Contains(Field("member_uuid"), "85e")

Fonctions Employé & Équipe dans les champs calculés
Améliorez vos sources de données avec les fonctions Employee() et Team() ! Incluez des employés ou des équipes dans l'équation et canalisez vos données en fonction de qui possède l'inscription !
Utilisez cette syntaxe :
-
Employee("Pierre Dubois")
-
Team("Ventes France")
Exemples :
-
Si le champ Contact principal est égal au nom "Pierre Dubois", retournez "Pipeline A". Dans tous les autres cas, retournez "Pipeline B".
IF(Field("Contact principal")==Employee("Pierre Dubois"),"Pipeline A","Pipeline B") -
Si l'UUID de l'équipe est égal à l'équipe appelée "Marketing", retournez 100. Sinon, retournez 0.
If(Field("team_uuid") == Team("Marketing"), 100, 0)
Timedelta() – Décaler un champ de date
Ajoutez le paramètre Timedelta() aux champs de date et ajoutez ou soustrayez des secondes à une date.
Utilisez cette syntaxe : Timedelta()
Exemples :
-
Ajoutez 3600 secondes (1 heure) à la date et l'heure actuelles :
Now() + Timedelta(3600) -
Soustrayez 86400 secondes (24 heures) de la date de création :
Field("Date de création") - Timedelta(86400)
