i
Funciones
Una función es una unidad de software que realiza una tarea particular que se define en los asistentes de modelado y es utilizada al realizar operaciones con los formularios. Puede recibir parámetros de entrada y devuelve un resultado.
Las funciones se agrupan en categorías y pueden ser utilizadas para definir reglas de validación, cálculo, obligatoriedad, visibilidad y editabilidad.
Pueden utilizarse:
•Desde el asistente de selección de funciones, que puede ser utilizado para definir propiedades de un formulario y su proceso asociado, así como también definir cálculos que se realizan al momento de utilizar el formulario, mediante el uso de un asistente asistente de funciones en este documento.
•Desde la definición de condiciones en reglas en propiedades de los formularios o para verificar condiciones de edición, obligatoriedad, visibilidad y validaciones en propiedades de los campos.
Asistente de Selección de Funciones
Las reglas que pueden modelarse mediante la utilización del asistente de selección de funciones son aquellas que permiten realizar cálculos y formar parte del texto de descripción de formularios o de casos.
Uso
El asistente se utiliza desde el ícono al presionarlo se abre una ventana con la grilla de funciones y los elementos necesarios para la navegación, filtrado y paginado.
Puede ser utilizado desde diferentes funcionalidades:
•Reglas de cálculo
•Definición de la propiedad Valor Predeterminado en campos de formularios
•Flujos de procesos, incluye el mensaje del flujo y las condiciones
•Parámetros en actividades automáticas en los procesos
Se abre una ventana con la lista de funciones y una vez seleccionada una de ellas, la misma se incluye en el área de la descripción del formulario o caso o bien el área correspondiente a la vista preliminar del cálculo de la regla.
Elementos
•Selección de cantidad de registros a mostrar en la ventana.
•Campo de búsqueda para poder filtrar las funciones, el filtro puede realizarse tanto por las propiedades Nombre Descriptivo como por Categoría.
•Lista de funciones donde se visualizan las propiedades en modo de grilla.
•Botones para el paginado.
Propiedades
Nombre Descriptivo
Se usa en la interfaz cuando se la referencia, en la lista de funciones. Soporta multi-idioma.
Categoría
Agrupamiento por tipo de funciones.
Ejemplo
Corresponde a la forma en que se puede utilizar la función en las áreas de condiciones o cálculo, directamente sin utilizar el asistente
Clasificación de Funciones por Categorías
Ejecución
Estas funciones recuperan información relativa a la instancia del formulario que se está utilizando, al proceso si tuviera uno asociado y del usuario o unidad organizacional.
Nombre Descriptivo |
Descripción |
Ejemplo |
---|---|---|
Apellido del Usuario Actual |
Retorna el apellido del usuario que tiene establecida sesión. |
apellidoUsuarioActual() |
Código de Actividad Actual |
Retorna el código de la actividad en ejecución. No funciona en la primera actividad del proceso por no estar creado el caso. |
codigoActividadActual() |
Código de Proceso Actual |
Retorna el código del proceso del caso que se está ejecutando. No funciona en la primera actividad del proceso por no estar creado el caso. |
codigoProceso() |
Descripción de la Actividad Actual |
Retorna la descripción de la actividad en ejecución. No funciona en la primera actividad del proceso por no estar creado el caso. |
descripcionActividadActual() |
Descripción del Proceso Actual |
Retorna la descripción del proceso del caso que se está ejecutando. No funciona en la primera actividad del proceso por no estar creado el caso. |
descripcionProceso() |
Email de la Unidad Organizacional del Usuario Ejecutor |
Retorna la dirección de email de la unidad organizacional del usuario que está ejecutando al momento de evaluarse la función. No funciona en la primera actividad del proceso por no estar creado el caso. |
emailUnidadOrgUsuario() |
Email del Administrador de la Unidad Organizacional del Usuario Ejecutor |
Retorna la dirección de email del administrador de la unidad organizacional del usuario que está ejecutando al momento de evaluarse la función. |
emailAdministradorUnidadOrg() |
Email del Coordinador del Rol del Usuario Ejecutor |
Retorna la dirección de email del coordinador del rol que está ejecutando al momento de evaluarse la función. No funciona en la primera actividad del proceso. |
emailCoordinadorRolActual() |
Email del Usuario Ejecutor |
Retorna la dirección de email del usuario que está ejecutando al momento de evaluarse la función. No funciona en la primera actividad del proceso. |
emailUsuarioActual() |
Nombre de Actividad Actual |
Retorna el nombre de la actividad en ejecución. No funciona en la primera actividad del proceso por no estar creado el caso. |
nombreActividadActual() |
Nombre de la UO del Usuario Online |
Retorna el nombre de la unidad organizacional del usuario que inició la sesión. |
nombreUnidadOrgUsuarioActual() |
Nombre del Proceso Actual |
Retorna el nombre del proceso del caso que se está ejecutando. No funciona en la primera actividad del proceso. |
nombreProceso() |
Nombre del Usuario Actual |
Retorna el nombre del usuario que inició la sesión. |
nombreUsuarioActual() |
Número de Caso
|
Retorna el número de caso. No funciona en la primera actividad del proceso por no estar creado el caso. |
numeroCaso() |
Número de Caso de Hilo Principal |
Retorna el identificador del caso originario de un hilo. |
numeroCasoOriginal() |
Número de Caso Principal |
Retorna el número del caso principal. |
numeroCasoPpal() |
Unidad Organizacional del Ejecutor |
Retorna el código de la unidad organizacional del usuario ejecutor. No funciona en la primera actividad del proceso por no estar creado el caso. |
codigoUnidadOrgActual() |
Unidad Organizacional del Usuario Online |
Retorna la unidad organizacional del usuario que inició la sesión. |
unidadOrgUsuarioActual() |
Usuario Ejecutor |
Retorna el código del usuario que está ejecutando la actividad en curso. No funciona en la primera actividad del proceso. |
usuarioEjecutor() |
Usuario Ejecutor de la Actividad del Proceso Actual |
Retorna el código del usuario que ejecutó la actividad informada por parámetro. Requiere el código de la actividad. La actividad debe haber sido ejecutada anteriormente. No funciona en la primera actividad del proceso. |
usuarioEjecutorActividad(nroActividad) |
Usuario Online |
Retorna el usuario que inició la sesión. |
usuarioActual() |
Versión del Proceso Actual |
Retorna la versión del proceso del caso que se está ejecutando. No funciona en la primera actividad del proceso. |
versionProceso() |
Ultimo Botón Presionado |
Retorna el último Botón Presionado |
ultimoBotonPresionado() |
Sistema
Estas funciones recuperan información relativa al ambiente donde se están utilizando el formulario y la aplicación modelada, si hubiera una asociada.
Nombre Descriptivo |
Descripción |
Ejemplo |
---|---|---|
Dirección del Servidor Web |
Retorna la dirección del web server. |
direccionServidorWeb() |
Email del Workflow |
Retorna la dirección de email del workflow. |
emailWorkflow() |
Nombre de la Compañía |
Retorna el nombre de la compañía. |
nombreCompañia() |
Nombre del Motor Workflow |
Retorna el nombre del motor de workflow. |
nombreMotorWorkflow() |
Fecha y hora
Recuperan información relativa a fechas, horas y realizan operaciones con las mismas.
Nombre Descriptivo |
Descripción |
Ejemplo |
---|---|---|
Año Actual |
Retorna el año en curso. |
año() |
Diferencia de Días Laborables |
Retorna la diferencia en días hábiles entre 2 fechas pasadas como parámetros. |
difEntreDiasLaborales(dateFrom,dateTo) |
Diferencia de Horas |
Retorna la diferencia en horas entre 2 horas pasadas como parámetros. |
difEnHoras(timeFrom,timeTo) |
Diferencia de Minutos entre Horas |
Retorna la diferencia en minutos entre 2 horas pasadas como parámetros. |
difEnMinutos(timeFrom,timeTo) |
Diferencia entre Días |
Retorna la diferencia en días entre 2 fechas. |
diffEntreDías(dateFrom,dateTo) |
Día Actual |
Retorna el día actual. |
dia() |
Entre Fechas |
Valida que una fecha se encuentre entre un rango de días válido, incluyendo los extremos. |
entreFechas(pDate,pDateIni,pEndDate) |
Fecha Actual |
Retorna la fecha del día. |
Fecha() |
Fecha Actual del Usuario |
Retorna la fecha local de acuerdo a la hora y zona horaria del usuario. |
fechaLocal() |
Hora Actual |
Retorna la hora actual. |
hora() |
Hora Actual del Usuario |
Retorna la hora local de acuerdo a la hora y zona horaria del usuario. |
horaLocal() |
Mes Actual |
Mes Actual. |
mes() |
Nombre del Mes |
Retorna el nombre del mes según el número del mismo |
nombreDelMes(númeroDelMes) |
Sumar días |
Retorna la fecha que se obtiene como resultado de sumarle los días pasado como parámetros a la fecha también pasada como parámetro. |
sumarDías(pDateIni,pDays) |
Matemáticas
Estas funciones realizan operaciones matemáticas en base a los campos del formulario.
Nombre Descriptivo |
Descripción |
Ejemplo |
---|---|---|
Sumatoria |
Retorna el resultado de la sumatoria de todas las instancias del campo ingresado como parámetro. La sumatoria solamente se realiza con campos de múltiples valores, con tipo de dato entero o decimal. |
sumatoria(campo) |
Validaciones
Las funciones de esta categoría permiten confirmar una pregunta acerca de la información utilizada en el formulario.
Nombre Descriptivo |
Descripción |
Ejemplo |
---|---|---|
Es Email? |
Valida que el texto ingresado como parámetro tenga un formato de email. |
esEmail(texto) |
Solo Letras? |
Verifica que el valor ingresado por parámetro esté formado únicamente por letras. |
soloLetras(pTexto) |
Solo Números? |
Valida que el texto ingresado como parámetro sea un número válido. |
soloNúmeros(pTexto) |
Misceláneos
Esta categoría agrupa funciones que retornan información de diferentes temas.
Nombre Descriptivo |
Descripción |
Ejemplo |
---|---|---|
Email de la Unidad Organizacional |
Retorna la dirección de email de una unidad organizacional específica, cuyo ID es solicitado en tiempo de diseño. |
emailUnidadOrg(idUnidadOrg) |
Email de los Usuarios de una Unidad Organizacional |
Retorna la dirección de email de los usuarios de una unidad organizacional específica, cuyo ID es solicitado en tiempo de diseño. |
emailUsuarioUnidadOrg(idUnidadOrg) |
Email del Administrador de Unidad Organizacional |
Retorna la dirección de email del administrador de una unidad organizacional específica, cuyo ID es solicitado en tiempo de diseño. |
emailAdminUnidadOrg(idUnidadOrg) |
Email del Coordinador del Rol |
Retorna la dirección de email del coordinador de un rol. Requiere el código de rol. |
emailCoordinadorRol(idRol) |
Email del responsable de la Actividad del Proceso Actual |
Retorna la dirección de email del responsable de una actividad, cuyo ID es solicitado en tiempo de diseño. Distintos tipos de responsables: - Unidad organizacional => email de la unidad organizacional. - Rol por unidad => email de todas las unidades que cumplen el rol. |
emailResponsableActividad(nroActividad) |
Email del Usuario |
Retorna la dirección de email del usuario, cuyo ID es solicitado en tiempo de diseño del proceso. |
emailUsuario(idUsuario) |
Emails de los Usuarios de un Rol |
Retorna las direcciones de email de usuarios pertenecientes a un rol. Requiere el código de rol. |
emailUsuarioRol(idRol) |
Link a Consulta de Caso |
Retorna el enlace a la consulta del caso. |
linkConsultaCaso() |
Link a Consulta de Formulario |
Retorna el enlace a la consulta del formulario asociado a la actividad en ejecución. |
linkConsultaFormActividad() |
Link a Ejecución de Actividad |
Retorna el enlace a la ejecución de una actividad, requiere que el usuario esté conectado. |
linkEjecActividad() |
Link de Ejecución a una Actividad en Forma Anónimo |
Retorna el enlace a la ejecución de una actividad. No requiere que el usuario esté conectado, se utiliza el usuario anónimo. |
linkEjecAnonimaDeActividad() |
Link a Mis Tareas |
Retorna el enlace a la lista de tareas del usuario. |
linkMisTareas() |
Link al Login |
Retorna el enlace a la ventana de login del portal. |
linkLogin() |
Exclusivas de Reglas
Las funciones de esta categoría se utilizan en el modelado de reglas embebidas por medio de su asistente.
Nombre Descriptivo |
Descripción |
Ejemplo |
---|---|---|
SI(prueba_lógica;valor_si_verdadero; valor_si_falso) |
Comprueba si se cumple la condición indicada en "prueba_lógica". Si se cumple, retorna el valor informado en "valor_si_verdadero", si no se cumple, retorna el valor informado en "valor_si_falso". El parámetro "valor_si_falso" es opcional, si no se cumple la condición y dicho parámetro no está definido, la función no retorna valor. |
SI(importe > 1000000, "Importe excede límite") Si el importe es mayor a 1.000.000, el usuario recibe el mensaje "Importe excede límite permitido". |
Y(valor_lógico1, valor_lógico2,...) |
Evalúa que todos los parámetros devuelvan "Verdadero", en cuyo caso retorna valor "Verdadero". |
Y(dia() > 5, mes() == “Abril”) Retorna "Verdadero" solo cuando el dia del mes es mayor a 5 y el mes es Abril |
O(valor_lógico1, valor_lógico2,...) |
Evalúa todos los parámetros y retorna valor "Falso" si todos los parámetros devuelven "Falso". Si al menos uno devuelve "Verdadero", retorna valor "Verdadero". |
O(contacto == “AFARIAS”, usuarioActual() == “AFARIAS”) Retorna "Falso" solo cuando el contacto y el usuario actual son distintos a AFARIAS |
NO(valor_lógico) |
Si "valor_lógico" es "Verdadero", retorna valor "Falso". Si "valor_lógico" es "Falso", retorna valor "Verdadero". |
NO(5 > 1) |
SUMA(numero1, numero2,...) |
Suma todos los parámetros. |
SUMA(ImporteFacturado, ImporteImpuestos) Retorna el valor resultante de la suma de ambos importes |
CONCATENAR(texto1,texto2,...) |
Une varios elementos de texto en uno solo. |
CONCATENAR(“Hola, ”, usuarioActual()) Retorna "Hola AFARIAS", donde AFARIAS es el usuario actual. |
MAX(numero1, numero2,...) |
Devuelve el valor máximo de una lista de parámetros. Omite los valores lógicos y el texto. |
MAX(2, 5, numeroCliente, 22) Retorna 22 |
ESBLANCO(valor) |
Verifica el valor del parámetro informado y devuelve “Verdadero” si no tiene contenido. Si el parámetro es un campo es iterativo, todas sus ocurrencias deben estar vacías para que retorne verdadero. |
ESBLANCO(descripcion) Retorna "Falso", cuando descripción tiene contenido |
esURL(texto) |
Indica si el texto ingresado corresponde a formato válido de URL. Ejemplos Válidos: •www.nombresitio.com ; nombresitio.com ; https://nombresitio.com •192.1.1.111 ; 192.1.1.111:8090 ; 192.1.1.111:8090/mifuncion |
SI(NO(esUrl(campo)), "Debe informar URL") Si campo es igual a "Deyel.com", el usuario no recibe ningún mensaje |
REEMPLAZAR(texto a buscar; texto a reemplazar; texto original) |
Reemplaza en "texto original", las coincidencias de "texto a buscar" por "texto a reemplazar".
|
REEMPLAZAR("Proveedor XX", "Nuevo Proveedor", textoContrato ) Como resultado, en el campo textoContrato queda su contenido original con el reemplazo de todas las ocurrencias de Proveedor XX por Nuevo Proveedor |
REGEXMATCH(texto, expresion_regular) |
Retorna valor "Verdadero" si "texto" cumple con la expresión regular "expresion_regular".
Las expresiones regulares, también conocidas con regex, son patrones de escritura estandarizados y de gran difusión, que se utilizan principalmente para procesar textos. Permiten, por ejemplo, validar formatos, extraer una parte de texto o reemplazar ocurrencias de una cadena de caracteres. Existen muchos sitios de acceso libre que proveen información sobre usos y sintaxis y que brindan la posiblidad de realizar simulaciones a modo de pruebas. |
REGEXMATCH(miCampo,”/^[0-9]*$/”) Retorna “Verdadero” si miCampo está compuesto por caracteres numéricos entre 0 y 9. |
igualEnTodosSusValores(campo_iterativo, valor) |
Retorna valor "Verdadero" si todas las ocurrencias de "campo_iterativo" coinciden con "valor". |
igualEnTodosSusValores(nroCliente, 136) Retorna "Verdadero" si todas las ocurrencias del campo iterativo nroCliente tiene valor 136. |
igualEnAlgunValor(campo_iterativo, valor) |
Retorna valor "Verdadero" si alguna de las ocurrencias de "campo_iterativo" coincide con "valor". |
igualEnAlgunValor(nroCliente, 136) Retorna "Verdadero" si una o más ocurrencias del campo iterativo nroCliente tiene valor 136. |
Se permite anidar funciones en los parámetros.