Wertauflöser - Kurzfassung
Zweck: Sortiert die Einträge einer als Eingabewert vorliegenden Liste aufsteigend oder absteigend. Optional können hierarchische Sortierkriterien definiert werden, deren Wert-Konfiguration auf alle Listeneinträge angewendet wird.
Tooltip
Verwendung: Der Liste sortieren-Wertauflöser sortiert die Einträge einer als Eingabewert vorliegenden Liste unter Berücksichtigung der konfigurierten Parameter. Der Rückgabewert ist immer eine neue Listeninstanz, die alle Einträge aus dem Eingabewert entsprechend der Sortierreihenfolge auflistet.
Parameter: Folgende Parameter können optional für eine unbestimmte Anzahl von Sortierkriterien verwendet werden, die hierarchisch mit absteigender Priorität angewendet werden:
Der optionale Parameter Vergleichswert kann verwendet werden, um zu definieren, wie für die gegebenen Listeneinträge ein Vergleichswert ermittelt werden soll, der dann anstelle des Listeneintrags zum Sortieren verwendet wird.
Die Option Aufsteigend ist per Standard ausgewählt. Sie muss abgewählt werden, um absteigend zu sortieren.
Hinweise:
Falls kein Eingabewert anliegt, lautet der Rückgabewert
$null.Falls der Eingabewert keine Liste ist, wird als Rückgabewert eine Liste erstellt, die als einzigen Eintrag den Eingabewert enthält.

Der Liste sortieren-Wertauflöser sortiert die Einträge einer als Eingabewert vorliegenden Liste unter Berücksichtigung von einem oder mehreren hierarchischen Sortierkriterien mit folgenden Parametern:
Der optionale Parameter Vergleichswert definiert einen Wertauflöser, der je Listeneintrag angewendet wird, um den für die Sortierung ausschlaggebenden Wert zu ermitteln.
Die Option Aufsteigend (per Standard ausgewählt) definiert die Richtung der Sortierung. Sie kann abgewählt werden, wenn eine absteigende Sortierung gewünscht wird.
Der Rückgabewert ist immer eine neue Listeninstanz, die alle Einträge aus dem Eingabewert entsprechend der Sortierreihenfolge auflistet.
Sonderfälle:
Falls als Eingabewert "Kein Wert" (
$null) vorliegt, lautet auch der Rückgabewert "Kein Wert" ($null).Falls als Eingabewert eine leere Liste (
[]) vorliegt, ist auch der Rückgabewert eine leere Liste ([]).Fall als Eingabewert ein Wert vorliegt, der nicht "Kein Wert" (
$null) aber auch keine Liste ist, dann wird als Rückgabewert eine Liste mit diesem Wert als einzigem Eintrag erzeugt.
Konfiguration
Über den optionalen Parameter Vergleichswert kann ein Wertauflöser definiert werden, der auf jeden Eintrag im Eingabewert angewendet wird, um einen Vergleichswert für die Sortierung zu ermitteln.
|
|
Die Option Aufsteigend ist per Standard ausgewählt, was eine aufsteigende Sortierung nach dem Vergleichswert bewirkt. Wird eine absteigende Sortierung gewünscht, muss die Option Aufsteigend abgewählt werden. | |
Initial sieht die Konfiguration des Liste sortieren-Wertauflösers ein einziges Sortierkriterium vor.
Der Screenshot rechts zeigt eine Konfiguration mit zwei Suchkriterien:
|
|
►HINWEIS◄ Soweit die Konfiguration in einem Kontext vorgenommen wird, der eine Baumansicht beinhaltet, können ihn dieser Sortierkriterien per Darg & Drop neu angeordnet werden, um deren Priorität in der Hierarchie anzupassen.
|
|
Beispiele
Einfacher Anwendungsfall: Simple Werte sortieren
Im folgenden Beispiel soll eine Liste von simplen Werten (in JSON-Notation: [1,8,6,null]) in absteigender Sortierung ausgegeben werden.
Laufzeitbeispiel:

