Aller au contenu

Requêtes

Sous sa forme la plus générale, une requête utilisable dans Yesplan est composée de 3 éléments et se présente comme suit :

scope:keyword:word

Quelques exemples :

  • event:name:Othello : Rechercher tous les événements dont le nom contient « Othello ».
  • resource:role:"ingénieur du son" : Rechercher toutes les ressources ayant pour rôle ingénieur du son.

Le scope d’une requête détermine le type d’élément que vous recherchez.

  • Si vous cherchez uniquement des événements, utilisez le scope event ; pour les ressources, utilisez resource, etc.
  • L’aperçu des scopes vous présente un aperçu de tous les scopes pris en charge par Yesplan.
  • Un scope est toujours un terme anglais, même si Yesplan est configuré dans une autre langue.

Le keyword détermine quelle propriété d’élément vous recherchez.

  • Il peut s’agir, par exemple, de name, location, date, label, etc.
  • L’aperçu des keywords vous présente un aperçu de tous les keywords valides et utilisables dans le langage de requête de Yesplan, ainsi que de leur scope.
  • Un keyword est toujours un terme anglais, même si Yesplan est configuré dans une autre langue.

Le word est le dernier élément d’une requête. Il décrit la valeur textuelle que vous recherchez au sein de la propriété que vous avez indiquée à l’aide du keyword :

  • Par exemple : la requête resource:role:son recherchera toutes les ressources dont le rôle contient le nom « son ».
  • Le word que vous introduisez dans la requête (par exemple « son ») ne doit être qu’une partie de la valeur effective dans Yesplan. La requête ci-dessus retrouvera donc aussi toutes les ressources ayant pour rôle « ingénieur du son ».
  • Le word n’est pas sensible à la casse : « jan » donne donc le même résultat que « Jan ».

Requêtes simples§

Expliquons plus en détail les concepts ci-dessus à l’aide de quelques exemples.

Prenez la requête suivante :

event:name:othello

Le scope de cette requête est event, le keyword est name et le word est othello.

Le résultat de cette requête sera une liste de tous les événements dont le nom contient « othello ». Le word ne doit donc pas correspondre exactement à la valeur de la propriété, mais peut être une partie de cette valeur. Dans l’exemple ci-dessous, vous voyez que les événements nommés « Othello », « Othello 1 », « Othello 2 » et « Othello 3 » figurent parmi les résultats. Cette règle vaut pour la plupart des keywords dont la propriété recherchée est un nom ou un bout de texte, comme name. Toutefois, pour les keywords dont la propriété recherchée est une date ou un nombre, la correspondance devra être exacte.

Un word ne peut pas contenir d’espaces. Si vous souhaitez néanmoins insérer des espaces, vous pouvez entourer le word de guillemets ("…"), par exemple :

group:name:"The Film Festival"

Le résultat de cette requête contiendra, par exemple, le groupe d’événements nommé « The Film Festival ».

Outre les espaces, un word ne peut contenir aucun des signes suivants : * # : ( ). En effet, ces signes font partie de la syntaxe du langage de requête, comme expliqué par la suite. Si vous souhaitez malgré tout utiliser l’un de ces signes dans un word, vous devrez également recourir à des guillemets.

Si le type d’élément que vous souhaitez rechercher n’a pas d’importance, vous pouvez omettre le scope de la requête dans la fenêtre de recherche générale. Supposons que nous voulions chercher tous les éléments de Yesplan portant une étiquette « location ». Cette opération est possible à l’aide de la requête suivante :

label:location

Le résultat est une liste de plusieurs types d’éléments, par exemple un événement, une ressource et un contact. Consultez « keywords avec des scopes par défaut » pour un aperçu complet des keywords permettant cette opération.

Enfin, il est possible également d’omettre le keyword d’une requête et d’introduire uniquement un word. Dans ce cas, le langage de requête recherchera tous les éléments de Yesplan dont le nom contient ce word.

Par exemple :

othe

Le résultat de cette requête affichera les événements « Othello », « Othello 1 », « Othello 2 » et « Othello 3 », ainsi que le groupe d’événements « Othello production ».

Astuce

Si vous souhaitez retrouver un événement à l’aide de son Yesplan ID, vous devrez toujours utiliser le keyword :

id:3046435073-1631780039

La requête suivante ne donnera aucun résultat :

