¿QUÉ ES UNA REGLA Y CÓMO SE DEFINE?
Una regla, es una forma de agrupar sentencias de código a ejecutarse como reacción a diferentes eventos en la UI. Debemos tener en claro que:
- Se definen mediante la palabra reservada: Rule
- Deben estar declaradas dentro de un contexto que las agrupa, el cual se
define mediante la palabra reservada: RuleContext
- La sintaxis de una regla, dentro de un contexto de reglas, es la siguiente:
RuleContext nombreDelContexto {
Rule nombreDeRegla [cláusula listen] [cláusula when] {
//cuerpo de la regla
}
}
Por otro lado, el proyecto de app puede contener tantos RuleContexts como se quiera, y cada uno con tantas Rules como se requiera.
RuleContext contextoReglas1 {
Rule regla11 {
//cuerpo de la regla
}
…
Rule regla1N {
//cuerpo de la regla
}
}
RuleContext contextoReglas2 {
Rule regla21 {
//cuerpo de la regla
}
…
Rule regla2N {
//cuerpo de la regla
}
}
¿QUÉ EVENTOS DISPARAN LA EJECUCIÓN DE UNA REGLA?
- Tap en un botón en la pantalla por interacción del usuario (regla usando Decision).
- Tap en un componente visual, al que se le asoció una acción de ejecución de regla desde la “Configuración de Eventos” en “UI Builder”.
- Por activación de un listen: el modelo y/o atributo al que la regla está observando fue modificado.
CLÁUSULA LISTEN DE REGLAS
Es la que permite configurar una regla, para que observe uno o más atributos de un modelo, o cadena de atributos y se ejecute si alguno de sus valores cambia.
- La sintaxis de una regla con cláusula listen es la siguiente:
Rule nombreRegla listen(nombreAtributo from modelo as nombreVariable) {
// cuerpo de la regla
}
- nombreAtributo: nombre del atributo a observar. El caracter * puede ser
utilizado para observar todos los atributos del modelo.
- modelo: nombre del modelo que contiene el atributo a observar.
- nombreVariable: nombre de una variable local que se usará dentro del
cuerpo de la regla para referenciar a la instancia del modelo cuyo atributo
fue modificado.
CLÁUSULA WHEN DE REGLAS
Permite agregar condiciones para la ejecución de la regla, de modo que las mismas serán evaluadas y dependiendo del resultado, se ejecutará o no la regla.
- La sintaxis de una regla con cláusula when es la siguiente:
Rule nombreRegla when(expresion booleana) {
// cuerpo de la regla
}
VINCULAR REGLAS A EVENTOS EN LA UI
- Ir al UI Build, al layout de interés, y agrega o selecciona un
componente visual.
- Al hacer click en el componente, ir a “Properties”, “Events”.
Según el componente se tendrán habilitados ciertos eventos, y según
estos, el tipo de acción.
- Seleciona un tipo de evento.
- Selecciona un tipo de acción.
- Completa los campos que aparezcan.
- Click en “+ADD ACTION” y listo (:
TIPOS DE EVENTOS
- TapEvent
- LongPressEvent
- OnSelectEvent
- OnSelectBubbleEvent (sólo en Map View)
Video y PDF no admiten eventos.
TIPOS DE ACCIONES SOBRE LOS EVENTOS
- ShowAlertAction
- NavigateAction
- RunRuleAction
- InvokeFunctionAction
Si te quedó alguna inquietud, no dudes en escribirnos! Por otro lado, en nuestro sitio web podrás encontrar mucha más información.
Te invitamos a ser parte de nuestra comunidad, para que empieces crear tus propios proyectos