Kantree embarque un langage de requête puissant, qui vous permet de filtrer ou rechercher des cartes, ou encore de calculer des choses à partir d’elles.

Voici le sommaire de cet article, cliquez sur la partie qui vous intéresse pour vous aider à tirer pleinement profit de ce langage :

  1. Où l’utiliser ?
  2. Les filtres sur les cartes
  3. L’utilisation dans les champs d’une carte
  4. Les opérateurs de conditions
  5. L’utilisation du KQL en mode avancé
  6. La différence entre les champs KQL et les variables
  7. Quelques exemples

Les endroits où utiliser le KQL

Vous pouvez utiliser ce langage dans de multiples occasions:

Depuis le Workspace

  • Menu “Filtrer” avec l’assistant KQL ou l’éditeur

  • Recherche avec l’éditeur KQL

    Ajoutez vos critères + Entrée pour visualiser le résultat de recherche.

    Depuis la Recherche globale sur l’ensemble des workspaces (barre latérale gauche)

    Exemple avec une recherche texte :

Depuis une vue Dashboard sur un workspace ou multi workspaces pour

  • filtrer

  • calculer des valeurs

Depuis une carte pour

  • calculer des valeurs à partir de données inclues dans les autres champs de la carte, via un champ Formule.

Filtrer les cartes

Le langage KQL est en anglais. Vous pouvez chercher du texte ou tout type de valeur présente dans les champs vos cartes. Il existe également des champs spéciaux communs à toutes les cartes.

Depuis le menu Filtrer dans un Workspace , vous avez accès à l’assistant KQL qui vous permet d’accéder aux requêtes les plus communes.

Si vous ne trouvez pas ce dont vous avez besoin vous pouvez utiliser l’éditeur KQL.

Les différents types de filtres

Les filtres textuels

Pour rechercher parmi les titres des cartes, utilisez juste les mots-clé que vous avez en tête.
Il y a 3 mots-clé que vous ne pouvez pas utiliser directement, parce qu’ils sont réservé par le système de recherche: and, or, not.
Si vous voulez quand même les utiliser dans votre recherche, vous pouvez les entourer de guillemets (ie. oranges "and" berries).

Pour chercher des cartes qui ne correspondent pas au mots-clé, passez en mode éditeur KQL et ajoutez le mot-clé not devant votre recherche (ie. not oranges).


Si vous avez besoin d’exclure les cartes correspondant à une phrase, entourez les mots-clé de guillemets (eg. not "oranges berries").

Les filtres par référence de carte

Pour chercher une carte avec une référence spécifique, utilisez # suivi de la référence (eg. #123).

Les filtres par groupe / valeur de champ Label

Pour chercher une carte qui est dans un groupe, utilisez # suivi par le nom du groupe. Si le nom du groupe contient des espaces, ignorez-les (ie. pour cherche les cartes dans le groupe “Liste 2”, utilisez #liste2).

Les filtres par membre**

Pour chercher une carte qui a un membre du projet dans au moins un de ses champs, utilisez @ suivi du nom d’utilisateur (eg. @username). Vous pouvez utilisez @me pour cherchez vos propres cartes.

Groupe/ Label et Membres composés de . et d’espace Les noms d’utilisateur et les groupes peuvent contenir des . et des espaces. Pour utiliser des mots avec ces caractères, entourez-les d’accolades@{user name} et #{List 2}.

Champs

Vous pouvez chercher des cartes à partir de leurs champs en utilisant l’un des deux syntaxes suivantes: champ=valeur ou {champ}=valeur. La première ne peut seulement être utilisée avec des noms de champ sans caractères spéciaux et sans espaces.

