Autovervollständigen für Referenzfelder

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 8 Minuten Lesedauer
  • Standardmäßig wird ein Referenzfeld automatisch ausgefüllt, wenn der Benutzer das Feld eingibt.

    Administratoren können zusätzliche Optionen für die automatische Vervollständigung konfigurieren. Ein Benutzer muss über eine Leseberechtigung auf Tabellenebene für die referenzierte Tabelle verfügen, damit die automatische Vervollständigung Optionen anzeigt.
    Abbildung : 1. Automatische Vervollständigung

    Wörterbuchattribute für die automatische Vervollständigung von Referenzfeldern

    Es gibt Wörterbuchattribute, die spezifisch für Referenzfelder sind und das Verhalten der automatischen Vervollständigung bestimmen.

    Tabelle : 1. Wörterbuchattribute für die automatische Vervollständigung von Referenzfeldern
    Attribut Beschreibung
    ref_auto_completer Gibt den Namen der clientseitigen JavaScript-Klasse an, die die Dropdown-Auswahlmöglichkeiten für die automatische Vervollständigung erstellt. Zu den gültigen Klassenwerten gehören:
    • AJAXReferenceCompleter: Zeigt übereinstimmende Autovervollständigungsoptionen als Dropdown-Auswahlliste an. In der Liste wird nur die Anzeigewertspalte der Referenztabelle angezeigt. Referenzfelder verwenden diese Klasse automatisch, wenn keine andere Autovervollständigungsklasse angegeben ist.
    • AJAXTableCompleter: Zeigt übereinstimmende Optionen zur automatischen Vervollständigung als Zeilen in einer Tabelle an. Die Tabelle zeigt die Anzeigewertspalte der Referenztabelle und alle im Attribut ref_ac_columns aufgeführten Spalten an.
    • AJAXReferenceChoice: Zeigt übereinstimmende Optionen zur automatischen Vervollständigung als Dropdown-Auswahlliste an. In der Liste wird nur die Anzeigewertspalte der Referenztabelle angezeigt. Darüber hinaus werden in der Liste nur bis zu 25 übereinstimmende Optionen angezeigt. Wenn mehr als 25 Optionen zur automatischen Vervollständigung vorhanden sind, zeigt das Referenzfeld stattdessen die Auswahlmöglichkeiten mit der AJAXTableCompleter-Klasse an.
    ref_ac_columns Gibt die Liste der anzuzeigenden Referenztabellenspalten an. Trennen Sie die Spaltennamen mit einem Semikolon. Zum Beispiel ermöglicht ref_ac_columns=user_name;email;sys_created_on die automatische Vervollständigung, um Text aus den Spalten „user_name“, „email“ und „sys_created_on“ abzugleichen.
    ref_ac_order_by Gibt die Referenztabellenspalte an, die die Autovervollständigungsoptionen sortiert. Zum Beispiel sortiert ref_ac_order_by=name die Auswahlmöglichkeiten für die automatische Vervollständigung alphabetisch nach Name.

    UI-Funktionen der automatischen Vervollständigung

    Die AJAX-Tabellenvervollständiger-Klasse weist eine Reihe von UI-Verbesserungen auf.

    • Der Tabellenvervollständiger zeigt immer die Anzahl der Datensätze an, die die Autovervollständigungsabfrage findet.
    • Der Tabellenvervollständiger hebt die gesamte ausgewählte Zeile hervor, indem die Farbe des Hintergrunds und des Texts geändert wird.
    • Der Tabellenvervollständiger listet einen Wert für jede Spalte auf.
      • Wenn ein Wert zum ersten Mal in einer Spalte angezeigt wird, zeigt ihn der Tabellenvervollständiger in schwarzer Schrift an.
      • Der Tabellenvervollständiger zeigt nachfolgende doppelte Werte in grauem Text an. Zuvor zeigte der Tabellenvervollständiger eine leere Zelle in einer Spalte an, die einen doppelten Wert enthielt.
    Abbildung : 2. Hervorhebung der ausgewählten Zeile

    Legen Sie das Wörterbuchattribut ref_auto_completer=AJAXTableCompleter fest, um diese Verbesserungen zu verwenden.

    Definieren Sie Attribute für die automatische Vervollständigung für alle Verweise auf eine Tabelle

    Ein Feld erbt und verwendet die Autovervollständigungsattribute der Referenztabelle, es sei denn, das Feld hat einen eigenen Wert für dieselben Attribute. Sie können die Attribute für Verweise auf eine Tabelle definieren. Dies wirkt sich auf jedes Formular aus, das auf diese Tabelle verweist.

    Vorbereitungen

    Erforderliche Rolle: personalize_dictionary

    Warum und wann dieser Vorgang ausgeführt wird

    Ein Attribut auf Feldebene überschreibt ein Attribut auf Tabellenebene mit demselben Namen. Wenn ein Feld andere Referenzattribute verwendet als die, die für die Referenztabelle definiert sind, verwendet das Feld beide Attributsätze.

    Führen Sie diese Schritte aus, um Autovervollständigungsattribute für alle Felder in einer Tabelle zu definieren, die noch keine eigenen Autovervollständigungsattribute haben. In diesem Beispiel wird beschrieben, wie Sie Attribute für die automatische Vervollständigung für alle Verweise auf die Benutzertabelle [sys_user] definieren.
    Hinweis:
    Der Attributwert für die automatische Vervollständigung eines Felds ersetzt den Attributwert für die automatische Vervollständigung einer Tabelle. Dies bedeutet, dass jeder vorhandene Wert auf Feldebene für ein Autovervollständigungsattribut jeden Wert ersetzt, den der Administrator aus der Referenztabelle auf das Autovervollständigungsattribut anwendet.

    Prozedur

    1. Navigieren Sie zu einer Liste der Zieltabelle, z. B. Alle > Benutzeradministration > Anwender.
    2. Führen Sie die entsprechende Aktion für Ihre Listenversion aus.
      VersionAktion
      Liste v2 Klicken Sie mit der rechten Maustaste auf den Spaltenheader, und klicken Sie auf Konfigurieren > Lexikon.
      Liste v3 Öffnen Sie das Titelmenü der Liste, klicken Sie auf Konfigurierenund dann auf Wörterbuch.
    3. Wählen Sie die Zeile aus, in der kein Spaltenname aufgeführt ist.
      Diese Zeile ist normalerweise die erste Zeile in der Liste. Wählen Sie beispielsweise den ersten sys_user- Link aus.
    4. Klicken Sie unter Zugehörige Linksauf Erweiterte Ansicht.
    5. Geben Sie im Feld Attribute eine durch Kommas getrennte Liste von Autovervollständigungsattributen ein, die Sie auf alle Felder in der Tabelle anwenden möchten.
      Um beispielsweise die Abteilung des Benutzers mit allen Verweisen auf die Tabelle „sys_user“ anzuzeigen, geben Sie Folgendes ein:
      ref_auto_completer=AJAXTableCompleter,ref_ac_columns=department,ref_ac_order_by=department
    6. Klicken Sie auf Aktualisieren.

    Nächste Maßnahme

    Um die neuen Autovervollständigungsattribute zu testen, öffnen Sie ein Formular, das auf die Benutzertabelle [sys_user] verweist, z. B. einen offenen Incident. Geben Sie ein einzelnes Zeichen in das Feld Zugewiesen an ein. Die Autovervollständigungsoptionen enthalten jetzt sowohl den Benutzernamen als auch die Abteilung.
    Autovervollständigen-Liste

    Entfernen Sie die Spalte „Anzeigewert“.

    Sie können die Anzeigewertspalte aus einem Referenzfeld entfernen, indem Sie das Attribut ref_ac_display_value auf „false“ setzen.

    Vorbereitungen

    Erforderliche Rolle: personalize_dictionary

    Warum und wann dieser Vorgang ausgeführt wird

    Dadurch entfernt das Referenzfeld die Anzeigewertspalte und zeigt nur die im Attribut ref_ac_columns aufgeführten Spalten an. Diese Funktion erfordert die Verwendung der Klasse AJAXTableCompleter und der Attribute ref_ac_columns, ref_ac_columns_searchund ref_ac_display_value.
    Hinweis:
    Die automatische Vervollständigung kann keinen Text aus zusätzlichen Spalten abgleichen, wenn das Referenzfeld ein Produkt des UI-Makros ui_reference ist. Das bedeutet, dass jede Autovervollständigungsaktion für eine Auswahl, z. B. die Liste „Identität eines Benutzers annehmen“, nur Text mit dem Anzeigewert abgleichen kann.

    In diesem Beispiel wird beschrieben, wie die Anzeigewertspalte aus Verweisen auf die Benutzertabelle [sys_user] entfernt und durch Verweise auf die Spalten „first_name“ und „last_name“ ersetzt wird.

    Prozedur

    1. Navigieren Sie zu einer Liste der Zieltabelle, z. B. Alle > Benutzeradministration > Anwender.
    2. Führen Sie die entsprechende Aktion für Ihre Listenversion aus.
      VersionAktion
      Liste v2 Klicken Sie mit der rechten Maustaste auf den Spaltenheader, und klicken Sie auf Konfigurieren > Lexikon.
      Liste v3 Öffnen Sie das Titelmenü der Liste, klicken Sie auf Konfigurierenund dann auf Dictionary.
    3. Wählen Sie die Zeile aus, in der kein Spaltenname aufgeführt ist.
      Diese Zeile ist normalerweise die erste Zeile in der Liste. Wählen Sie beispielsweise den ersten sys_user- Link aus.
    4. Klicken Sie unter Zugehörige Linksauf Erweiterte Ansicht.
    5. Fügen Sie im Feld Attribute die Attributeref_auto_completer, ref_ac_columns,ref_ac_columns_search und ref_ac_display_value hinzu.
      Um beispielsweise die Spalte „Anzeigewert“ auszublenden und nur den Vor- und Nachnamen des Benutzers anzuzeigen, geben Sie Folgendes ein.
      ref_auto_completer=AJAXTableCompleter,ref_ac_columns=first_name;last_name,ref_ac_columns_search=true,ref_ac_display_value=false
    6. Klicken Sie auf Aktualisieren.

    Nächste Maßnahme

    Um die neuen Autovervollständigungsattribute zu testen, öffnen Sie ein Formular, das auf die Benutzertabelle [sys_user] verweist, z. B. einen offenen Incident. Geben Sie ein einzelnes Zeichen in das Feld Zugewiesen an ein. Die Autovervollständigungsoptionen blenden jetzt die Anzeigewertspalte (user_name) aus und zeigen nur die Spalten „first_name“ und „last_name“ an.

    Automatische Vervollständigung ohne Anzeigewert

    Verbessern von Abfragen der automatischen Vervollständigung

    Standardmäßig verwenden alle Referenzfelder eine Abfrage vom Typ „ beginnt mit “, um nach übereinstimmendem Text in der Referenztabelle zu suchen. Dadurch wird verhindert, dass die automatische Vervollständigung jedes Mal ineffiziente Abfragen vom Typ „ Enthält “ ausführt, wenn ein Benutzer ein Referenzfeld durchsucht. Sie können anfordern, dass alle Referenzfelder eine „Beginnt mit “-Abfrage verwenden.

    Vorbereitungen

    Erforderliche Rolle: admin

    Warum und wann dieser Vorgang ausgeführt wird

    Das folgende Beispiel zeigt eine Abfrage vom Typ „ Enthält “. Beachten Sie, dass der Buchstabe „d“ im Vor- oder Nachnamen des Benutzers vorkommt.
    Autovervollständigung enthält Abfrage

    Dieses Verfahren beschreibt, wie Sie die Systemeigenschaft glide.ui.ref_ac.startswith so ändern, dass immer eine starts with -Abfrage verwendet wird.

    Prozedur

    1. Geben Sie im Navigationsfilter sys_properties.list ein, und drücken Sie die Eingabetaste.
    2. Wählen Sie die Eigenschaft glide.ui.ref_ac.startswith aus.
      Um nach der Eigenschaft zu suchen, geben Sie *startswith im Suchfilter Go to search (Zu Suchfilter wechseln) für die Spalte Name ein.
    3. Ersetzen Sie im Feld Wert den Wertfalse durch true.
      Hinweis:
      Wenn die Systemeigenschaft glide.ui.ref_ac.startswith auf „ true “ festgelegt wird, werden alle vorhandenen autocomplete.contains Einstellungen in den Einstellungen auf Benutzer- und Systemebene überschrieben. Diese Eigenschaft ändert die Abfragemethode der automatischen Vervollständigung für alle Benutzer unabhängig von den Einstellungen.
    4. Klicken Sie auf Aktualisieren.
    5. Testen Sie die Änderung, indem Sie einen Datensatz mit einem Referenzfeld öffnen und ein Zeichen eingeben, wie im folgenden Beispiel dargestellt.
      Autovervollständigung beginnt mit Abfrage

    Konfigurieren Sie die automatische Vervollständigung so, dass Text aus einem beliebigen Referenzfeld abgeglichen wird

    Standardmäßig stimmt die automatische Vervollständigung nur mit Text in der Spalte „Anzeigewert“ überein. Sie können ein Referenzfeld so konfigurieren, dass Text aus einer beliebigen zusätzlichen Spalte abgeglichen wird, die im Referenzfeld angezeigt wird.

    Vorbereitungen

    Erforderliche Rolle: personalize_dictionary

    Warum und wann dieser Vorgang ausgeführt wird

    Sie können das Attribut ref_ac_columns_search hinzufügen, um die automatische Vervollständigung so zu aktivieren, dass Text in einer beliebigen Spalte abgeglichen wird, die im Attribut ref_ac_columns aufgeführt ist. Legen Sie das Attribut ref_ac_columns_search auf „ true “ fest, um Text aus allen Referenzfeldspalten abzugleichen. Standardmäßig (oder wenn dieses Attribut auf „ false“ festgelegt ist) stimmt die automatische Vervollständigung nur mit Text in der Anzeigewertspalte überein.

    Prozedur

    1. Klicken Sie mit der rechten Maustaste auf die Bezeichnung eines Referenzfelds.
    2. Wählen Sie Dictionary konfigurieren aus der Auswahlliste aus.
    3. Klicken Sie unter Zugehörige Linksauf Erweiterte Ansicht.
    4. Fügen Sie im Feld Attribute die gewünschten Autovervollständigungsattribute hinzu.
      Die folgenden Attribute fügen beispielsweise das Feld „Abteilung“ der Anruferliste hinzu und sortieren Anrufer nach ihrer Abteilung:
      ref_auto_completer=AJAXTableCompleter,ref_ac_columns=department,ref_ac_order_by=department,ref_ac_columns_search=true 
      Abbildung : 3. Attribut der automatischen Vervollständigung
      Anruferliste mit Name und Abteilung
    5. Klicken Sie auf Aktualisieren.

    Beispiel

    Im folgenden Beispiel wird beschrieben, wie Sie im Feld Konfigurationselement festlegen, dass die CI-Klassennamen aus den Optionen für die automatische Vervollständigung für die Tabelle „Konfigurationselement“ [cmdb_ci] angezeigt werden.
    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
    Hinweis:
    Das Attribut ref_contributions steuert die Symbole, die neben dem Referenzfeld angezeigt werden.

    Zusätzliche CI-Attribute

    Aktivieren Sie „Enthält Autovervollständigen“-Suchen

    Standardmäßig verwendet die automatische Referenzvervollständigung eine Suche, die mit beginnt. Eine Benutzereinstellung kann erstellt werden, um eine Enthält -Suche zu implementieren.

    Vorbereitungen

    Erforderliche Rolle: admin

    Prozedur

    1. Deaktivieren Sie die Systemeigenschaft glide.ui.ref_ac.startswith.
      Weitere Informationen finden Sie unter Verbessern von Abfragen der automatischen Vervollständigung.
      Hinweis:
      Wenn die Systemeigenschaft glide.ui.ref_ac.startswith auf „ true “ festgelegt wird, werden alle vorhandenen „autocomplete.contains“-Einstellungen in den Einstellungen auf Benutzer- und Systemebene überschrieben. Diese Eigenschaft ändert die Abfragemethode der automatischen Vervollständigung für alle Benutzer unabhängig von den Einstellungen.
    2. Navigieren zu Benutzeradministration > Benutzereinstellungen.
    3. Wählen Sie die Einstellung „“ aus.<referenced table> .autocomplete.contains"' .
    4. Legen Sie das Wertfeld auf true fest.
      Benutzereinstellung für automatische Vervollständigung auf „wahr“ festgelegt
    5. Klicken Sie auf Aktualisieren.

    Nächste Maßnahme

    Melden Sie sich ab und wieder an, um die aktualisierte Suche anzuzeigen.

    Platzhalterzeichen in der automatischen Referenzvervollständigung

    Platzhaltersuchen verwenden die Funktion zur automatischen Vervollständigung.

    Verwenden Sie im Referenzfeld für Platzhaltersuchen ein Sternchen.

    Abbildung : 4. Eine Sternchen-Platzhaltersuche

    Wenn zwei Sternchen eingegeben werden, wird eine Liste der verfügbaren Datensätze in den Autovervollständigungsvorschlägen angezeigt.

    Abbildung : 5. Platzhaltersuche mit zwei Sternchen