Sort (FPScript)
Sortiert einen Datensatz oder liefert einen Sortierindex zu einem Datensatz.
Syntax
Sort(DataSet [ , Operation = SORT_Y + SORT_INDEX ])
Die Syntax der Sort-Funktion besteht aus folgenden Teilen:
Teil |
Beschreibung |
||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
DataSet |
Ist der zu sortierende Datensatz. Es sind alle Datenstrukturen erlaubt außer Einzelwert und Liste. Unterstützte Datentypen sind 16-Bit Ganzzahl, 32-Bit Ganzzahl, 64-Bit Ganzzahl, 32-Bit Fließkomma, 64-Bit Fließkomma, Zeichenkette, Kalenderzeit und Zeitspanne. Ist das Argument eine Liste, dann wird die Funktion für jedes Element der Liste ausgeführt und das Ergebnis ist ebenfalls eine Liste. |
||||||||||||||||||||
Operation |
Steuert die Ausgabe und wählt bei Signalen die Komponente, nach der sortiert werden soll. Das Argument Operation kann folgende Werte haben:
...plus einer oder mehreren optionalen Konstanten.
Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert SORT_Y + SORT_INDEX gesetzt. |
Anmerkungen
Bei Signalen, Signalreihen und Raumkurven kann die Komponente angegeben werden, nach der sortiert werden soll. Verwenden Sie die Option SORT_INDEX, wenn Sie einen Datensatz als Sortierkriterium für einen oder mehrere andere Datensätze verwenden möchten. Den Indexdatensatz, den Sie als Ergebnis erhalten, können Sie als Argument des Index-Operators verwenden, um andere Datensätze umzusortieren. Wenn Sie SORT_INDEX nicht verwenden, dann hat das Ergebnis die gleiche Struktur und die gleiche Einheit wie das Argument DataSet.
Ungültige Werte werden unabhängig davon, ob auf- oder absteigend sortiert wird, immer an das Ende der Ergebnisreihe gestellt.
Verfügbarkeit
FlexPro Basic, Professional, Developer Suite
Beispiele
Sort({1, 7, 5, 2}) |
Ergibt {0L, 3L, 2L, 1L}. Dies ist die Datenreihe mit den sortierten Indizes. |
Sort({1, 7, 5, 2}, SORT_Y) |
Ergibt {1, 2, 5, 7}. Dies ist die Datenreihe mit den sortierten Werten. |
Sort({1, 7, 5, 2}, SORT_Y + SORT_DESCENDING) |
Ergibt {7, 5, 2, 1}. Dies ist die Datenreihe mit den absteigend sortierten Werten. |
Sort({1, 5, ?, ?, 4, 2}, SORT_Y) |
Ergibt {1, 2, 4, 5, ?, ?}. Ungültige Werte werden immer an das Ende der Ergebnisreihe sortiert. |
Sort({1, 5, ?, ?, 4, 2}, SORT_Y + SORT_DESCENDING) |
Ergibt {5, 4, 2, 1, ?, ?}. Dies gilt auch bei absteigender Sortierung. |
Sort(Signal, SORT_X) |
Sortiert ein Signal so um, dass die X-Komponente aufsteigend wird. |
Sort({"D", "c", "B", "a"}, SORT_CASE_SENSITIVE) |
Ergibt {"B", "D", "a", "c"}. Sortiert die Zeichenketten mit Berücksichtigung der Groß-/Kleinschreibung. |
Sort({"D", "c", "B", "a"}, SORT_IGNORE_CASE) |
Ergibt {"a", "B", "c", "D"}. Sortiert die Zeichenketten ohne Berücksichtigung der Groß-/Kleinschreibung. |
Sort({"ä", "D", "Ä", "c", "B", "a"}, SORT_COLLATE) |
Ergibt {"a", "Ä", "ä", "B", "c", "D"}. Sortiert die Zeichenketten alphabetisch. |
Sort({"Signal1", "Signal11", "Signal2"}, SORT_ALPHANUMERIC) |
Ergibt {"Signal1", "Signal2", "Signal11"}. Sortiert die Zeichenketten numerisch aufsteigend. |
Sort({"b1", "ä2", "ä11", "a1", "b2", "b11", "a11", "ä1", "a2"}, SORT_ALPHANUMERIC + SORT_COLLATE) |
Ergibt {"a1", "a2", "a11", "ä1", "ä2", "ä11", "b1", "b2", "b11"}. Sortiert die Zeichenketten alphabetisch und numerisch aufsteigend. |