Lenguaje de Expresiones
Te permiten implementar lógica de negocio en el modelamiento de los procesos.
Ej:
- Condiciones para avanzar hacia una tarea
- Renderizado de documentos
- Renderizado de formularios
Variables Simple
Simple almacena variables obtenidas durante un trámite.
El valor de las variables es un JSON.
Ej:
["hola mundo", "bla bla"]
"Juan"
{"codigo": "UY", "pais": "Uruguay"}
Los inputs de los formularios almacenan sus resultados en variables Simple.
También las variables pueden ser llenadas por otros métodos:
- Acción Generar Variable
- Acción Consultar Webservice
Las variables se obtienen en Simple mediante la sintaxis:
@@nombreDeVariable
Variables de Sesión Simple
Simple adicionalmente almacena variables de sesión. Corresponden a datos del usuario logueado y realizando el trámite.
Las variables de sesión disponible son:
nombresapellido_paternoapellido_maternoemailtramite_id
Las variables de sesión se obtienen en Simple mediante la sintaxis:
@!nombreDeVariable
Variable Globales Simple
Simple adicionalmente almacena variables con la información de todos los trámites correspondientes a un proceso.
Por ejemplo, si la variable de un trámite se llama edad, la variable global edad obtendrá un array de todos los campos edad que ha completado la gente que ha hecho el trámite.
Las variables globales se obtienen en Simple mediante la sintaxis:
@#nombreDeVariable
Operaciones con expresiones
El motor de expresiones de Simple permite incluso aplicar funciones sobre una variable.
Ej:
strlen(@@nombreDeVariable)
Se admiten todas las funciones PHP que se encuentre dentro de una Whitelist:
application/libraries/SaferEval.php
Se permiten también operadores lógicos PHP
==, >=, <=, !=, <,>
Motor de expresiones
El motor que calcula el resultado de las expresiones simple se encuentra en:
application/models/regla.php
Esta clase Regla tiene los siguientes métodos:
// Constructor: Asigna la expresión a evaluar
public function __construct($regla)
// Evalúa una expresión y da su resultado
public function evaluar($etapa_id)
public function getExpresionParaEvaluar($etapa_id)
Obtiene la expresión que será evaluada
Por ejemplo, este es el resultado si ejecuta el método evaluar con la siguiente expresión:
strlen(@@nombre) => 7 //@@nombre = "Nicolas"
Este es el resultado si se ejecuta en cambio el método getExpresionParaEvaluar
strlen(@@nombre) => strlen(“Nicolas”) //@@nombre = "Nicolas"