TurboPL Referenz Choice Prozedur |
Top Previous Next |
Syntax Choice(Selector: Integer; Expression1, Expression2, ..., ExpressionN): Variant Erklärung Die Funktion liefert den Ausdruck an der von Selektor bestimmten Stelle zurück. Wenn Zahl nicht im Bereich von 1..N liegt, liefert die Funktion als Ergebnis immer den letzten Ausdruck AusdruckN. Je nach Typ des Ausdrucks liefert die Funktion entweder einen String oder einen Zahltyp zurück. Erst wird der bummerische Ausdruck Selector berechnet (ergibt n). Im Anschluß daran wird der n-te Ausdruck berechnet und als Ergebnis dieser Funktion zurückgeliefert. Falls kein n-ter Ausdruck vorhanden ist, wird der letzte Ausdruck der Reihe berechnet. Es muss mindestens ein Ausdruck in der Liste vorhanden sein, sonst wird ein Übersetzungsfehler ausgelöst. Achtung In VDP 3 wurden xWert-Ausdrücke ohne Ausdruck in der Liste übersetzt. Das Ergebnis war aber undefiniert. Beispiel Choice(x, "eins", "zwei", "drei") -> "eins" für x = 1 Sehr praktisch ist diese Funktion beispielsweise bei der Auswertung von Auswahlfeldem. Intern haben Auswahlfelder den Wert 0, wenn sie ganz leer sind, ansonsten eine 1, wenn der erste Wert gewählt ist, eine 2 beim zweiten Wert usw. Im folgenden Beispiel ist "Geschlecht" ein Auswahlfeld mit den Konstanten "weiblich", "männlich" und "unbekannt". Choice(Geschlecht, "Sehr geehrte Frau " + $Name, "Sehr geehrter Herr " + $Name, "Sehr geehrte Damen und Herren") Siehe auch |