3046435073-1631780039

Absence de valeurs§

Un cas particulier dans le cadre du langage de requête est celui du word vide entouré de guillemets (""). Si vous l’utilisez, c’est l’absence de valeur qui sera vérifiée pour le keyword. Par exemple, la requête suivante retrouvera toutes les personnes sans étiquette :

person:label:""

Pour que vous puissiez vérifier l’absence d’une valeur, le keyword doit être d’application. Pour les ressources, par exemple, le keyword team n’est d’application que pour les ressources de type « Humain », seules les ressources de ce type pouvant faire partie d’une équipe. La requête ci-dessous retrouvera toutes les ressources pour lesquelles le keyword team est d’application, mais ne contient aucune valeur. Le résultat donnera toutes les ressources de type « Humain » qui ne font pas partie d’une équipe. Le résultat ne contient aucune ressource d’un autre type.

resource:team:""

Si vous souhaitez consulter un aperçu des événements sans lieu, vous pouvez utiliser la requête suivante :

event:location:""

Gardez à l’esprit que le comportement des groupes d’événements est légèrement différent :

group:location:""
group:location:"Salle de Théâtre"

La première requête ne fera apparaître que les groupes d’événements pour lesquels aucun événement n’a de lieu. La deuxième requête fera apparaître seulement les groupes d’événements pour lesquels au moins un événement a lieu dans la Salle de Théâtre.

Utilisation d’un joker§

Pour indiquer que la valeur d’une propriété donnée n’a pas d’importance, vous pouvez utiliser un joker (wildcard), représenté par un astérisque (*). Le joker a l’effet inverse de celui d’un word vide ("") et vérifier la présence d’une valeur.

La requête suivante retrouvera toutes les ressources, quel que soit leur type :

resource:type:*

Si vous utilisez un joker en guise de word, vous n’obtiendrez que des résultats pour lesquels une valeur existe pour le keyword utilisé.

Prenez, par exemple, la requête suivante :

person:label:*

Cette requête retrouve toutes les personnes dotées d’une étiquette. Les personnes sans étiquette ne seront pas affichées.

Lorsqu’un keyword n’est pas d’application, il ne peut y avoir aucune valeur. La requête suivante retrouvera toutes les ressources qui font partie d’une équipe. Il s’agira forcément de ressources du type « Humain » : le keyword team ne peut s’appliquer qu’à ce type de ressources, parce qu’elles sont les seules à pouvoir faire partie d’une équipe.

resource:team:*

Vous pouvez aussi utiliser le joker comme keyword. Ainsi, la requête suivante retrouvera tous les contacts pour lesquels n’importe quelle propriété contient la valeur « jan ».

contact:*:jan

Utilisation de dates et de périodes§

Le langage de requête offre des fonctions étendues, permettant d’interroger le système sur la base de propriétés telles qu’une date ou une période déterminée.

Date exacte§

Dans le cas des dates, vous pouvez rechercher une correspondance exacte avec une date déterminée. Introduisez les dates au format jj-mm-aaaa (« Jour Mois Année »). Par exemple, la requête suivante retrouvera tous les événements qui ont lieu le 28 mars 2013 :

event:date:28-03-2013

Remarque

  • Dans le cas des keywords dont la propriété recherchée est une date, les règles applicables pour trouver une correspondance sont donc différentes que dans le cas des propriétés textuelles. Dans le cas des propriétés textuelles, on considère qu’il y a correspondance si la valeur de la propriété contient le word spécifié. Dans le cas des dates, la correspondance sera exacte.
  • Le format de date des paramètres du système n’a aucun impact sur le format de date dans le langage de requête. Dans le langage de requête, vous devrez toujours utiliser le format jj-mm-aaaa, par exemple « 28-03-2013 » pour le 28 mars 2013, même si le format sélectionné dans les paramètres du système est, par exemple, « Mois Jour Année ».

Période§

Le langage de requête offre aussi la possibilité d’utiliser une période comme word :

  • Pour noter une période, introduisez deux dates, séparées par TO.
  • Il est nécessaire de séparer les dates de l’opérateur TO par un espace.
  • Dans ce cas, il y a correspondance si la date tombe dans la période indiquée.

Par exemple, la requête suivante permet de retrouver tous les événements du 15 mars au 30 mars 2013 inclus :

event:date:15-03-2013 TO 30-03-2013

