Exemples de Filtres
Plusieurs API utilisent des filtres pour sélectionner un sous-ensemble de fiches. Ce document fournit plusieurs exemples de filtre utilisé pour sélectionner des tâches.
Au format JSON, les filtres sont encodés sous la forme de listes.
Sélectionner toutes les tâches
["all"] sélectionne toutes les tâches.
Sélectionner une tâche en fonction d'une constante
["in", "label", "constatation"] sélectionne la tâche dont le label est constatation en ignorant la casse.
["in", "label", "constatation", "Règlement du sinistre"] sélectionne les tâches dont le label est Constatation ou Règlement du sinistre en ignorant la casse.
["in", "description", "L'annonce est communiquée en interne et sur les réseaux sociaux", null] sélectionne les tâches dont la description est L'annonce est communiquée en interne et sur les réseaux sociaux en ignorant la casse ou dont la description est vide.
Sélectionner une tâche en fonction d'une expression régulière
["glob", "label", "*on*"] sélectionne les tâches dont le label contient on en ignorant la casse.
["glob", "label", "1.*", "2.*"] sélectionne les tâches dont le label commence par 1. ou 2..
["glob", "label", "[1-3].*"] sélectionne les tâches dont le label commence par 1., 2. ou 3..
Sélectionner une tâche en fonction de la valeur null ou non d'un champ
["is_null", "description"] sélectionne les tâches qui n'ont pas de description.
["is_not_null", "description"] sélectionne les tâches qui ont une description.
Sélectionner une tâche en fonction d'un ensemble
Les exemples suivants supposent que les tâches ont un champ personnalisé criticité de type entier.
["between", "criticité", 2, 4] sélectionne les tâches qui ont une criticité de 2, 3 ou 4.
["between", "criticité", 2, null] sélectionne les tâches dont la criticité est supérieure ou égale à 2.
["between", "criticité", null, 4] sélectionne les tâches dont la criticité est inférieure ou égale à 4.
Sélectionner une tâche en fonction de son activité
["select", "activity", "activity", ["glob", "label", "recrutement*"]] sélectionne les tâches dont l'activité a un label qui commence par Recrutement.
Sélectionner des fiches référencées par d'autres fiches
["get_field", "master_data_applications", "data", ["in", "label", "login"]] sélectionne les applications contenues dans le champ Masters Data Application de la fiche Login de type Données RGPD.
Agréger des filtres
["and", ["glob", "label", "*on*"], ["select", "activity", "activity", ["glob", "label", "recrutement*"]]] sélectionne les tâches dont le label contient on et dont l'activité a un label qui commence par Recrutement.
["or", ["is_null", "description"], ["in", "label", "constatation"], ["select", "activity", "activity", ["glob", "label", "recrutement*"]]] sélectionnes les tâches qui n'ont pas de description, plus les tâches dont le label contient on, plus les tâches dont l'activité a un label qui commence par Recrutement.
Négation ou comment inverser un filtre
["not", ["in", "label", "Constatation"]] sélectionne toutes les tâches dont le label n'est pas constatation en ignorant la casse.
["not", ["glob", "label", "*on*"]] sélectionne les tâches dont le label ne contient pas on en ignorant la casse.
Exercice : Est-ce que les deux filtres suivants retournent la même chose ?
Code(json)
Code(json)

