Contrôle de la séquence de tri utilisée pour afficher les listes

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 3 minutes de lecture
  • Toutes les listes ont une séquence de tri par défaut basée sur le type de champs présents dans la liste.

    Lorsqu’un utilisateur affiche une liste pour la première fois, celle-ci est triée en fonction de l’un des éléments suivants.

    • Les arguments ORDERBY ont trouvé l’URL. (Voir la section suivante sur le contrôle de l’ordre de tri.)
    • Les préférences utilisateur <table>.db.order et <table>.db.order.direction .
    • L’attribut de dictionnaire isOrder .
    • Le champ Ordre s’il est présent dans la table.
    • Le champ Numéro s’il est présent dans la table.
    • Le champ Nom s’il est présent dans la table.
    • Champ spécifié comme champ d’affichage pour la table.
    Remarque :
    La table de tâches est une exception à la séquence précédente. La tâche et les tables étendues à partir de la tâche utilisent le champ Nombre lorsqu’aucun argument d’URL ou préférence utilisateur n’est trouvé.

    Définition de l’ordre par défaut avec les préférences utilisateur

    Les préférences utilisateur <table>.db.order et <table>.db.order.direction déterminent le sens de champ et de tri vus par l’utilisateur. Un tri par défaut peut être créé en créant des enregistrements de préférences utilisateur sans valeur dans le champ Utilisateur et en cochant la case Système . Cette préférence est appliquée à tous les utilisateurs qui n’ont pas leur propre préférence.

    Définition de l’ordre de tri par défaut dans le dictionnaire système

    Un administrateur peut définir l’ordre de tri des enregistrements affichés pour une table dans le dictionnaire système lorsqu’aucun autre tri n’est spécifié. Cela se fait en ajoutant un attribut appelé isOrder avec une valeur true à l’entrée de dictionnaire du champ souhaité. Ce tri est l’ordre de tri présenté à tous les utilisateurs initialement. Une fois qu’un utilisateur trie une liste, cette préférence utilisateur est enregistrée et la liste est toujours triée pour cet utilisateur en fonction de sa préférence de tri précédente.

    Remarque :
    isOrder peut définir le champ utilisé pour le tri des listes, mais ne peut pas contrôler le sens de tri.

    Tri d’une colonne d’une liste en fonction de la langue de la session

    Par défaut, lors du tri des colonnes dans des listes, les valeurs de champ sont classées en fonction de l’alphabet anglais. Pour prendre en charge le tri d’une colonne en fonction de la langue de la session de l’utilisateur, vous pouvez configurer le comportement de l’instance et le comportement de colonnes individuelles. Consultez Tri selon la langue de la session.

    Contrôle de l’ordre de tri

    Pour toute liste, si l’utilisateur a cliqué sur un en-tête de colonne pour effectuer un tri sur cette colonne, cette action est mémorisée. Lors du prochain affichage de cette liste, le même champ sera utilisé pour ordonner la liste.

    Ce champ de tri mémorisé peut être remplacé en ajoutant une spécification sysparm_order à la définition du module. Par exemple, si vous souhaitez répertorier les nouveaux éléments par ordre d’importance à chaque fois que des actualités sont affichées, le module Actualités peut être mis à jour en conséquence.

    Figure 1. Définir l’ordre de tri des modules sur la valeur du champ Importance
    Arguments de module pour définir l’ordre de tri en fonction du champ Importance

    L’ordre réel (croissant ou décroissant) peut être spécifié en ajoutant une spécification sysparm_order_direction . Voici deux exemples de tri d’une liste par champ sys_created_on , l’un croissant et l’autre décroissant :

    &sysparm_order=sys_created_on &sysparm_order_direction=desc
    &sysparm_order=sys_created_on &sysparm_order_direction=asc

    Trier par plusieurs champs

    Pour trier une liste par plusieurs champs, supprimez tous les éléments du champ de filtre et placez-le dans le champ Arguments. Par exemple, si le filtre spécifie [Actif] [est] [vrai] et que vous souhaitez trier par catégorie et sous-catégorie, supprimez la condition et mettez ce qui suit dans les arguments du module :

    active=true^ORDERBYcategory^ORDERBYsubcategory

    Cet argument trie d’abord par catégorie, puis par sous-catégorie. Si vous voulez qu’un champ soit un tri décroissant, remplacez ORDERBY par ORDERBYDESC.