Vous pouvez aussi chercher pendant une période ou à partir d’une date précise par le biais du keyword dateafter. Par exemple, la requête suivante permet de retrouver tous les événements à partir du 15 mars 2013 :

event:dateafter:15-03-2013

Dates dynamiques§

Outre la recherche par date spécifique ou par période spécifique, le langage de requête propose également plusieurs dates dynamiques.

Par exemple :

event:date:#today

Cette requête utilise le word #today pour limiter la recherche à tous les événements qui ont lieu aujourd’hui. Le tableau ci-dessous présente d’autres words particuliers du même genre :

Word Description
#tomorrow La date correspond à demain.
#yesterday La date correspond à hier.
#thisweek La date tombe pendant la semaine en cours. Il s’agit de la semaine qui commence lundi dernier et continue jusqu’à dimanche prochain inclus.
#previousweek La date tombe pendant la semaine dernière. Il s’agit de la semaine qui prend fin avant lundi dernier.
#nextweek La date tombe pendant la semaine prochaine. Il s’agit de la semaine qui commence après dimanche prochain.
#thismonth La date tombe pendant le mois calendrier en cours.
#previousmonth La date tombe pendant le mois calendrier dernier.
#nextmonth La date tombe pendant le mois calendrier prochain.
#thisyear La date tombe pendant l’année calendrier en cours.
#previousyear La date tombe pendant l’année calendrier dernière.
#nextyear La date tombe pendant l’année calendrier prochaine.
#nextXdays La date tombe pendant les X jours calendrier à partir d’aujourd’hui. #next1days donne le même résultat que #tomorrow.
#previousXdays La date tombe pendant les X jours calendrier avant aujourd’hui. #previous1days donne le même résultat que #yesterday.
#nextXweeks La date tombe pendant les X semaines calendrier à partir de la semaine calendrier en cours. #next1weeks donne le même résultat que #nextweek.
#previousXweeks La date tombe pendant les X semaines calendrier avant la semaine calendrier en cours. #previous1weeks donne le même résultat que #previousweek.
#nextXmonths La date tombe pendant les X mois calendrier à partir du mois calendrier en cours. #next1months donne le même résultat que #nextmonth.
#previousXmonths La date tombe pendant les X mois calendrier avant le mois calendrier en cours.  #previous1months donne le même résultat que #previousmonth.
#nextXyears La date tombe pendant les X années calendrier à partir de l’année calendrier en cours. #next1years donne le même résultat que #nextyear.
#previousXyears La date tombe pendant les X années calendrier avant l’année calendrier en cours. #previous1years donne le même résultat que #previousyear.

Remarque

Dans les keywords #nextX… et #previousX…, il faut remplacer le X par un nombre. event:date:#nextXdays ne fonctionnera pas, tandis que event:date:#next7days fonctionnera.

Consultation de données personnalisées§

Le langage de requête nous permet aussi de rechercher des éléments de Yesplan sur la base de la valeur de leurs champs de données personnalisées. Dans ce cas, vous devez utiliser le keyword du champ de données personnalisées comme keyword dans la requête. Vous pouvez laisser Yesplan générer automatiquement les keywords des champs de données personnalisées ou vous pouvez configurer vos propres keywords manuellement.

Astuce

Consultez la section Keyword pour en savoir plus sur la configuration automatique ou manuelle des keywords dans les paramètres du système.

Dans l’exemple ci-dessous, vous voyez un champ de données personnalisées portant l’étiquette « Manager », auquel est assigné automatiquement le keyword « production_info_manager ».

Vous pouvez ensuite rechercher toutes les ressources ayant « Sarah Peeters » pour « Manager » à l’aide de la requête suivante :

resource:production_info_manager:"Sarah Peeters"

Astuce

  • Vous pouvez retrouver facilement le keyword des champs de données personnalisées dans une fenêtre d’information en appuyant simultanément sur les touches Ctrl+Alt (Windows) ou Ctrl+Option (macOS). L’étiquette du champ sera remplacée par le keyword.
  • Si vous souhaitez copier le keyword, cliquez sur l’étiquette tout en maintenant enfoncées les mêmes touches.

L’illustration ci-dessous montre la définition d’un champ de données personnalisées portant l’étiquette « Operator » et auquel l’administrateur a manuellement assigné le keyword « operator ».

