Saisie semi-automatique pour les champs de référence

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 9 minutes de lecture
  • Par défaut, un champ de référence se remplit automatiquement lorsque l’utilisateur saisit ce qui est dans le champ.

    Les administrateurs peuvent configurer des options de saisie semi-automatique supplémentaires. Un utilisateur doit disposer d’une autorisation de lecture au niveau de la table sur la table référencée pour que la saisie semi-automatique affiche toutes les options.
    Figure 1. Saisie semi-automatique
    Un utilisateur saisit joe, et la saisie semi-automatique suggère Joe Employee pour le champ.

    Attributs du dictionnaire pour la saisie semi-automatique des champs de référence

    Il existe des attributs de dictionnaire spécifiques aux champs de référence qui déterminent le comportement de saisie semi-automatique.

    Tableau 1. Attributs du dictionnaire d’auto-complétion du champ de référence
    Attribut Description
    ref_auto_completer Spécifie le nom de la classe JavaScript côté client qui crée les choix de saisie semi-automatique de la liste déroulante. Les valeurs de classe valides comprennent :
    • AJAXReferenceCompleter: affiche les choix de saisie semi-automatique correspondants sous forme de liste de choix déroulante. La liste affiche uniquement la colonne de valeur d’affichage de la table de référence. Les champs de référence utilisent automatiquement cette classe si aucune autre classe de saisie semi-automatique n’est spécifiée.
    • AJAXTableCompleter: affiche les choix de saisie semi-automatique correspondants sous forme de lignes dans un tableau. La table affiche la colonne de valeur d’affichage de la table de référence et toutes les colonnes répertoriées dans l’attribut ref_ac_columns .
    • AJAXReferenceChoice: affiche les choix de saisie semi-automatique correspondants sous forme de liste de choix déroulante. La liste affiche uniquement la colonne de valeur d’affichage de la table de référence. En outre, la liste n'affiche que jusqu'à 25 choix correspondants. S'il y a plus de 25 choix d'exécution automatique, le champ de référence affiche les choix avec la classe AJAXTableCompleter à la place.
    ref_ac_columns Spécifie la liste des colonnes de table de référence à afficher. Séparez les noms des colonnes par des points-virgules. Par exemple, ref_ac_columns=user_name;email;sys_created_on permet la saisie semi-automatique pour faire correspondre le texte des colonnes user_name, e-mail et sys_created_on.
    ref_ac_order_by Spécifie la colonne de table de référence qui trie les choix de saisie semi-automatique. Par exemple, ref_ac_order_by=name trie les choix de saisie semi-automatique par ordre alphabétique de nom.

    Fonctionnalités d’interface utilisateur de saisie semi-automatique

    La classe de compléteur de table AJAX a un certain nombre d’améliorations de l’interface utilisateur.

    • Le compléteur de table affiche toujours le nombre d’enregistrements détectés par la requête de saisie semi-automatique.
    • Le compléteur de table met en surbrillance l’intégralité de la ligne sélectionnée en modifiant la couleur de l’arrière-plan et du texte.
    • Le compléteur de table indique une valeur pour chaque colonne.
      • La première fois qu’une valeur apparaît dans une colonne, le compléteur de table l’affiche en noir.
      • Le compléteur de table affiche les valeurs dupliquées suivantes en gris. Auparavant, le compléteur de table affichait une cellule vide dans une colonne contenant une valeur en double.
    Figure 2. Surlignage de la ligne sélectionnée

    Définissez l’attribut de ref_auto_completer=AJAXTableCompleter dictionnaire pour utiliser ces améliorations.

    Définir des attributs de saisie semi-automatique pour toutes les références à une table

    Un champ hérite et utilise les attributs de saisie semi-automatique de la table de référence, sauf si le champ possède sa propre valeur pour les mêmes attributs. Vous pouvez définir les attributs des références à une table, et cela affecte tous les formulaires qui font référence à cette table.

    Avant de commencer

    Rôle requis : personalize_dictionary

    Pourquoi et quand exécuter cette tâche

    Un attribut de niveau champ remplace un attribut de niveau table du même nom. Si un champ utilise des attributs de référence différents de ceux définis pour la table de référence, le champ utilise les deux ensembles d’attributs.

    Suivez ces étapes pour définir des attributs de saisie semi-automatique pour tous les champs d’une table qui n’ont pas déjà leurs propres attributs de saisie semi-automatique. Cet exemple décrit comment définir des attributs de saisie semi-automatique pour toutes les références à la table Utilisateur [sys_user].
    Remarque :
    La valeur d’attribut de saisie semi-automatique d’un champ remplace la valeur d’attribut de saisie semi-automatique d’une table. Cela signifie que toute valeur existante au niveau du champ pour un attribut de saisie semi-automatique remplace toute valeur que l’administrateur applique à l’attribut de saisie semi-automatique de la table de référence.

    Procédure

    1. Accédez à la liste de la table cible, par exemple Tous > Administration utilisateurs > Utilisateurs.
    2. Effectuez l’action appropriée pour la version de votre liste.
      VersionAction
      Liste v2 Cliquez avec le bouton droit sur l’en-tête de colonne, puis cliquez sur Configurer > Dictionnaire.
      Liste v3 Ouvrez le menu du titre de la liste et cliquez sur Configurer, puis sur Dictionnaire.
    3. Sélectionnez la ligne qui ne répertorie pas de nom de colonne.
      Cette ligne est généralement la première ligne de la liste. Par exemple, sélectionnez le premier lien sys_user .
    4. Sous Liens connexes, cliquez sur Vue avancée.
    5. Dans le champ Attributs , saisissez une liste séparée par des virgules des attributs de saisie semi-automatique que vous souhaitez appliquer à tous les champs de la table.
      Par exemple, pour afficher le département de l’utilisateur avec toutes les références à la table sys_user, saisissez :
      ref_auto_completer=AJAXTableCompleter,ref_ac_columns=department,ref_ac_order_by=department
    6. Cliquez sur Mettre à jour.

    Que faire ensuite

    Pour tester les nouveaux attributs de saisie semi-automatique, ouvrez un formulaire qui fait référence à la table Utilisateur [sys_user], par exemple un incident ouvert. Saisissez un seul caractère dans le champ Affecté à . Les options de saisie semi-automatique incluent désormais à la fois le nom d’utilisateur et le département.
    Liste de saisie semi-automatique

    Supprimer la colonne de valeur d’affichage

    Vous pouvez supprimer la colonne de valeur d’affichage d’un champ de référence en définissant l’attribut ref_ac_display_value sur false.

    Avant de commencer

    Rôle requis : personalize_dictionary

    Pourquoi et quand exécuter cette tâche

    Le champ de référence supprime alors la colonne de valeur d’affichage et n’affiche que les colonnes répertoriées dans l’attribut ref_ac_columns . Cette fonctionnalité nécessite l’utilisation de la classe AJAXTableCompleter et des ref_ac_columnsattributs , ref_ac_columns_searchet ref_ac_display_value .
    Remarque :
    La saisie semi-automatique ne peut pas faire correspondre le texte des colonnes supplémentaires lorsque le champ de référence est un produit de la ui_reference macro d’interface utilisateur. Cela signifie que toute action de saisie semi-automatique sur un sélecteur, telle que la liste Emprunter l’identité d’un utilisateur, ne peut faire correspondre que le texte à la valeur d’affichage.

    Cet exemple décrit comment supprimer la colonne de valeur d’affichage des références à la table Utilisateur [sys_user] et la remplacer par des références aux colonnes first_name et last_name.

    Procédure

    1. Accédez à la liste de la table cible, par exemple Tous > Administration utilisateurs > Utilisateurs.
    2. Effectuez l’action appropriée pour la version de votre liste.
      VersionAction
      Liste v2 Cliquez avec le bouton droit sur l’en-tête de colonne, puis cliquez sur Configurer > Dictionnaire.
      Liste v3 Ouvrez le menu du titre de la liste et cliquez sur Configurer, puis sur Dictionnaire.
    3. Sélectionnez la ligne qui ne répertorie pas de nom de colonne.
      Cette ligne est généralement la première ligne de la liste. Par exemple, sélectionnez le premier lien sys_user .
    4. Sous Liens connexes, cliquez sur Vue avancée.
    5. Dans le champ Attributs , ajoutez les ref_auto_completerattributs , ref_ac_columns,ref_ac_columns_search et ref_ac_display_value .
      Par exemple, pour masquer la colonne de valeur d’affichage et n’afficher que les noms et prénoms de l’utilisateur, saisissez ce qui suit.
      ref_auto_completer=AJAXTableCompleter,ref_ac_columns=first_name;last_name,ref_ac_columns_search=true,ref_ac_display_value=false
    6. Cliquez sur Mettre à jour.

    Que faire ensuite

    Pour tester les nouveaux attributs de saisie semi-automatique, ouvrez un formulaire qui fait référence à la table Utilisateur [sys_user], par exemple un incident ouvert. Saisissez un seul caractère dans le champ Affecté à . Les options de saisie semi-automatique masquent désormais la colonne de valeur d’affichage (user_name) et n’affichent que les colonnes first_name et last_name.

    Saisie semi-automatique aucune valeur d’affichage

    Améliorer les requêtes de saisie semi-automatique

    Par défaut, tous les champs de référence utilisent une requête Démarrer par pour rechercher le texte correspondant dans la table de référence. Cela empêche la saisie semi-automatique d’exécuter des requêtes contains inefficaces chaque fois qu’un utilisateur recherche un champ de référence. Vous pouvez exiger que tous les champs de référence utilisent une requête Commence par .

    Avant de commencer

    Rôle requis : admin

    Pourquoi et quand exécuter cette tâche

    L’exemple suivant illustre une requête containholder . Notez que la lettre « d » apparaît n’importe où dans le prénom ou le nom de famille de l’utilisateur.
    La saisie semi-automatique contient une requête

    Cette procédure décrit comment modifier la glide.ui.ref_ac.startswith propriété système pour toujours utiliser une starts with requête.

    Procédure

    1. Dans le filtre de navigation, saisissez sys_properties.list et appuyez sur la touche Entrée.
    2. Sélectionnez la propriété glide.ui.ref_ac.startswith.
      Pour rechercher la propriété, entrez *startswith dans le filtre Accéder à la recherche de la colonne Nom .
    3. Dans le champ Valeur , remplacez faux par vrai.
      Remarque :
      La définition de la propriété système sur true remplace tous les paramètres existants autocomplete.contains dans les préférences au niveau de l’utilisateur glide.ui.ref_ac.startswith et du système. Cette propriété modifie la méthode de requête de saisie semi-automatique pour tous les utilisateurs, quelles que soient leurs préférences.
    4. Cliquez sur Mettre à jour.
    5. Testez le changement en ouvrant un enregistrement avec un champ de référence et en y entrant un caractère, comme illustré dans l’exemple ci-dessous.
      La saisie semi-automatique commence par une requête

    Configurer la saisie semi-automatique pour faire correspondre le texte de n’importe quel champ de référence

    Par défaut, la saisie semi-automatique correspond uniquement au texte de la colonne de valeur d’affichage. Vous pouvez configurer un champ de référence pour qu’il corresponde au texte de n’importe quelle colonne supplémentaire affichée par le champ de référence.

    Avant de commencer

    Rôle requis : personalize_dictionary

    Pourquoi et quand exécuter cette tâche

    Vous pouvez ajouter l’attribut pour activer la ref_ac_columns_search saisie semi-automatique afin qu’elle corresponde au texte de n’importe quelle colonne répertoriée dans l’attribut ref_ac_columns . Définissez l’attribut ref_ac_columns_search sur vrai pour correspondre au texte de toutes les colonnes de champ de référence. Par défaut (ou lorsque cet attribut est faux), la saisie semi-automatique correspond uniquement au texte de la colonne de valeur d’affichage.

    Procédure

    1. Cliquez avec le bouton droit sur l’étiquette d’un champ de référence.
    2. Sélectionnez Configurer le dictionnaire dans la liste de choix.
    3. Sous Liens connexes, cliquez sur Vue avancée.
    4. Dans le champ Attributs , ajoutez les attributs d’achèvement automatique souhaités.
      Par exemple, ces attributs ajoutent le champ Département à la liste des appelants et trient les appelants par département :
      ref_auto_completer=AJAXTableCompleter,ref_ac_columns=department,ref_ac_order_by=department,ref_ac_columns_search=true 
      Figure 3. Attribut de saisie semi-automatique
      Liste de l’appelant avec nom et département
    5. Cliquez sur Mettre à jour.

    Exemple

    L’exemple suivant décrit comment définir le champ Élément de configuration pour afficher les noms de classe CI à partir des choix de saisie semi-automatique pour la table Élément de configuration [cmdb_ci].
    ref_auto_completer=AJAXTableCompleter ,ref_ac_columns =sys_class_name ,ref_ac_order_by =sys_class_name ,ref_contributions =task_show_ci_map ;ci_show_incidents
    Remarque :
    L’attribut ref_contributions contrôle les icônes qui apparaissent en regard du champ de référence.

    Attributs de CI supplémentaires

    Activer les recherches de saisie semi-automatique contient

    Par défaut, la saisie semi-automatique de référence utilise un démarrage par recherche. Une préférence utilisateur peut être créée pour implémenter une recherche contient .

    Avant de commencer

    Rôle requis : admin

    Procédure

    1. Désactivez la propriété système glide.ui.ref_ac.startswith .
      Pour plus d'informations, consultez Améliorer les requêtes de saisie semi-automatique.
      Remarque :
      La définition de la glide.ui.ref_ac.startswith propriété système sur true remplace tous les paramètres « autocomplete.contains » existants dans les préférences utilisateur et système. Cette propriété modifie la méthode de requête de saisie semi-automatique pour tous les utilisateurs, quelles que soient leurs préférences.
    2. Accédez à la Administration utilisateurs > Préférences utilisateur.
    3. Sélectionnez la préférence « '<table référencée>.autocomplete.contient"'.
    4. Définissez le champ de valeur sur vrai.
      Préférence utilisateur de saisie semi-automatique définie sur vrai
    5. Cliquez sur Mettre à jour.

    Que faire ensuite

    Déconnectez-vous puis reconnectez-vous pour afficher la recherche mise à jour.

    Caractères génériques dans les références à saisie semi-automatique

    Les recherches par caractères génériques utilisent la fonctionnalité de saisie semi-automatique.

    Utilisez un astérisque dans le champ de référence pour les recherches par caractères génériques.

    Figure 4. Recherche par caractère générique avec un astérisque

    Si deux astérisques sont saisis, une liste des enregistrements disponibles s’affiche dans les suggestions de saisie semi-automatique.

    Figure 5. Recherche par caractères génériques avec deux astérisques