Les opérateurs disponibles sont :

  • =: égal à (eg. {Contact} = "john@doe.com")
  • !=: différent de (eg. {Nombre d'heures estimé} != 10)
  • > ou >=: supérieur à et supérieur ou égal à (eg. {Nombre d'heures estimé} > 10)
  • < ou <=: inférieur à et inférieur ou égal à (eg. {Nombre d'heures estimé} <= 10)
  • ~=: à peu près égal à (pour des valeurs textuelles). (eg. description ~= orange)

Champ avec une liste de valeurs
Si le champ est une liste de valeurs (comme les champs de type membres), utilisez l’opérateur in : @username in Assignés.

Quand on compare des champs, les valeurs peuvent être :

  • une valeur vide (qui veut dire que la carte n’a pas de valeur pour ce champ): empty (eg. trouver toutes les cartes sans description: description=empty)
  • un nombre: 10 ou 12.1 ou -3.4
  • une chaine de caractères: mot ou "plusieurs mots entourés par des guillemets"
  • yes ou no (pour les champs oui/non)
  • une date: une chaine de caractères entourée de guillemets utilisant le format: YYYY-MM-DD (eg. "2017-02-05"). Quelques mots-clé spéciaux peuvent être utilisés en tant que date: today, tomorrow, yesterday. (eg. {due date}<today)
  • un membre: @username
  • une référence de carte: #123
  • une référence d’object (voir plus bas)

Champ Formule

Dans un champ formule, vous pouvez aussi utiliser des expressions arithmétiques + - / *

exemple : 3 + 4

Si vous souhaitez faire des calculs basés sur plusieurs champs formule alors, pensez à utiliser as_number() pour convertir en donnée “nombre”. En effet, les résultats par défaut des champs formule sont considérés par Kantree comme du texte.

Si je souhaite multiplier le résultat d’un champ formule par le résultat d’un champ formule, j’indique dans le 3e champ formule qui portera le résultera de l’opération ceci :

as_number({formule n°1})*as_number({formule n°2})

Champs spéciaux KQL

-Champs KQL :Utilisés pour filtrer vos vues, créer des conditions pour déclencher les automatisations, filtrer dans une requête d’automatisation et dans dans les requêtes de vos vues Dashboard,
Calculer dans un champ formule (créer une valeur avec d’autres valeurs, pas nécessairement des nombres)

  • ref: référence de carte (eg. ref=123)
  • title: titre de carte (eg. title="ma tâche")
  • created at: la date de création de la carte (exemple de filtre :{created at}="202-02-01")
    Vous pouvez aussi utiliser ces champs pour afficher une valeur sur votre carte.

    Si vous souhaitez utiliser cette valeur dans un autre champ formule par exemple pour calculer une nouvelle date, pensez à faire précéder de as_date car les résultats de champs Formule sont par défaut du format Texte.

    exemple : as_date({Date de livraison}+period(“2 days”)

  • created by: l’utilisateur qui a créé la carte (eg. {created by}=@me)
  • updated at: date de la dernière mise à jour
  • state: l’état de la carte (eg. state=completed) et quelques alias

    “State” se réfère aux états internes Kantree que vous avez pu associer à des états personnalisés.

    • state=todo: associés à undecided, accepted ou waiting
    • state=doing: associés à in_progress
    • state=finished: associés à completed, closed ou dropped
  • started at: la dernière date à laquelle la carte est passé dans l’état en cours.
  • finished at: la dernière date à laquelle la carte est passée dans l’un des états suivants, abandonné, terminé or fermé
  • resolution time: le temps écoulé entre finished at et started at
  • archived: si la carte a été archivé (valeur oui/non: archived=yes)
  • archived at: date d’archivage ex : {archived at}>=”2025-01-03”
  • parent: id de la carte parent (utilisable dans des requêtes comme {parent} in {champ relation de carte n°1} ou {parent}=#14)
  • hlevel: niveau de hierarchie de la carte dans le projet. Par exemple, pour une sous-carte, cela retournera 2. exemple pour filtrer les sous-cartes : hlevel=2
  • nb children: nombre de carte enfants
  • nb comments: nombre de commentaires
  • last comment at: date du dernier commentaire
  • model ou type: nom d’un type de carte (eg. model=bug)
  • workspace ou project: nom d’un workspace (eg. workspace="My Workspace")
  • org ou organization: nom d’une organisation
  • team: nom de l’équipe
  • form: nom du formulaire (si la carte a été créée à partir d’un [formulaire de projet](/fr/aide/guides/formulaires))
  • form submitted by: soit {form submitted by}=@username ou {form submitted by}="email" si la personne qui soumet le formulaire n’a pas de compte Kantree
  • shared: si la carte a un lien public de partage ou non

Vous pouvez utiliser le mot-clé not devant chacune de ces conditions, pour chercher les cartes qui ne lui correspondent pas (ie. not @me in assignés).

Combiner des conditions

Vous pouvez utiliser plusieurs conditions dans vos requêtes. Vous n’avez qu’à les mettre les unes à la suite des autres. Toutes les conditions doivent être remplies pour qu’une carte puisse correspondre.

Pour des requêtes plus flexibles, vous pouvez combiner des conditions en utilisant les opérateurs logiques :

  • and: toutes les conditions doivent être remplies
  • or: au moins une des conditions doit être remplie

Si aucun opérateur logique n’est utilisé, c’est and qui est utilisé par défaut. Vous pouvez regroupez des conditions entre parenthèses.
and a la priorité sur or.

Si vous souhaitez créer un critère d’exclusion, il faut l’écrire avec l’éditeur KQL

and not

or not

Ici, je souhaite uniquement les cartes avec le libellé offre commerciale mais qui ne sont pas assignées à Flora.

Utilisation avancée

Fonctions

Ils existent 3 types de fonctions :

  • fonctions qui retournent une valeur (eg. now())
  • fonctions d’agrégation qui font des statistiques sur un ensemble de valeurs (eg. avg ())
  • fonctions utilisées comme une condition (eg. date?("week"))

Fonctions qui retournent une valeur

  • now(): retourne l’heure et la date du jour
  • today(): retourne la date du jour sans l’heure
  • period(interval): retourne un intervale pour faire des opérations sur des dates, par exemple now() + period("1 week"). La valeur est suivie par une unité de temps (année, mois, semaine, jour, heure).
  • ago(intervalle): retourne la date obtenue si on retranche l’intervalle à la date du jour
    Exemple: trouver les cartes qui avaient une échéance il y a 3 jours ou moins{échéance} <= ago("3 days")
  • ahead(intervalle): retourne la date obtenue si on ajoute l’intervalle à la date du jour

    Exemple : trouver les cartes qui ont une échéance 3 jours après la date du jour {échéance} = ahead("3 days")

    NB : Pour toutes les formules avec des dates ci-dessous, il convient au préalable d’avoir un champs date dans sa carte. Par exemple, la fonction week_start({Date d’échéance}) ne fonctionne seulement si “Date d’échéance” est un champs date dans votre carte.

  • week_start([date]): retourne la date du premier jour de la semaine qui contient la date en paramètre, si aucun paramètre n’est donné la semaine en cours est utilisée
  • week_end([date]): retourne la date du dernier jour de la semaine qui contient la date en paramètre, si aucun paramètre n’est donné la semaine en cours est utilisée
  • workweek_start([date]): retourne la date du premier jour ouvré de la semaine qui contient la date en paramètre, si aucun paramètre n’est donnée la semaine en cours est utilisée
  • workweek_end([date]): retourne la date du dernier jour ouvré de la semaine qui contient la date en paramètre, si aucun paramètre n’est donnée la semaine en cours est utilisée
  • week_number([date]): retourne le numéro de la semaine
  • month_start([date]): retourne la date du premier jour du mois qui contient la date en paramètre, si aucun paramètre n’est donnée le mois en cours est utilisé
  • month_end([date]): retourne la date du dernier jour du mois qui contient la date en paramètre, si aucun paramètre n’est donnée le mois en cours est utilisé
  • month_number([date]):retourne le numéro de mois
  • year_start([date]): retourne la date du premier jour de l’année qui contient la date en paramètre, si aucun paramètre n’est donnée l’année en cours est utilisée
  • year_end([date]): retourne la date du dernier jour de l’année qui contient la date en paramètre, si aucun paramètre n’est donnée l’année en cours est utilisée
  • year([date]): retourne l’année
  • count_days([start], [stop]): retourne le nombre de jours dans l’intervalle que represente start et stop. Si aucun paramètre n’est donné, le nombre de jour du mois en cours est retourné.
  • count_working_days([start], [stop]): retourne le nombre de jours ouvrés dans l’intervalle que represente start et stop. Si aucun paramètre n’est donné, le nombre de jour du mois en cours est retourné.
  • last_moved_in_group_at(group_name, [type_name]): retourne la date à laquelle la carte a été déplacée pour la dernière fois dans le groupe donné (type_name est optionnel, il permet de préciser le champ ou le contexte dont est issue un attribut qui serait en double dans le wokspace)
  • if(expression, valeur, autreValeur): retourne valeur si expression est true et autreValeur si expression est false
  • as_string(value): convertit une valeur en chaine de caractères, par ex as_string({Points})
  • as_date(value): convertit une valeur en date, par ex as_date({champ texte})
  • as_daterange({date value 1}, {date value 2}):convertit deux champs date en un champ date période

  • date value:start: récupère la date de début d’un champ date contenant une période exemple : {date n°2:start}
  • date value:end: récupère la date de fin d’un champ date contenant une période
    exemple : {date n°2:end}
  • as_number(value): convertit une valeur en nombre, par ex as_number({champ texte})
  • size(liste): retourne le nombre d’éléments dans une liste, par ex size({assignés})
  • first(value):Retourne la première valeur qui a été sélectionné dans un champ avec une liste de valeurs (Libellés)
  • substring(node, start, count): renvoie une partie d’une chaine de caractères, par exemple substring("hello world", 6, 5) = "world"
  • concat(value1, value2, ...): concatène plusieurs valeurs ensemble
  • round(value, [decimal]): arrondit un nombre à la décimale choisie (par défaut, renvoie un nombre entier)
  • card(project_title, card_ref): retourne l’id de la carte venant d’un autre projet

    Exemple: Via une automatisation avec l’action “Remplir un champ à partir d’une formule” associer une carte d’une autre workspace via un champ relationships card("Nom de workspace",$(card:Nom du champ relationships à compléter avec l'id})

Fonctions d’agrégation

  • max(): retourne la valeur la plus haute - Exemple : depuis une vue Dashboard afficher la valeur la plus élevée d’un champ nombre
  • min(): retourne la valeur la plus basse - Exemple : depuis une vue Dashboard afficher la valeur la moins élevée d’un champ date. Dans ce cas, il s’agit de la date la plus ancienne.

    Vous pouvez aussi utiliser min() ou max () avec les états de la carte -
    Exemples :
    max({updated at})

    min({created at}

    max ({staarted at})

    min ({finished at})

    Exemple pour filtrer les cartes à l’état terminé avec la mise à jour la plus récente :

    ex: query(state=done, max({updated at}))

  • avg(): retourne la moyenne des valeurs
  • sum(): retourne une somme
  • sum_logs(category_name, field_name, [user], [from_date], [to_date]): retourne la somme des valeurs des logs ayant le nom et la categorie choisis. Peut être limité à un utilisateur et sur une période donnés. Quand on fait la somme de valeurs de champs de type “Temps”, le résultat sera donné en secondes.
  • count(): retourne un nombre
  • count_logs(category_name, [user], [from_date], [to_date]): retourne le nombre de logs d’une categorie donnée. Peut être limité à un utilisateur et sur une période donnés.

Fonctions conditionnelles

  • full_text_search?(texte): vérifie si le titre ou les valeurs des champs de la carte contiennent ce texte
  • is_in_group_type?(nom_type): vérifie si la carte est dans le type de groupe nom_type (type_name est optionnel, il permet de préciser le champ ou le contexte dont est issue un attribut qui serait en double dans le wokspace)
  • is_in_active_group?(): vérifie si la carte est dans un group qui a des dates de début et de fin et si aujourd’hui est entre ces dates.
  • is_in_group?(group_name, type_name): vérifie si la carte est dans le groupe group_name (type_name est optionnel, il permet de préciser le champ ou le contexte dont est issue un attribut qui serait en double dans le wokspace)
  • was_in_group?(nom_groupe, nom_type): verifie si la carte a été dans group_name (type_name est optionnel, il permet de préciser le champ ou le contexte dont est issue un attribut qui serait en double dans le wokspace)
  • date?(date): vérifie si au moins un champ de type date de la carte correspond a la date spécifiée entre parenthèse. Exemple de formats valides de date : “05-27-2018” (format MM-JJ-AAAA), “week”, “month”, “year”, “week+1” (pour la semaine prochaine), “week-1” (pour la semaine dernière), “week-2” (pour la semaine avant la dernière)
  • contains_member?(@username): vérifie si n’importe quel champ de type membre de la carte contient @username
  • is_pii?(identifier): vérifie si au moins un champ marqué PII a une valeur, et si un identifier est fourni (que ce soit un @username ou une chaine de caractère), vérifie si au moins un des champs marqués PII contient identifier
  • is_subscribed?(): vérifie si vous êtes abonné à une carte
  • parent?(kql_expression): vérifie si au moins un parent de la carte correspond à l’expression kql donnée
  • children?(kql_expression): vérifie si au moins un enfant direct de la carte correspond à l’expression kql donnée
  • descendants?(kql_expression): vérifie si au moins une carte descendant de la carte correspond à l’expression kql donnée (non limité aux sous_cartes)
  • relationships?(kql_expression):vérifie si au moins une carte dans un champ Relation de cartes correspond à l’expression kql donnée

    Exemple : relationships?(title=”Carte 10”) va chercher toutes les cartes qui ont un champ Relation de cartes contenant un lien avec Carte 10

    Si vous avez plusieurs champs Relation de cartes, vous pouvez préciser le champ Relation de cartes concerné par votre recherche comme ceci :

    Exemple : relationships?(title=”Carte 2”,{nom du champ Relation de carters})

Références d’object

Les références d’object peuvent être utilisées pour retirer des valeurs d’une carte ou d’un utilisateur. Elles peuvent être utilisées dans des expressions arithmériques ou dans des comparaisons de champs.

Pour obtenir la valeur du champ d’une carte, utilisez la syntaxe suivante : {#ref:champ} (eg. {#123:Nombre d'heures estimé}).

Pour obtenir une valeur d’un champ d’utilisateur, utilisez la syntaxe suivante : {@username:champ} (eg. {@me:email}). Les champs suivants sont disponibles pour les utilisateurs : email, username.

Variables

Différence entre les champs utilisés dans le KQL et les variables :

-Champs KQL : utilisés pour filtrer vos vues, créer des conditions pour déclencher les automatisations, filtrer dans une requête d’automatisation et dans dans les requêtes de vos vues Dashboard,
Calculer dans un champ formule (créer une valeur avec d’autres valeurs, pas nécessairement des nombres)
Leur forme = >{champ}
Voir la liste plus haut “Champs spéciaux”

-Les Variables : utilisées uniquement dans les automatisations

Leur forme => ${variable} ou ${card: variable} ou ${parent:card:variable}

Dans les automatisations, il est possible de combiner des Champs KQL et des Variables mais l’inverse n’est pas possible.

La liste de variables suivante est utilisable uniquement dans une
automatisation dans :

-le filtre des conditions
-dans le filtre des requêtes (balayer les cartes)
-Publier un commentaire
-Envoyer un email
-Remplir un champ à partir d’une formule
-Créer une variable

parent doit être ajouté lorsque vous configurez une règle avec des séquences parallèles, parent fait référence à la carte concernée dans la séquence principale. Attention, cela ne désigne pas nécessairement la carte “parent” par rapport à la carte “enfant”.

Ces variables peuvent être combinées à des champs spéciaux KQL pour traiter d’autres cartes et non pas uniquement celle qui est en cours (= celle qui déclenche l’action.)

Les variables renvoient toujours du texte par défaut.

En fonction du résultat attendu, il faut faire précéder de as_number ou as_date
Exemple : filtrer les cartes en comparant deux champs nombre.

as_number(${parent:card:attr_number}) >= {attr_number}

Par exemple, vous pouvez agir sur un ensemble de cartes tout en récupérant des informations d’autres cartes.

  • Nom de l’organisation

${organization}

  • Nom de l’équipe

${team}

  • Nom du workspace

${workspace:title}

  • Url du workspace

${workspace:url}

  • Nom de l’utilisateur déclenchant l’action d’envoi

${author}

  • Id de la carte

${card:id}

  • Référence de la carte (#ref)

${card:ref}

  • Url de la carte

${card:url}

  • Url de partage de la carte

${card:share_url}

  • Titre de la carte

${card:title}

  • Url de requête de la carte

${card:request_url}

  • Champ de la carte

${card:nom du champ}

  • Liste des cartes enfants

${children}

  • Contenu du commentaire

${comment:message}

Fonctionne uniquement avec le déclencheur “Se déclenche quand un nouveau commentaire est posté”

Exemple : pour reprendre le contenu du commentaire posté et le réutiliser dans une action d’envoi d’email ou de publication d’un commentaire dans une autre carte (carte liée dans un autre workspace, création d’une carte dans un autre workspace avec reprise du commentaire présent sur la carte qui a déclenché la règle)

  • Nom utilisateur de l’auteur du commentaire

    ${comment:username}

Grâce à l’action “créer une variable” vous pouvez créer votre propre variable utilisable dans une règle d’automatisation.

Exemples

Trouvez les cartes qui me sont assignées (en utilisant le champ Assignés) :

@me in assignés

Trouvez les cartes qui me sont assignées dans le groupe Backlog :

@me in assignés #backlog

Trouvez toutes les cartes qui arrivent à échéance demain (en utilisant le champ Echéance) :

{échéance}=tomorrow

Trouvez toutes les cartes qui ont le mot “problème” dans leur description (en utilisant le champ Description) :

description ~= problème

Trouvez toutes les cartes qui me sont assignées ou que j’ai créées :

@me in assignés or {created by}=@me

Trouvez toutes les cartes dont l’échéance est dépassée et qui n’ont pas d’assignés :

assignés=empty {échéance}<today

Trouvez toutes les cartes qui sont vieilles de plus de 3 jours et qui n’ont pas de description :

description=empty {created at} > ago("3 days")

Trouvez toutes les cartes qui ont le modèle Bug et qui sont vieilles de plus de 1 semaine :

model=bug {created at} > ago("1 week")

Exemples d’utilisations avec des Dates

Afficher des dates dans une carte

Champ de type Date

Ajoutez un champ de type Date et personnalisez son titre et ses options. Par défaut, il s’agit d’une date unique mais vous pouvez autoriser la sélection d’une plage de dates.

Champ de type Formule - Etats de carte Kantree 

Utilisez un champ de type Formule et ajoutez l’une des expressions suivantes : 

  • Date de création : {created at}
  • Date de dernière modification: {updated at}
  • Date d’archivage : {archived at}

Faites précéder l’expression de la fonction as_date() pour avoir un affichage AAAA-MM-JJ

Les champs Formule contenant une Date peuvent être utilisés dans les vues temporelles : Calendrier, Timeline, Gantt.

Champ de type Formule - Calcul automatique de Date 

Vous pouvez calculer une date automatiquement en ajoutant un champ de type Formule et en utilisant la fonction period(““)

En se basant sur un autre champ +/- une période

Je souhaite afficher une date de contrôle qui doit être 7 jours avant la livraison (Champ “Date de livraison”)

Je souhaite afficher une date de fin de garantie qui doit être 1 an après la date de livraison (Champ “Date de livraison”)

Champ de type Formule - Exploiter les dates de début / fin

Si vous utilisez un champ de type date en mode plage de dates, le début de la période correspond à l’expression {Nom du champ : start}  et la fin de la période à l’expression {Nom du champ:end}

Si vous souhaitez extraire dans un champ distinct la date de début et la date de fin d’un champ Date en mode plage de dates, utilisez un champ Formule avec les fonction  {Nom du champ : start} et  {Nom du champ:end}

Si à l’inverse, vous avez des champs distincts pour la date de début et la date de fin et que vous souhaitez en faire une plage de dates, utilisez un champ Formule avec la fonction as_daterange()

Je souhaite créer un champ Date avec une plage de dates dont le début correspond à la date de création de ma carte et une date de fin qui correspond à la date de livraison.

Filtrer les cartes selon une date ou entre deux dates

Vous pouvez filtrer en vous basant sur un champ de type Date ou un champ de type Formule.

Champ de type Date

L’assistant vous liste les opérateurs disponibles “Est après”, “Est avant” etc. et vous propose de choisir la période dans le calendrier.

Si vous souhaitez rechercher entre deux dates , ajoutez un opérateur “and”

Champ de type Formule

Contrairement au champ de type Date, pour filtrer sur un champ de type Formule qui affiche une date, il faut écrire la date dans l’assistant.

La date s’écrit sous ce format AAAA-MM-JJ

Si vous souhaitez filtrer entre deux dates, il faut passer en mode éditeur KQL et utiliser les opérateurs > < =

Pour chercher les cartes créées entre le 01/03/2025 et le 08/03/2025. Si vous souhaitez que ces dates soient incluses, vous pouvez utiliser >= ou <=

Filtrer les cartes selon une date + ou - une période

Vous pouvez utiliser les fonctions ahead() pour ajouter une période et ago() pour retirer une période couplées aux expressions  “ X days”, X months”, “X years”

Pour filtrer les cartes qui ont une date d’échéance à J+10

Pour filtrer les cartes qui ont une date d’échéance à J-1 an

Pour filtrer les cartes qui ont une date d’échéance à J-1 an et +

Compter des éléments entre deux champs contenant une date une charge de travail

Vous pouvez compter des jours entre deux dates qu’il s’agisse d’un champ de type Date ou un champ de type Formule.

Utilisez un champ de type Formule et utilisez les fonctions count_days() ou count_working_days().

Je souhaite compter le nombre de jours travaillés entre le début de ma tâche et sa date de contrôle.

Je souhaite compter le nombre de jours entre le passage d’un groupe à un autre, ce groupe représente le statut.

Utilisez une date comme condition

Condition de déclenchement d’une règle d’automatisation

Vous pouvez utiliser une date pour conditionner le déclenchement d’une automatisation.

Je souhaite qu’un commentaire soit postée sur la carte quand la date de Livraison est ultérieure à la Date d’échéance (date d’engagement)

Action de l’automatisation - Publication d’un commentaire

Créer un indicateur visuel

Utilisez un champ Formule avec une fonction if(). Vous pouvez ajouter à vos valeurs

Vous pouvez effectuer ce type d’action également grâce aux règles d’automatisation 

Par rapport à l’utilisation d’un champ Formule, la règle vous permet de choisir le déclencheur de la complétion du champ et de cumuler les actions : complétion d’un champ Date + la complétion d’un champ texte.

Conditionner la complétion d’un champ Date

Vous pouvez utiliser la fonction if() pour selon une condition compléter un champ Date.

Lorsque la date de livraison est ultérieure la date d’échéance (engagement), je souhaite que le champ sur lequel je crée la formule “Date d’échéance réelle” soit complétée à J+14j par rapport à la date d’échéance initiale. Dans le cas contraire, je souhaite afficher dans Date d’échéance réelle, la date d’échéance initiale (qui a été respectée et reste donc inchangée)

if({Date de livraison}>{Date d’échéance},as_date({Date d’échéance réelle}+period(“14 days”)),as_date({Date d’échéance}))