Sort (FPScript)

21.09.2021

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:

Konstante

Bedeutung

SORT_Y

Bei zusammengesetzten Datenstrukturen wird nach der Y-Komponente sortiert.

SORT_X

Bei zusammengesetzten Datenstrukturen wird nach der X-Komponente sortiert.

SORT_Z

Bei zusammengesetzten Datenstrukturen wird nach der Z-Komponente sortiert.

...plus einer oder mehreren optionalen Konstanten.

Konstante

Bedeutung

+ SORT_DESCENDING

Diese Konstante bewirkt, dass absteigend sortiert wird.

+ SORT_INDEX

Diese Konstante bewirkt, dass ein Indexdatensatz ausgegeben wird, welcher das Sortierergebnis repräsentiert.

+ SORT_CASE_SENSITIVE

Diese Konstante bewirkt, dass beim Sortieren von Zeichenketten die Groß-/Kleinschreibung berücksichtigt wird.

+ SORT_ALPHANUMERIC

Diese Konstante bewirkt, dass identische Zeichenketten, die mit aufsteigenden Ziffern enden, numerisch aufsteigend sortiert werden.

+ SORT_COLLATE

Diese Konstante bewirkt, dass beim Sortieren von Zeichenketten die Einsortierungsregeln der eingestellten Sprache berücksichtigt werden.

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.

Artikel teilen oder als Email versenden:

Diese Beiträge könnten Sie ebenfalls interessieren