if()
La función if (o iif ) tiene tres parámetros: si el primer parámetro no es 0/true, se devolverá el segundo parámetro, en caso contrario el tercero. Por ejemplo:
if([ZJN2];"si";"no")
Si el campo adicional sí/no está marcado, la expresión devuelve sí y no en caso contrario.
El tercer parámetro también puede omitirse. Entonces, la función devuelve cero en el caso falso.
switch()
switch tiene un número arbitrario de parámetros, que alternan una condición y un resultado. Si el primer parámetro es verdadero, se devolverá el resultado del segundo parámetro. En caso contrario, si el tercer parámetro es verdadero, se devolverá el resultado del cuarto parámetro, y así sucesivamente. Por ejemplo:
switch([Dorsal]<100;"A";[Dorsal]<200;"B";[Dorsal]<300;"C")
Si el número de dorsal es inferior a 100, se devolverá A. Si el número de dorsal es inferior a 200 (pero mayor o igual a 100), se devolverá B. Si el número de dorsal es menor que 300 (pero mayor o igual que 200), se devolverá C. Si el número de dorsal es mayor o igual a 300, se devolverá cero.
choose()
choose tiene un número arbitrario de resultados. El primer parámetro es un número entero que es el índice del parámetro que se devolverá. Por ejemplo:
choose(4;"A";"B";"C";"D";"E") - devuelve el cuarto parámetro después del índice: D
Este ejemplo convierte el estado de los participantes (codificado como número) en un texto:
choose([Status]+1;"regular";"o.o.c.";"DSQ";"DNF";"DNS";"n/a")