Vous pouvez alors retrouver toutes les réservations de ressources pour lesquelles ce champ de données personnalisées contient la valeur « Jan Janssens » à l’aide de la requête suivante :

resourcebooking:operator:"Jan Janssens"

Remarque

Si vous configurez votre propre keyword pour un champ de données personnalisées, vous ne pourrez plus utiliser le keyword généré automatiquement pour ce champ dans le langage de requête :

  • La requête resourcebooking:production_info_operator:"Jan Janssens" ne fonctionnera plus si le keyword « operator » a été assigné à ce champ.
  • En revanche, vous pourrez utiliser resourcebooking:operator:"Jan Janssens".

Lors de la recherche d’un champ oui/non, introduisez la valeur en anglais. Utilisez donc les valeurs yes, no, true ou false. Par exemple, si vous souhaitez interroger un champ de données personnalisées pour rechercher des ressources endommagées, vous pouvez utiliser la requête suivante :

resource:properties_state_damaged:yes

Enfin, vous pouvez aussi rechercher le statut de publication d’un événement dans la billetterie intégrée.

  • event:touchedepublication-keyword:active : Afficher tous les événements de Yesplan associés à l’intégration.
  • event:touchedepublication-keyword:"" : Afficher tous les événements de Yesplan qui ne sont pas associés à une intégration.
  • event:touchedepublication-keyword:error : Chercher tous les événements de Yesplan pour lesquels une erreur est survenue lors de l’association à l’intégration.

Consultation des champs numériques§

Dans le cas des keywords dont la propriété recherchée est un chiffre, les règles pour trouver une correspondance sont différentes dans le cas des propriétés textuelles.

Dans le cas des propriétés textuelles, on considère qu’il y a correspondance si la valeur de la propriété contient le word spécifié. Par exemple : la requête event:name:othello retrouvera l’événement « Othello », ainsi que l’événement intitulé « Othello 2 ».

Dans le cas des chiffres, on considère qu’il y a correspondance si la valeur correspond exactement. Par exemple : si le keyword d’un champ de données personnalisées numérique est « places_disponibles », le résultat de la requête event:places_disponibles:23 ne trouvera que les événements pour lesquels la valeur du champ de données personnalisées est exactement égale à « 23 », mais pas les événements pour lesquels la valeur du champ de données personnalisées est « 123 » ou « 234 ».

Cette correspondance exacte ne vaut pas pour les champs de saisie ordinaires dans lesquels vous saisissez (systématiquement ou non) un nombre. Un champ numérique est un type spécifique de champ de données personnalisées.

Consultation des adresses des contacts§

Un contact peut avoir une ou plusieurs adresses. Chacune de ces adresses est d’un certain type. Pour chaque contact, une adresse sera toujours marquée comme étant l’adresse par défaut. Vous pouvez gérer les type d’adresse dans les paramètres du système.

Les keywords address, street, zip, city, country et countrycode s’appliquent toujours à l’adresse par défaut. Le langage de requête prévoit toutefois aussi des keywords pour tous les différents types d’adresses possibles d’un contact. Pour former ces variantes, utilisez le keyword par défaut, précédé du nom du type d’adresse et d’un _ (tiret de soulignement).

Par exemple, pour le type d’adresse « Facturation », les variantes sont les keywords facturation_address, facturation_street, facturation_zip, facturation_city, facturation_country et facturation_countrycode.

Notez que, pour la création du keyword, les mêmes règles sont d’application que dans le cas de l’attribution automatique du keyword pour les champs de données personnalisées : les espaces et les caractères spéciaux (tels que ! ? ; et ainsi de suite) sont supprimés et les majuscules sont remplacées par des minuscules. Un administrateur peut également retrouver le keyword dans « Paramètres du système » > « Contacts » > « Types d’adresses ».

Par exemple, pour le type d’adresse « Siège Social », les keywords sont siegesocial_address, siegesocial_zip, etc.

Les variantes des mots-clés s’appliquent toujours à l’adresse d’un type déterminé, qu’elle soit marquée « par défaut » ou non.

Par exemple, avec la requête contact:city:Gand, vous recherchez tous les contacts dont la commune de l’adresse par défaut contient « Gand ». Avec la requête contact:facturation_city:Gand, vous recherchez tous les contacts dont la commune de l’adresse du type « facturation » contient le word « Gand ».