Konfiguration:
Im Kontext einer Ausführen mit-Ereignisaktion wird zunächst die zwecks Demonstration statisch definierte Liste wie rechts abgebildet als Bezugsobjekt für die folgenden Ereignisaktionen definiert:
|
|
Variante:
Ausgehend vom vorherigen Beispiel sollen die statisch definierten Listeneinträge nun in zufälliger Reihenfolge ausgegeben werden.
Konfiguration: (Als Anpassung innerhalb der vorherigen Konfiguration)
Im Liste sortieren-Wertauflöser wird nun ein Vergleichswert über den Zufälliger Long-Wert-Wertauflöser definiert. Dieser Wertauflöser "würfelt" einen Wert aus dem Wertebereich für den Datentyp ►HINWEIS◄ Die Option Aufsteigend kann wahlweise aus- oder abgewählt werden. Da die Sortierung zufällig ist, beeinflusst dies zwar die Reihenfolge der Einträge im konkreten Fall. Auf das zufällige Sortieren insgesamt hat das ausnahmsweise aber keinen Einfluss. Effektiv erscheint die Reihenfolge im Rückgabewert immer zufällig. |
|
Typischer Anwendungsfall: Eine Liste von Objekten nach einem bestimmten Feld sortieren
Innerhalb einer Ereignisbehandlung verweist Variable ( Dabei soll für jede beteiligte Firma eine eigene Benachrichtigung erscheinen, die ausgewählte Adressmerkmale der Firma nach einem einheitlichen Schema wiedergibt. Konkret sollen die Firmen durch eine Serie von Benachrichtigungen des Typs "Info" in alphabetischer Reihenfolge nach dem Feld "Name" ( | Laufzeitbeispiel:
|
Konfiguration:
Auf die Variable
|
|
Besonderer Anwendungsfall: Mehrstufige Sortierung
Die Sortierung der Firmen im vorigen Beispiel soll nun so angepasst werden, dass zunächst nach dem Länderkennzeichen (countryCode) und erst danach nach dem Firmennamen sortiert wird.
Laufzeitbeispiel: (für dieselbe Liste von beteiligten Firmen wie oben)

Konfiguration:
Um eine mehrstufige Sortierung zu erreichen, muss innerhalb der bestehenden Konfiguration nur ein zusätzliches Sortierkriterium (per ►HINWEIS◄ Wie der Screenshot rechts zeigt, sollte dieses an erster Stelle der Liste positioniert sein. Da s Hinzufügen per |
|
►WICHTIG◄ Der Objekt-Feld-Wertauflöser für das "Land" ( Anhand der Sortierung für das oberste Kriterium "Land" im konkreten Beispiel ( Die Sortierreihenfolge für Aufzählungswerte ist abhängig vom Ausführungskontext (Server/Client) unterschiedlich geregelt:
Für die im Beispiel referenzierten Länder - "Deutschland" ( Für eine Liste mit den Ländern "Deutschland" (
Für eine stabile Sortierung mit Werten aus Dynamischen Aufzählungen sollte man daher dringend explizit entscheiden, wie diese Werte eingebunden werden sollen. | |
Der Screenshot rechts zeigt eine Variante der obigen Konfiguration, in der für das erste Sortierkriterium das Feld "Name" ( Der verkettete In Großbuchstaben-Wertauflöser stellt sicher, dass die Sortierung ohne Unterscheidung der Groß-/Kleinschreibung im Feld "Name" erfolgt. Dass in der Aufzählung alle Namen in Großbuchstaben hinterlegt sind, ist ebenfalls nur eine "verletzliche" Konvention. ►ANMERKUNG◄ In der Konfiguration rechts wurde im Objekt-Feld-Wertauflöser der Datenfeldpfad ausgewählt, der direkt zum Namen des Aufzählungswerts führt:
Derselbe Effekt kann mit einer Verkettung von zwei oder drei Objekt-Feld-Wertauflösern erzielt werden. |
|
Die Variante im Screenshot rechts sieht der vorherigen recht ähnlich, verzichtet aber darauf, Feld "Name" ( Der verkettete In Großbuchstaben-Wertauflöser erkennt, dass der Eingabewert (Typ Land) kein
|
|
Die etwas aufwändigere Konfiguration im Screenshot rechts zielt darauf ab, sowohl im Server-Kontext als auch im Client-Kontext eine Sortierung nach der Lokalisierung für das in der Adresse referenzierte Land für die Aktuelle Sprache in Großbuchstaben (also ohne Berücksichtigung der Groß-/Kleinschreibung) zu erzwingen:
Die abgebildete Wertauflöserkette schickt für die Länder der DACH-Region (als Beispiel) deren Standard-Lokalisierungen für die Aktuelle Sprache "Deutsch" (
Allerdings sortieren Server und Client den Umlaut "Ö" wiederum unterschiedlich (ASCII-Code/"OE"), sodass Österreich im Server-Kontext nach der Schweiz und im Client-Kontext zwischen Deutschland und der Schweiz eingeordnet wird. |
|










