Today

Today représente la date du jour, et peut être utilisé comme une méthode rapide d'indiquer que vous aimeriez chercher toutes les notices qui ont été faites aujourd'hui. Ceci est tout particulièrement utile dans les recherches enregistrées qui ont besoin d'un rafraîchissement régulier, puisque ce sera toujours la date d'aujourd'hui qui sera prise en compte plutôt que la date tapée dans la requête à l'origine. Par exemple,

input.date = today

récupérera toutes les notices qui ont été créées dans la journée. Il est également possible de récupérer les notices qui remontent à un certain intervalle de temps par rapport à aujourd'hui, en soustrayant ou additionnant le nombre de jours voulu. Par exemple :

input.date = today-30

récupérera toutes les notices créées depuis trente jours.

Pour récupérer les notices saisies dans le mois qui vient de s'écouler, tapez :

input.date from today-30 and input.date to today

Notez que bien qu'il puisse être tentant de raccourcir cette formule de recherche en input.date from today-30 (ce qu'Axiell Collections traduira par : input.date >= today-30), cette formule de recherche ne fournit le même résultat que si le champ en question ne peut pas contenir de futures dates. C'est probablement le cas dans l'exemple en cours, mais pas pour des dates de livraison, par exemple. En conséquence, il est plus prudent d'utiliser la formule de recherche combinée, puisqu'elle rend la recherche plus précise. Cela facilite aussi la construction de formules de recherche autres, comme :

venue.date.start from today-15 and venue.date.start to today+21

De toute façon, vous ne pouvez chercher dans un champ avec today que si le champ est un champ date (date au format ISO ou au format européen).

All

All récupérera tout simplement toutes les notices de la source de données interrogée. C'est la seule exception à la règle que toutes les formules de recherche doivent consister en au moins un champ, un opérateur et une valeur.

%0

C'est l'étiquette de champ (tag) pour le numéro de référence primaire d'une notice, le numéro de notice; à la place, vous pouvez aussi utiliser priref. Par exemple, pour récupérer les notices à partir de 50 et jusqu'à 100, tapez :

%0 >= 50 AND %0 <= 100

Les numéros de notice des notices peuvent être rendus visibles dans l'affichage en liste du résultat de recherche en ajoutant le champ priref à la liste des colonnes de champ à afficher. Utilisez les Paramétrages de la liste résultat pour gérer les colonnes de champ.

ACSettingsIcon

Expand

L'opérateur Expand est une option susceptible d'être utilisée dans la recherche Avancée comme dans la recherche Standard pour récupérer les notices dans le résultat de recherche quand la clé de recherche se trouve dans le contenu du champ interrogé de la notice elle-même ou bien d'une de ses notices parent (ou grand-parent, etc.), tout en permettant d'écarter la notice elle-même ou l'une de ses notices parent (ou grand-parent, etc.) dans lesquelles le champ interrogé contient d'autres mots que ceux qui composent la clé de recherche. Ainsi, dans le cas d'une hiérarchie de notices, si la notice parent contient une valeur x dans le champ interrogé et, par ailleurs, si une notice située à un niveau inférieur de la hiérarchie contient une valeur y dans ce même champ, une recherche élargie de la valeur x n'inclut pas dans le résultat de recherche les notices dans lesquelles le champ interrogé contient la valeur y.

La syntaxe d'une recherche élargie est la suivante :

expand(<formule de recherche>)

Une recherche élargie peut se combiner avec une recherche ciblée (ou avec une autre recherche élargie).

L'utilisation de l'option Elargir pour la recherche, à la fois pour la recherche Avancée et pour la recherche Standard, est particulièrement utile pour la récupération de notices enfant dont le contenu comporte des champs héritables (bien que l'héritage des champs ne soit pas indispensable au fonctionnement de l'option Elargir) puisque le contenu hérité des notices enfant est seulement mis en mémoire dans l'une des notices parent de la hiérarchie dans laquelle elles se trouvent (notices d'où le contenu en question provient) : une recherche portant sur des contenus hérités ne peut s'effectuer autremenée, par exemple le titre d'une notice de fonds d'archives, se trouvent dans une notice parent ou dans une notice grand-parent, il importe peu de savoir quels sont les titres visibles/mis en mémoire dans les notices de niveau inférieur elles-mêmes : les champs titres des notices de niveau inférieur peuvent être vides, comporter chacun un titre mis en mémoire différent, ou bien peuvent afficher un titre hérité provenant d'une notive parent de niveau supérieur.
ACexpandhierarchydiagram2

