Filter
Bei allen Applikationselementen, die Daten auflisten, können fest hinterlegte Filter eingerichtet werden. Auch bei manchen Prozesselementen, wie z.B. der Datengruppen-Aktion, können Filter angewendet werden.
Abhängigkeiten
Im Gegensatz zu fest hinterlegten Filtern können Filter in Applikationen auch dynamisch mit einer so genannten "Abhängigkeit" aufgebaut werden. Dabei löst eine Eingabe in einem anderen Applikationselement den Filter, der über eine Abhängigkeit (z.B. in einer Ansichtstabelle) definiert ist, aus.
Alle Informationen zu Abhängigkeiten finden Sie hier.
Fest hinterlegte Filter
Im Eigenschaftendialog von Applikationselementen, die gefiltert werden können, finden Sie jeweils die Schaltfläche "Filter".
Klicken Sie auf "Filter".
Filter
In diesem Dialog, den Sie in den Eigenschaften von Applikations- und Prozesselementen erreichen, finden Sie alle bereits definierten Filterausdrücke.
Neuen Filterausdruck hinzufügen / Filterausdruck bearbeiten
Öffnet einen Dialog, in dem ein oder mehrere Filterausdrücke erstellt bzw. bearbeitet werden können.
Filterausdruck
Wenn Sie mehrere Filterausdrücke erstellen, kann die Art der Verknüpfung der einzelnen Ausdrücke ausgewählt werden. Bei einer UND-Verknüpfung werden nur Datensätze geliefert, die alle Kriterien erfüllen, bei einer ODER-Verknüpfung Datensätze, die wenigstens ein Kriterium erfüllen.
Ein Filterausdruck besteht aus drei Teilen:
-
Daten, die gefiltert werden sollen
-
Operator, der die Art des Vergleichs festlegt
-
Vergleichswert, mit dem die zu filternden Daten verglichen werden.
1. Daten
Datengruppe / Datenfeld
Wählen Sie hier die Datengruppe und das Datenfeld aus, dessen Werte gefiltert werden sollen. Auch Datenfelder aus einer über- oder untergeordneten Datengruppe können im Filterausdruck verwendet werden.
2. Operation
Je nach Datentyp des ausgewählten Datenfeldes stehen unterschiedliche Operatoren zur Verfügung.
Datentyp string, text |
|
---|---|
Operator |
Liefert als Ergebnis |
Gleich |
Jede mit dem Vergleichswert identische Zeichenfolge. Dabei wird die Groß- und Kleinschreibung unterschieden. |
Ungleich |
Jede nicht mit dem Vergleichswert identische Zeichenfolge. Dabei wird die Groß- und Kleinschreibung unterschieden. |
Kleiner oder gleich |
Jede Zeichenfolge, deren Zeichenwert (ASCII) kleiner oder gleich dem Zeichenwert des Vergleichswerts ist. |
Kleiner als |
Jede Zeichenfolge, deren Zeichenwert (ASCII) kleiner als der Zeichenwert des Vergleichswerts ist. |
Größer oder gleich |
Jede Zeichenfolge, deren Zeichenwert (ASCII) größer oder gleich dem Zeichenwert des Vergleichswerts ist. |
Größer als |
Jede Zeichenfolge, deren Zeichenwert (ASCII) größer als der Zeichenwert des Vergleichswerts ist. |
Undefiniert |
Alle Datensätze, in denen das Datenfeld keine gültigen Werte enthält oder noch nicht initialisiert wurde. Bei diesem Operator muss kein Vergleichswert festgelegt werden. |
Definiert |
Das Datenfeld enthält einen beliebigen Wert. Als beliebiger Wert gilt dabei auch ein Leerstring - z.B. wenn ohne eine Eingabe gespeichert wurde. Bei diesem Operator muss kein Vergleichswert festgelegt werden. |
Enthält |
Alle Zeichenfolgen, die den Vergleichswert enthalten. |
Beginnt mit |
Alle Zeichenfolgen, die mit dem Vergleichswert beginnen. |
Endet mit |
Alle Zeichenfolgen, die mit dem Vergleichswert enden. |
Ist enthalten in |
Alle Zeichenfolgen, die im Vergleichswert als Teilmenge vorkommen. Ist die Zeichenfolge, die das Datenfeld liefert, mit dem Vergleichswert identisch, so wird kein Ergebnis zurückgegeben. Mehrere Werte können mit || separiert angeben werden. |
Ist nicht enthalten in |
Alle Zeichenfolgen, die nicht als Teilmenge im Vergleichswert vorkommen. Mehrere Werte können mit || separiert angeben werden. |
Mit den Operatoren "Kleiner oder gleich", "Kleiner als", "Größer oder gleich" und "Größer als" können z.B. Kunden- oder Artikelnummern gefiltert werden, die aus Buchstaben und Zahlenfolgen bestehen.
Bei einer Nummer "C1000" können mit dem ASCII-Wert der Zeichenfolge kleinere Nummern ermittelt werden. Der Großbuchstabe "C" hat den ASCII-Wert 67, die Ziffer "1" den Wert 49, die Ziffer "0" den Wert 48. Die oben genannten Operatoren vergleichen ASCII-Werte lexikografisch. Mit dem Operator "Kleiner als" werden alle Nummern, die kleiner als "C1000" sind, geliefert ("C999", "C998" etc). Um Datensätze zu ermitteln, die im Datenfeld keinen Eintrag haben, muss über eine ODER-Verknüpfung abgefragt werden, ob der Wert des Feldes NULL ist (Operator "Undefiniert"), oder ob der Eintrag leer ist, weil ohne Eingabe gespeichert wurde.
Um einen Leerstring zu ermitteln, wählen Sie den Operator "Gleich" und stellen den Vergleichswert "Benutzerdefiniert" ein. Das Feld "Zeichenkette" bleibt in diesem Fall leer. Sollen alle Felder mit Eintrag (kein Leerstring und nicht NULL) gefiltert werden, so muss auf dieselbe Weise über eine UND-Verknüpfung verglichen werden.
Datentyp integer, double, datetime |
|
---|---|
Operator |
Liefert als Ergebnis |
Gleich |
Alle gleichen Werte |
Ungleich |
Alle ungleichen Werte |
Kleiner oder gleich |
Kleinere und gleiche Werte |
Kleiner als |
Kleinere Werte |
Größer oder gleich |
Größere und gleiche Werte |
Größer als |
Größere Werte |
Undefiniert |
Alle Datensätze, bei denen das Datenfeld keine gültigen Daten enthält oder noch nicht initialisiert wurde. Bei diesem Operator muss kein Vergleichswert festgelegt werden. |
Definiert |
Das Datenfeld enthält einen beliebigen Wert. Bei diesem Operator muss kein Vergleichswert festgelegt werden. |
Ist enthalten in |
wie Operator "Gleich" |
Ist nicht enthalten in |
wie Operator "Ungleich" |
Ist enthalten in Mandanten |
Steht nur zur Auswahl, wenn als Datenfeld die BenutzerID oder eine GUID aus der Benutzer-Applikation gewählt wurde. Kann mit den Systemwerten "Ausgewählte Mandanten des aktuellen Benutzers" und "Alle Mandanten des aktuellen Benutzers" verglichen werden, um die aktuellen Daten auf den bzw. die Mandanten zu filtern, die dem aktuellen Benutzer zugeordnet sind. Weitere Informationen zum Thema finden Sie hier. |
Datentyp boolean |
|
---|---|
Operator |
Liefert als Ergebnis |
Gleich |
Gleiche Wahrheitswerte |
Undefiniert |
Alle NULL-Werte |
Definiert |
Datensätze, bei denen das Datenfeld den Wert "Wahr" oder "Falsch" hat. |
Negation
Bei den Operatoren "Enthält", "Beginnt mit" und "Endet mit" kann die Einstellung "Negation" gewählt werden. Damit werden alle Datensätze gefiltert, auf die der aktuelle Operator nicht zutrifft.
3. Vergleichswert
Als Vergleichswert kann ein beliebiges Daten- oder Referenzfeld ausgewählt werden. Ein Vergleich ist nur bei übereinstimmendem Datentyp möglich.
Aktueller Wert
Diese Option kann ausgewählt werden, wenn der Filterausdruck von einer Seite aus erstellt wird, die einen Datensatz anzeigt. Das Filterergebnis enthält dann alle Datensätze, die dem aktuellen Wert des hier ausgewählten Datenfeldes - entsprechend dem gewählten Operator - enthalten.
Datenfeld einer Elterndatengruppe auswählen
Öffnet einen Dialog, in dem Datenfelder einer übergeordneten Datengruppe ausgewählt werden können. Die Schaltfläche ist nur aktiv, wenn die Datengruppe eine Eltern-Datengruppe (oder höher) hat.
Aktueller Benutzer
Mit dieser Option kann ein Vergleichswert aus dem Modul "Benutzer" ausgewählt werden.
Wird mit einem Integer-Datenfeld (1) verglichen, so stehen hier zur Auswahl:
-
Anmeldeversuche (Anzahl der fehlgeschlagenen Anmeldeversuche)
-
Benutzer-ID / Container-ID / Klassen-ID
-
Geschlecht
Gesperrt
-
Priorität des Benutzers.
-
Stellvertreter-ID / Vorgesetzten-ID (mit dem Operator "Ist enthalten in" kann der Stellvertreter bzw. der Vorgesetzte des aktuellen Benutzers ermittelt werden)
Bei Datenfeldern (1) mit anderen Datentypen können weitere entsprechende Felder aus dem Modul "Benutzer" als Vergleichswert ausgewählt werden.
Systemwert
Datensatz-ID
ID des aktuell angezeigten Datensatzes.
Eltern-Datensatz-ID
ID des übergeordneten Datensatzes.
Set / Container
Vergleich mit den entsprechenden Objekten aus dem Modul "Benutzer", die jeweils aus der Auswahlliste unterhalb der Option ausgewählt werden können.
Liefert mit dem Operator "Ist enthalten in" Datensätze von Benutzern, die im Set bzw. im Container enthalten sind. Es werden ausschließlich Benutzer ermittelt, keine anderen Objekte wie z.B. Benutzergruppen.
Exchange-Mailbox-Info
String- oder text-Datenfelder (1) können mit dem Systemwert "Exchange-Mailbox-Info" verglichen werden. Folgende Werte sind möglich:
INBOX
(HRef des Ordners Posteingang),
USERMAILADDRESS
(E-Mail-Adresse des Exchangebenutzers),
USERMAILBOX
(Mailbox des Exchangebenutzers),
DRAFTS
(Href des Ordners Entwürfe),
DELETEDITEMS
(HRef des Ordners Gelöschte Objekte),
SENTITEMS
(HRef des Ordners Gesendete Objekte),
CALENDAR
(HRef des Ordners Kalender),
CONTACTS
(HRef des Ordners Kontakte),
TASKS
(HRef des Ordners Aufgaben),
VERSION
(Version des Exchange-Servers aus der Exchange-Konfiguration)
In "Vorgabe" kann ein Defaultwert eingetragen werden, der verwendet wird, wenn die Variable nicht definiert ist.
Sprache
Beim Vergleichswert "Sprache" werden die Tabelleneinträge je nach Spracheinstellung des Portals gefiltert. Voraussetzung ist, dass mit einem Datenfeld (Datentyp "string") verglichen wird, in dem die Sprachkürzel (z.B. de, en) pro Datensatz erfasst wurden.
Layout
Beim Vergleichswert "Layout" werden die Tabelleneinträge je nach dem aktuell geladenen Layout gefiltert.
Ausgewählte Mandanten des aktuellen Benutzers
Liefert mit dem Operator "Ist enthalten in Mandanten" die Datensätze, die in den vom Benutzer ausgewählten Mandanten enthalten sind. Weitere Informationen zum Thema finden Sie hier.
Alle Mandanten des aktuellen Benutzers
Liefert mit dem Operator "Ist enthalten in Mandanten" die Datensätze, die in allen Mandanten, die dem Benutzer zugeordnet sind, enthalten sind. Weitere Informationen zum Thema finden Sie hier.
Anpassung
Wird mit einem Datenfeld mit dem Datentyyp "datetime" verglichen, so kann dessen Wert mit dem aktuellen Datum und aktuellen Uhrzeit verglichen werden. Informationen zur Anpassung finden Sie hier.
Bitte beachten Sie beim Filtern von Zeiträumen, dass ein Tag immer um 0:00 Uhr beginnt. Wenn Sie also den Zeitraum 1.8. bis 5.8. filtern möchten, muss der Filterausdruck ">1.8. und <6.8." lauten, damit der 5.8. noch im Filter eingeschlossen wird.
Binding
Hier kann mit Sessionwerten, Requestwerten, Werten aus dem Verarbeitungskontext, Systemdatenfeldern oder Parametern verglichen werden. Der Vergleich mit Parametern ist nur in Applikationen möglich. In Prozessen stehen Parameter als Vergleichswerte nicht zur Verfügung. Im API-Umfeld können hier auch API-Parameter für den Vergleich verwendet werden.
Vorgabe
Tragen Sie hier den Namen des Bindings ein.
Benutzerdefiniert
Als benutzerdefinierter, statischer Vergleichswert kann bei string-Datenfeldern eine beliebige Zeichenkette angegeben werden. Bitte berücksichtigen Sie dabei die Groß- und Kleinschreibung. Bei Integer- oder Double-Datenfeldern kann mit einer beliebigen Zahl verglichen werden. Datetime-Datenfelder können mit einem beliebigen Datum verglichen werden.
Unterabfrage
Eine Unterabfrage kann im Vergleichswert in Kombination mit den Operatoren "Ist enthalten in" oder "Ist nicht enthalten in" ausgeführt werden.
Unterabfrage bearbeiten
Öffnet einen Dialog, in dem die Unterabfrage auf eine Datengruppe definiert werden kann.
Eigenschaften der Unterabfrage
Diesen Dialog finden Sie unter anderem auch bei Filterausdrücken in Abhängigkeiten.
Wählen Sie hier Applikation, Datengruppe und Datenfeld für den Rückgabewert der Unterabfrage aus.
Klicken Sie "OK", um Änderungen zu speichern und den Dialog wieder zu schließen.
Klicken Sie "OK", um die Konfiguration des Filterausdrucks zu speichern und den Dialog wieder zu schließen.
Der fertiggestellte Filterausdruck wird nun hier angezeigt.
Filter im Expert-Modus bearbeiten
Öffnet den Filter-Editor, in dem das XML des Filters direkt bearbeitet werden kann.