Automatische Vervollständigung für Referenzfelder

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 8 Minuten Lesedauer
  • Standardmäßig wird ein Referenzfeld automatisch ausgefüllt, wenn der Benutzer etwas in das Feld eingibt.

    Administratoren können zusätzliche Optionen für die automatische Vervollständigung konfigurieren. Ein Anwender muss über Leseberechtigung auf Tabellenebene für die referenzierte Tabelle verfügen, damit die Optionen automatisch vervollständigt werden können.
    Abbildung : 1. Automatische Vervollständigung
    Ein Anwender gibt Text ein, und die Autovervollständigung schlägt für das Feld Mitarbeiter „Joe“ vor.

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

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

    Tabelle : 1. Wörterbuchattribute für automatische Vervollständigung für Referenzfelder
    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 Auswahlmöglichkeiten für die automatische Vervollständigung als Dropdown-Auswahlliste an. In der Liste wird nur die Anzeigewertspalte der Referenztabelle angezeigt. Referenzfelder verwenden diese Klasse automatisch, wenn keine andere Klasse für die automatische Vervollständigung angegeben ist.
    • AJAXTableCompleter: Zeigt übereinstimmende Auswahlmöglichkeiten für die automatische 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.
    • AJAXReferenceChoice: Zeigt übereinstimmende Auswahlmöglichkeiten für die automatische 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. ref_ac_columns=user_name;email;sys_created_on ermöglicht beispielsweise 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, nach der die Auswahlmöglichkeiten für die automatische Vervollständigung sortiert werden. Beispielsweise sortiert ref_ac_order_by=name die Auswahlmöglichkeiten für die automatische Vervollständigung alphabetisch nach Name.

    UI-Funktionen zur automatischen Vervollständigung

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

    • Der Tabellenvervollständiger zeigt immer die Anzahl der Datensätze an, die von der automatisch vervollständigten Abfrage gefunden werden.
    • Der Tabellenvervollständiger hebt die gesamte ausgewählte Zeile hervor, indem er die Farbe des Hintergrunds und des Texts ändert.
    • Der Tabellenvervollständiger listet für jede Spalte einen Wert 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 grauer Schrift an. Zuvor hat der Tabellenvervollständiger eine leere Zelle in einer Spalte angezeigt, die einen doppelten Wert enthält.
    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 zur automatischen Vervollständigung für alle Verweise auf eine Tabelle

    Ein Feld erbt und verwendet die Attribute der Referenztabelle zur automatischen Vervollständigung, es sei denn, das Feld enthält 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.

    Verwenden Sie diese Schritte, um Attribute für die automatische Vervollständigung für alle Felder in einer Tabelle zu definieren, die noch keine eigenen Attribute für die automatische Vervollständigung aufweisen. In diesem Beispiel wird beschrieben, wie Sie Attribute zur automatischen Vervollständigung für alle Verweise auf die Tabelle „Benutzer“ [sys_user] definieren.
    Hinweis:
    Der Attributwert der automatischen Vervollständigung eines Felds ersetzt den Attributwert der automatischen Vervollständigung einer Tabelle. Dies bedeutet, dass jeder vorhandene Wert auf Feldebene für ein Attribut der automatischen Vervollständigung jeden Wert ersetzt, den der Administrator aus der Referenztabelle auf das Attribut der automatischen Vervollständigung anwendet.

    Prozedur

    1. Navigieren Sie zu einer Liste der Zieltabelle, z. B. Alle > Anwenderadministration > 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 Listentitelmenü, 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 Link sys_user aus.
    4. Klicken Sie unter „Zugehörige Links“auf Erweiterte Ansicht.
    5. Geben Sie im Feld Attribute eine durch Kommas getrennte Liste von Attributen zur automatischen Vervollständigung ein, die auf alle Felder in der Tabelle angewendet werden sollen.
      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 Attribute für die automatische Vervollständigung zu testen, öffnen Sie ein Formular, das auf die Tabelle „Benutzer“ [sys_user] verweist, z. B. einen offenen Incident. Geben Sie ein einzelnes Zeichen in das Feld Zugewiesen an ein. Die Optionen zur automatischen Vervollständigung umfassen jetzt den Anwendernamen und die Abteilung.
    Liste automatisch vervollständigen

    Entfernen Sie die Anzeigewertspalte

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

    Vorbereitungen

    Erforderliche Rolle: personalize_dictionary

    Warum und wann dieser Vorgang ausgeführt wird

    Dies führt dazu, dass das Referenzfeld die Anzeigewertspalte entfernt und nur die im Attribut ref_ac_columns aufgeführten Spalten anzeigt. 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. Dies bedeutet, dass jede Aktion der automatischen Vervollständigung 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 Sie die Spalte „Anzeigewert“ aus Verweisen auf die Tabelle „Benutzer“ [sys_user] entfernen und durch Verweise auf die Spalten „first_name“ und „last_name“ ersetzen.

    Prozedur

    1. Navigieren Sie zu einer Liste der Zieltabelle, z. B. Alle > Anwenderadministration > 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 Listentitelmenü, 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 Link sys_user aus.
    4. Klicken Sie unter „Zugehörige Links“auf Erweiterte Ansicht.
    5. Fügen Sie im Feld Attribute die Attribute ref_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 Attribute für die automatische Vervollständigung zu testen, öffnen Sie ein Formular, das auf die Tabelle „Benutzer“ [sys_user] verweist, z. B. einen offenen Incident. Geben Sie ein einzelnes Zeichen in das Feld Zugewiesen an ein. Die Optionen zur automatischen Vervollständigung blenden jetzt die Spalte „Anzeigewert“ (user_name) aus und zeigen nur die Spalten „first_name“ und „last_name“ an.

    Automatische Vervollständigung ohne Anzeigewert

    Verbessern Sie Abfragen zur 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, wenn ein Anwender ein Referenzfeld durchsucht, ineffiziente „ Enthält “-Abfragen ausführt. Sie können festlegen, dass für alle Referenzfelder eine Starts with- Abfrage verwendet wird.

    Vorbereitungen

    Erforderliche Rolle: Administrator

    Warum und wann dieser Vorgang ausgeführt wird

    Das folgende Beispiel veranschaulicht eine „enthält “-Abfrage. Beachten Sie, dass der Buchstabe „d“ an beliebiger Stelle im Vor- oder Nachnamen des Anwenders steht.
    Autovervollständigen enthält Abfrage

    In diesem Verfahren wird beschrieben, 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 Filter Wechseln zur Suche für die Spalte Name ein.
    3. Ersetzen Sie im Feld Wertfalse durch true.
      Hinweis:
      Wenn Sie die Systemeigenschaft glide.ui.ref_ac.startswith auf „wahr“ setzen, werden vorhandene autocomplete.contains -Einstellungen sowohl in den Einstellungen auf Anwender- als auch auf der Systemebene überschrieben. Diese Eigenschaft ändert die Abfragemethode der Autovervollständigung für alle Benutzer unabhängig von ihren Einstellungen.
    4. Klicken Sie auf Aktualisieren.
    5. Testen Sie den Change, indem Sie einen Datensatz mit einem Referenzfeld öffnen und ein Zeichen eingeben (siehe folgendes Beispiel).
      Die automatische Vervollständigung beginnt mit der Abfrage

    Konfigurieren Sie die automatische Vervollständigung, um Text aus einem beliebigen Referenzfeld abzugleichen

    Standardmäßig stimmt die automatische Vervollständigung nur mit Text in der Spalte „Anzeigewert“ überein. Sie können ein Referenzfeld so konfigurieren, dass es dem Text aus jeder zusätzlichen Spalte entspricht, die das Referenzfeld anzeigt.

    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 für den Abgleich von Text in jeder Spalte zu aktivieren, die im Attribut ref_ac_columns aufgeführt ist. Legen Sie das Attribut ref_ac_columns_search auf „wahr“ fest, um Text aus allen Referenzfeldspalten abzugleichen. Standardmäßig (oder wenn dieses Attribut „false“ist) stimmt die automatische Vervollständigung nur mit Text in der Spalte für den Anzeigewert überein.

    Prozedur

    1. Klicken Sie mit der rechten Maustaste auf die Bezeichnung eines Referenzfelds.
    2. Wählen Sie in der Auswahlliste Dictionary konfigurieren aus.
    3. Klicken Sie unter „Zugehörige Links“auf Erweiterte Ansicht.
    4. Fügen Sie im Feld Attribute die gewünschten Attribute der automatischen Vervollständigung hinzu.
      Diese Attribute fügen beispielsweise der Anruferliste das Feld „Abteilung“ 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 Auswahlmöglichkeiten 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 die automatische Vervollständigung für Suchen

    Standardmäßig verwendet die automatische Referenzvervollständigung eine beginnt mit der Suche. Es kann eine Anwendereinstellung erstellt werden, um eine „Enthält “-Suche zu implementieren.

    Vorbereitungen

    Erforderliche Rolle: Administrator

    Prozedur

    1. Deaktivieren Sie die Systemeigenschaft glide.ui.ref_ac.startswith.
      Weitere Informationen finden Sie unter Verbessern Sie Abfragen zur automatischen Vervollständigung.
      Hinweis:
      Wenn Sie die Systemeigenschaft glide.ui.ref_ac.startswith auf „wahr“ setzen, werden vorhandene Einstellungen für „autocomplete.contains“ sowohl in den Einstellungen auf Anwender- als auch auf der Systemebene überschrieben. Diese Eigenschaft ändert die Abfragemethode der automatischen Vervollständigung für alle Benutzer unabhängig von ihren Einstellungen.
    2. Navigieren zu Anwenderadministration > Anwendereinstellungen.
    3. Wählen Sie die Einstellung „“aus.<referenced table> .autocomplete.contains"' .
    4. Legen Sie das Wertfeld auf truefest.
      Die Anwendereinstellung „Autovervollständigen“ ist auf „wahr“ festgelegt
    5. Klicken Sie auf Aktualisieren.

    Nächste Maßnahme

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

    Platzhalter in Referenz-Autovervollständigungen

    Platzhaltersuchen verwenden die Funktion der automatischen Vervollständigung.

    Verwenden Sie ein Sternchen im Referenzfeld für Platzhaltersuchen.

    Abbildung : 4. Platzhaltersuche mit einem Sternchen

    Wenn zwei Sternchen eingegeben werden, wird eine Liste der verfügbaren Datensätze in den Vorschlägen zur automatischen Vervollständigung angezeigt.

    Abbildung : 5. Platzhaltersuche mit zwei Sternchen