Filtern Sie die Daten, die in einem Steuerelement angezeigt werden
Beim Entwerfen einer Microsoft InfoPath 2010-Formularvorlage können Sie Filter verwenden, um Auswahllisten auf eine bestimmte Teilmenge zu beschränken, aus der Benutzer beim Ausfüllen eines Formulars auswählen können. Filter können auch verwendet werden, um eine Teilmenge von Daten aus einer Datenquelle anzuzeigen, wodurch die Anzahl der verfügbaren Datensätze in einem Steuerelement reduziert wird.
In diesem Artikel
Überblick
Verwenden Sie einen Filter, wenn Sie basierend auf definierten Kriterien eine Teilmenge der Daten anzeigen müssen, die von einer Abfrage zurückgegeben werden. Kriterien können ein Element sein, das in einem anderen Steuerelement (z. B. einem Listenfeld, Kombinationsfeld, Dropdown-Listenfeld oder Textfeld) ausgewählt ist, das an ein Feld in der Datenquelle gebunden ist. Wenn Sie beispielsweise eine Formularvorlage erstellen, die verwendet wird, um Produkte von mehreren Lieferanten zu verfolgen, können Sie auswählen, alle Produkte von allen Lieferanten anzuzeigen, oder einen Filter hinzufügen, der es Benutzern ermöglicht, einen Lieferanten auszuwählen und dann nur Produkte von diesem anzuzeigen Anbieter. Wenn der Benutzer dann einen anderen Lieferanten auswählt, wird die Liste mit den Produkten des anderen Lieferanten aktualisiert.
Tipp: Wenn Sie wissen, dass Ihre Benutzer eine konsistente Teilmenge eines Abfrageergebnisses benötigen, ändern Sie Ihre Abfrage so, dass nur diese Teilmenge zurückgegeben wird, anstatt eine Abfrage zum Abrufen aller Daten zu verwenden und dann einen Filter anzuwenden, um eine Teilmenge zu erstellen. Dadurch wird das Laden des Formulars verbessert, da die Abfrage nur die erforderlichen Daten aus der externen Quelle zurückgibt.
Legen Sie einen Filter für ein Listenfeld, Dropdown-Listenfeld oder Kombinationsfeld fest
Zum Konfigurieren eines Filters für ein Listenfeld ist ein Listenfeld, ein Dropdown-Listenfeld oder ein Kombinationsfeld-Steuerelement in der Formularvorlage erforderlich, das aus einer Spalte mit Tabellendaten aufgefüllt wird. Sie können keine Daten filtern, die manuell in ein Steuerelement eingegeben wurden, indem Sie das Dialogfeld Eigenschaften von Steuerelementen verwenden.
Wählen Sie das Steuerelement aus, das Sie filtern möchten.
Klicken Sie unter Steuerelementtools auf der Registerkarte Eigenschaften in der Gruppe Eigenschaften auf Steuerelementeigenschaften .
Führen Sie einen der folgenden Schritte aus:
Um Werte aus Feldern im Formular zu verwenden, klicken Sie auf Auswahl aus Feldern in diesem Formular abrufen .
Um Werte aus einer Datenverbindung zu verwenden, klicken Sie auf Auswahl aus einer externen Datenquelle abrufen und wählen Sie dann die gewünschte Datenquelle aus, die Sie verwenden möchten.
Klicken Sie neben dem Feld Einträge auf XPath auswählen .
Wählen Sie das Feld oder die Gruppe mit den gewünschten Werten für das Steuerelement aus und klicken Sie dann auf Daten filtern .
Klicken Sie auf Hinzufügen .
Hinweis: Wenn Sie einem vorhandenen Filter eine Bedingung hinzufügen möchten, klicken Sie auf den gewünschten Filter und dann auf Ändern .
Klicken Sie im ersten Feld des Dialogfelds „ Filterbedingungen angeben " auf den Namen des Felds, dessen Daten Sie filtern möchten.
Klicken Sie im zweiten Feld auf den Filtertyp, den Sie verwenden möchten.
Klicken Sie im dritten Feld auf den Bedingungstyp, den Sie auf den Filter anwenden möchten, und geben Sie dann die Bedingung ein. Im vorherigen Beispiel wird der Inhalt des Steuerelements gefiltert, sodass der Inhalt des Felds „ Kategorie " dem Inhalt des Felds „Kategorie" in der Datenquelle entspricht.
Wenn Sie zusätzliche Kriterien für den Filter angeben möchten, klicken Sie auf Und und geben Sie dann die gewünschten Kriterien an. Wenn Sie dies tun, wird ein viertes Feld angezeigt. Klicken Sie auf einen Modifikator, klicken Sie auf und , wenn beide Bedingungen auf den Filter angewendet werden sollen, oder klicken Sie auf oder , wenn eine der beiden Bedingungen auf den Filter angewendet werden soll.
Legen Sie einen Filter für einen sich wiederholenden Abschnitt oder eine Tabelle fest
Um einen Filter für einen sich wiederholenden Abschnitt oder eine Tabelle zu konfigurieren, ist ein Listenfeld, ein Dropdown-Listenfeld oder ein Kombinationsfeld-Steuerelement in der Formularvorlage erforderlich, das aus einer Spalte mit tabellarischen Daten in der Hauptdatenquelle des Formulars aufgefüllt wird. Beim Filtern eines sich wiederholenden Abschnitts oder einer Tabelle kann keine externe sekundäre Datenquelle verwendet werden.
Wählen Sie den sich wiederholenden Abschnitt oder die Tabelle aus, die Sie filtern möchten.
Klicken Sie unter Steuerelementtools auf der Registerkarte Eigenschaften in der Gruppe Eigenschaften auf Steuerelementeigenschaften .
Klicken Sie auf die Registerkarte Anzeige .
Klicken Sie auf Daten filtern .
Klicken Sie auf Hinzufügen .
Hinweis: Wenn Sie einem vorhandenen Filter eine Bedingung hinzufügen möchten, klicken Sie auf den gewünschten Filter und dann auf Ändern .
Klicken Sie im ersten Feld des Dialogfelds „ Filterbedingungen angeben " auf den Namen des Felds, dessen Daten Sie filtern möchten.
Klicken Sie im zweiten Feld auf den Filtertyp, den Sie verwenden möchten.
Klicken Sie im dritten Feld auf den Bedingungstyp, den Sie auf den Filter anwenden möchten, und geben Sie dann die Bedingung ein. Im vorherigen Beispiel wird der Inhalt des Steuerelements dahin gefiltert, wo der Inhalt des Felds „Kategorie" im Formular dem Inhalt des Felds „Kategorie" aus der Datenquelle entspricht.
Wenn Sie zusätzliche Kriterien für den Filter angeben möchten, klicken Sie auf Und und geben Sie dann die gewünschten Kriterien an. Wenn Sie dies tun, wird ein viertes Feld angezeigt. Klicken Sie auf einen Modifikator, klicken Sie auf und , wenn beide Bedingungen auf den Filter angewendet werden sollen, oder klicken Sie auf oder , wenn eine der beiden Bedingungen auf den Filter angewendet werden soll.
Unerwartete Filterergebnisse
Wenn beim Testen des Formulars die Werte in dem Steuerelement, das einen Filter enthält, nicht korrekt sind, weil entweder zu viele oder nicht genügend Werte vorhanden sind, versuchen Sie Folgendes:
Wenn Sie mehrere Bedingungen im Filter verwenden, entfernen Sie alle bis auf eine Bedingung, um zu überprüfen, ob die richtigen Werte von dieser einzelnen Bedingung zurückgegeben werden. Wenn die erste Bedingung die richtigen Werte zurückgibt, fügen Sie eine weitere Bedingung hinzu und testen Sie erneut. Fahren Sie fort, jede zusätzliche Bedingung hinzuzufügen, bis das Problem gefunden ist.
Wenn die gefilterten Werte genau das Gegenteil von dem sind, was erwartet wird, z. B. wenn die Produkte aller Lieferanten anstelle der Produkte eines einzelnen Lieferanten angezeigt werden, ändern Sie den Filtertyp in der Bedingung. Wenn die Bedingung beispielsweise den Filtertyp ist gleich verwendet und zu viele Produkte zurückgegeben werden, versuchen Sie es mit dem Filtertyp ist ungleich .
No comments:
Post a Comment