(inh. signale les cas où il y a héritage du titre, donc les cas où le titre n'est pas mis en mémoire dans la notice.)

Cet exemple permet de connaître les formules mises en application dans différents cas de figure, dans un contexte de recherche Avancée ou de recherche Standard (qui suppose quant à lui de pouvoir utiliser deux points d'accès, l'un dédié au champ Titre et l'autre dédié au champ Niveau de description, et de cocher l'opérateur Et). Si le résultat de recherche comprend la(les) notice(s) :

1, 3, 7, 8 et 9 : cela veut dire qu'on a employé soit la formule de recherche avancée expand(title = 'Men from Mars') soit une recherche Standard élargie (avec l'option Expand cochée) portant sur le titre (Egal à) Men from Mars (parce que seules ces notices ont une notice parent ou grand-parent comportant ce titre, sans qu'aucune notice comportant un titre différent n'en fasse partie);
2, 4, 5, 6 et 10 : cela veut dire qu'on a employé soit la formule de recherche avancée expand(title = 'Creatures from Mars') soit une recherche Standard élargie portant sur le titre Creatures from Mars (puisque seuls ces Items comportent ce titre ou sont reliées à une notice parent ou grand-parent qui le comporte);
10 : cela veut dire qu'on a employé soit la formule de recherche avancée description_level = item and expand(title = 'Creatures from Mars') soit une recherche Standard élargie portant sur le niveau Item Et sur le titre Creatures from Mars (puisque c'est le seul Item étant relié à une notice grand-parent qui comporte ce titre);
8 et 9 : cela veut dire qu'on a employé soit la formule de recherche avancée description_level = item and expand(title = 'Men from Mars') soit une recherche Standard élargie portant sur le niveau Item Et sur le titre Men from Mars (puisque ce sont les seuls Items étant reliés à une notice grand-parent qui comporte ce titre);
7 : cela veut dire qu'on a employé soit la formule de recherche avancée description_level = manifestation and expand(title = 'Men from Mars') soit une recherche Standard élargie portant sur le niveau Manifestation Et sur le titre Men from Mars (puisque c'est la seule Manifestation étant reliée à une notice grand-parent qui comporte ce titre).

Notez que les résultats de recherche sont exactement les mêmes s'il n'y a pas d'héritage sur le champ Titre que si le champ Titre est vide de contenu en ce qui concerne les notices 3, 4, 5, 6, 7, 8, 9 et 10, parce que les seuls contenus vraiment balayés par la recherche sont les champs dans lesquels un contenu a été mis en mémoire, et qu'un champ dont les données sont héritées est équivalent à un champ vide. Seules les notices 1 et 2 comportent un titre mis en mémoire.

Autres précisions :

Notez aussi que l'utilisation de Ou (plus expand) pour combiner des requêtes les unes avec les autres sera la plupart du temps inutile parce qu'une telle recherche aurait pour résultat un trop grand nombre de notices. Par exemple, une recherche élargie portant sur le niveau Manifestation OU sur le titte Creatures from Mars (formule de recherche avancée : expand(description_level = manifestation) or expand(title = 'Creatures from Mars')) aura pour résultat les notices 2, 4, 5, 6, 7, 10, mais aussi toutes les autres notices de Manifestation présentes dans la base de données...
Dans le contexte de la recherche Standard, c'est en premier lieu l'option Elargir qui s'applique (à chaque clé de recherche tour à tour), et en second lieu, l'opérateur booléen Et. Il se peut donc que, dans certains des exemples ci-dessus, la recherche élargie ait porté sur le niveau égal à Item ou sur le niveau égal à Manifestation, mais cela n'a pas eu d'influence sur le résultat de recherche étant donné que le champ niveau n'est jamais vide et a un contenu qui lui est propre.
Pour fonctionner correctement, l'opérateur expand implique qu'existe un index sur le champ concerné, ce qui n'est pas le cas pour tous les champs. Au moment où vous exécutez une formule de recherche avec expand, si vous êtes coupé dans votre élan par un message d'erreur évoquant un index lacunaire, c'est pour cette raison. Si vous utilisez Axiell Designer, vous pouvez résoudre le problème simplement en créant l'index voulu. Le message d'erreur permet de connaître l'étiquette (tag) du champ à indexer.