Show Menu
TEMAS×

Instrucción condicional (si, entonces, otra)

La instrucción condicional (si, por lo tanto, si no) se admite en el editor avanzado. Permite definir expresiones más complejas. Se compone de los siguientes elementos:
  • if :: la condición que se va a evaluar primero.
  • then :: la expresión que se va a evaluar en caso de que el resultado de la evaluación de la condición sea true.
  • else :: la expresión que se va a evaluar en caso de que el resultado de la evaluación de la condición sea false.
Se requieren paréntesis en todas las expresiones.
if  (<expression1>)
then
   (<expression2>)
else
   (<expression3>)

<expression1> debe devolver un booleano .
<expression2> y <expression3> debe tener el mismo tipo o tipos compatibles. Las firmas admitidas y los tipos devueltos son:
boolean,boolean : boolean
dateTime,dateTime : dateTime
dateTimeOnly,dateTimeOnly : dateTimeOnly
decimal,integer : decimal
integer,decimal : integer
integer,decimal : decimal
duration,duration : duration
string,string : string
listBoolean,listBoolean : listBoolean
listDateTime,listDateTime : listDateTime
listDateTimeOnly,listDateTimeOnly : listDateTimeOnly
listDecimal,listDecimal : listDecimal
listInteger,listInteger : listInteger
listString,listString : listString

Uso
La instrucción condicional le permite optimizar el flujo de trabajo del viaje reduciendo el número de actividades de condición. Por ejemplo, dentro de la misma actividad de acción, puede especificar dos alternativas para una definición de campo utilizando sólo una expresión de condición.
Ejemplo de una actividad de acción (para un campo que espera una cadena como resultado de la instrucción condicional):
if (startWithIgnoreCase(@{eventiOSPushPermissionAllowed.device.model}, 'iPad') or startWithIgnoreCase(@{eventiOSPushPermissionAllowed.device.model}, 'iOS'))
then
   ('apns')
else
   ('fcm')