Switch('Selector', 'Case1', 'Value1', 'Case2', 'Value2',..., 'Default')
Argumente
|
'Selector' |
Ausdruck, welcher auf verschiedene Bedingungen überprüft wird |
|
|
'CaseN' |
Ausdruck, welcher mit 'Selector' verglichen wird |
|
|
'ValueN' |
Ergebnis, falls 'Selector' und 'CaseN' übereinstimmen |
|
|
'Default' |
Ergebnis, falls keiner der 'CaseN' mit 'Selector' übereinstimmt |
|
Beschreibung
Diese Anweisung vergleicht einen 'Selector'-Ausdruck mit bis zu 100 Fällen 'CaseN', angelehnt an das SQL Statement CASE. Es werden mindestens 3 Argumente benötigt. Bei einer geraden Anzahl von Argumenten wird automatisch das letzte als 'Default' interpretiert, welches herangezogen wird, wenn keiner der 'CaseN'-Ausdrücke mit dem Ausdruck 'Selector' übereinstimmt.
Falls 'Selector' und 'CaseN' übereinstimmen, wird der dazugehörige 'ValueN'-Ausdruck zurückgegeben. Stimmen mehrere 'CaseN' mit 'Selector' überein, wird automatisch der erste 'CaseN'-Ausdruck ausgewählt.
Als 'Selector' sind folgende Signale zulässig:
-
Eine numerische Konstante
-
Eine Text-Konstante
-
Ein äquidistant oder nicht-äquidistant gesampelter Kanal
-
Ein Text-Kanal
Grundsätzlich müssen die Typen der Vergleichswerte zusammenpassen, ansonsten wird der entsprechende Fall nicht ausgewählt.