Navigation:  Herramientas > Editor de fórmulas > Editar funciones y fórmulas >

Formulario

Previous  Top  Next

Un formulario se compone de campos y cada campo se relaciona con un atributo de la entidad. Las entidades son tablas en la base de datos y los atributos son columnas de la tabla. Un ejemplo de fórmula puede ser la verificación del valor de un campo y la realización de acciones sobre otros campos. Las acciones son: Habilitar, deshabilitar, marcar como obligatorio, no obligatorio, exhibir, ocultar, limpiar, cargar y aplicar valor en un campo.

 

Dónde y cuándo se ejecuta la regla (fórmula)

Las reglas/fórmulas se ejecutan en los eventos del formulario. Un evento es un control del sistema que monitorea el uso y dispara la ejecución de las reglas. Un ejemplo de esos mecanismos es el evento de cargar el formulario. Después de terminar la carga, se ejecuta la fórmula que fue asociada a ese evento. Otro ejemplo común, al hacer clic en un ítem de checkbox se ejecuta la fórmula asociada al clic de ese ítem. Los eventos más comunes en los ítems del formulario son: entrada, salida, modificación y clic.

 

 

Parámetros de la función

El editor de fórmulas está compuesto por: barra de herramientas, área de edición y área de presentación. La barra de herramientas se compone de una biblioteca de funciones disponibles para el componente donde se abrió el Editor de fórmulas. El área de edición permite la inclusión de las reglas y; el área de presentación muestra las reglas del área de edición en diferentes colores, permitiendo identificar con más facilidad las funciones que permiten la inclusión de los parámetros de la función a través de una pantalla de selección.

 

A

Al hacer clic en la flecha al lado del tipo de función, aparecerá un menú que contiene todas las funciones de aquel tipo.

B

Al hacer clic en el menú de la función, la misma será copiada al área de edición/presentación; la pantalla de parámetros de la función será presentada automáticamente, siempre que la función sea copiada al editor de fórmulas.

C

Al hacer clic en la función, en el área de presentación, se mostrará la pantalla de parámetros de la función, permitiendo modificar las configuraciones realizadas. Al configurar el parámetro y guardar, se actualizará la función en el área de edición y en el área de presentación.

 

Regla para habilitar/deshabilitar campos del formulario

En un formulario, es común que existan reglas que deshabilitan campos de acuerdo con alguna opción seleccionada. Un ejemplo simple es un conjunto de radio buttons para identificar el estado civil (Soltero/Casado). En este ejemplo, al seleccionar la opción "married" (casado) se debe habilitar el campo "Spouse name" del área "Spouse" (cónyuge). Para una mejor comprensión, puede escribir la fórmula (regla) en una forma simple que el editor de fórmulas necesita:

 

 

Descripción simple de la regla: Cuando el usuario haga clic en el campo "Married" se debe habilitar el campo "Spouse name", del área "Spouse". También deberá remover cualquier marcación realizada en los demás radio buttons del área "Marital Estatus".

 

El "cuándo", de la descripción anterior, se determina por el evento de clic en la radio button "Married". La acción de habilitar el campo "Spouse name" y de desmarcar los demás radio buttons viene determinada por la función "ACCIÓN". Haga un clic sobre la función, en el área de presentación, y en la pantalla de parámetros, seleccione todos los campos del formulario que serán modificados con el clic en el radio button "Married". Utilice las columnas de la pantalla de parámetros para habilitar el campo "Spouse name" y limpiar los campos de los otros radio button. Vea más detalles en la siguiente imagen:

 

 

Cómo utilizar variables

Las variables se utilizan para guardar valores en diferentes lugares de la fórmula. Un ejemplo común es buscar el valor de un campo y comparar varias veces en la fórmula para habilitar/deshabilitar campos de acuerdo con un valor.

 

Para crear una variable basta escribir una letra o palabra seguida del carácter "=" (igual) y el valor de la variable. El valor puede ser un número (resultado de un cálculo), un texto (en este caso entre comillas simples) o puede ser un valor de un campo de formulario.

 

 

Cómo utilizar condiciones (si/sino) para habilitar campos de acuerdo con el valor de otro campo

Las condiciones son para los casos en los que se desea verificar un valor de un campo y, según el valor, habilitar algunos campos o deshabilitar/ocultar otros. Para habilitar/deshabilitar campos siempre se debe usar la función ACCIÓN. La siguiente imagen muestra un ejemplo que busca el valor de un campo y lo almacena en una variable para utilizarla en las condiciones:

 

A

Busca el valor del campo y almacena en la variable "v" (valor).

B

Si el valor de "v" es igual a 'John', o sea, si el nombre del emisor es igual a 'John', aplica la acción de habilitar el campo 'starttime'.

C

Si el valor de "v" es igual a 'Anne', o sea, si el nombre del emisor es igual a 'Anne', aplica la acción de hacer obligatorio el llenado del campo 'starttime'.

 

Para cada comando SI/SINO es necesario el comando FIN. La función ACCION está atribuida a una variable x, pues el sistema de fórmulas mantiene el estándar que en todas las funciones debe ser tratado el retorno. También se puede hacer "DEVUELVE ACCIÓN(...)". La función VALORCAMPO utiliza 2 parámetros: Identificador de la entidad e identificador del atributo de la entidad. Para facilitar la apertura de la pantalla de configuración del parámetro, el sistema ya completa el campo con la entidad del formulario actual.

 

Cómo buscar el valor seleccionado en la lista (combobox/zoom)

La búsqueda del valor en la lista (combobox/zoom) es semejante a la búsqueda del valor en otro campo (input, etc.). Basta utilizar la función VALORLISTA en el lugar de VALORCAMPO. La función VALORLISTA permite buscar un valor seleccionado que no es mostrado en la pantalla. Vea un ejemplo en la siguiente imagen:

 

 

La función VALORLISTA tiene 3 parámetros: Identificador de la entidad, Identificador de la relación (el mismo utilizado en las propiedades del combobox/zoom en el formulario) e identificador del atributo. Al abrir la pantalla de configuración de los parámetros de la función, el sistema completa automáticamente la entidad de origen del formulario actual. Es solo seleccionar la relación y el atributo que se desea buscar.

 

Como completar el valor en el campo vía fórmula

Para completar el valor en un campo vía fórmula, se debe usar la misma función que habilita/deshabilita campos. En el último parámetro se puede informar una variable que contiene el valor a ser completado. La siguiente imagen muestra un ejemplo:

 

 

Cómo realizar cálculos con valores completados en el formulario

Para realizar cálculos, se deben utilizar las funciones de matemáticas: Suma, Multiplicación, etc. Vea más detalles a continuación:

 

A

Operaciones de suma.

B

Operaciones de multiplicación.

C

Operaciones de sustracción y división.

D

En los casos de división de números decimales, multiplique el valor decimal por 1 y luego haga la división.

 

Las funciones de SUMA y MULTIPLICACIÓN tienen parámetros, que son los valores de la operación, separados por punto y coma (;). En casos de la división de número decimal se debe multiplicar el valor por 1 antes de realizar la división. Esto sucede porque el sistema necesita convertir el separador ("," o ".") de los lugares decimales para un formato único.

 

Cómo completar el valor en el campo con resultado del cálculo

Para completar el valor en el campo con el resultado del cálculo, basta realizar el cálculo y utilizar la función ACCIÓN para definir el valor en el campo. La imagen a continuación muestra un ejemplo que multiplica dos campos y completa el valor con el resultado en el campo total.

 

 

Cómo completar el valor en el campo con nombre del usuario conectado

Para este caso también será utilizada la función ACCIÓN. El nombre del usuario conectado puede ser obtenido a través de la función USUARIOCONECTADO. Vea más detalles en la siguiente imagen:

 

 

Cómo completar el valor en el campo con iniciador del proceso

Para este caso también será utilizada la función ACCIÓN. El nombre del iniciador del proceso puede ser obtenido a través de la función INICIADOR. Vea más detalles en la siguiente imagen:

 

 

Es importante destacar que esta función solo se puede probar ejecutando un proceso en SE Workflow.

 

Cómo habilitar campos del formulario de acuerdo con la actividad del proceso

Para habilitar campos de acuerdo con la actividad, primero se debe buscar el identificador o nombre de la actividad para utilizar en las condiciones. Para eso se utiliza la función ACTIVIDAD que busca la actividad corriente donde el formulario es visualizado. Hecho eso se deben crear las condiciones (SI/SINO) y utilizar la función ACCIÓN para habilitar/deshabilitar campos. La siguiente figura muestra un ejemplo.

 

 

Ejemplo de llenar matrícula y el sistema busca el Nombre, Edad, etc.

Este ejemplo se utiliza en los casos en que el usuario ingresa la matrícula o el código y el sistema busca en las demás entidades el nombre, la edad, el estado civil, etc. Para realizar esta tarea se debe seguir el siguiente procedimiento:

 

En el evento de salida del campo de matrícula crear una fórmula.

En la fórmula, primero se debe buscar el valor del campo matrícula (usrregistry) y almacenar en una variable (usr_registry). Se utiliza la función VALORCAMPO.

Crear un filtro (filter) con el valor de la matrícula en la entidad que tiene los datos de nombre, edad, etc. (entidad 'E002 - Employee'). Se utiliza la función FILTROTABLA.

Buscar el nombre y la edad en la entidad (E002 - Employee) utilizando el filtro creado arriba y almacenar en variables ('var_nm' y 'var_age'). Se utiliza la función VALORCAMPOFILTRO.

Completar el nombre y la edad en los campos del formulario utilizando la función ACCIÓN.

 

A

Busca la matrícula (usrregistry) completada por el usuario en el formulario

B

Crea un filtro en la entidad 'E002 - EMPLOYEE' por el atributo 'registryid'

C

Busca el nombre y la edad en la entidad 'E002' utilizando el filtro

D

Completa los campos nombre y edad en el formulario con el valor de las variables

 

Cómo calcular el total de columna del grid

No es necesario que la columna se muestre en el grid, ya que se considera una columna de la entidad. Para calcular se debe utilizar la función TOTALGRID. En esa función se informa la relación, la entidad del grid (mismos datos informados en las propiedades del grid), el campo que se desea calcular y la operación (Suma, Promedio, Máximo, Mínimo, Contador). Después de calcular, se puede completar el resultado en un campo del formulario vía función ACCIÓN.

 

A

Calcula la suma total de la columna (TOTALVL) del grid

B

Completa un campo decimal con el resultado.

 

Cómo deshabilitar todos los campos del fieldset

Para aplicar acciones en todos los ítems dentro de un fieldset, se puede utilizar la función ACCIONGRUPO. Se debe informar el identificador del fieldset y las acciones a ser realizadas. Se utiliza en los casos en los que desea ocultar o deshabilitar varias secciones del formulario. Para aplicar a más de un fieldset, basta repetir la línea modificando el identificador para cada fieldset.

 

 

Cómo ocultar/exhibir título/imagen

Para ocultar o exhibir campos del tipo título o imagen se debe utilizar la función ACCIONITEMGRAFICO. Esa función es semejante a la ACCIONGRUPO. Se debe informar el identificador del ítem de título o ítem de imagen y las acciones a ser realizadas.

 

 

Cómo completar valor en el título

Para completar valor en el título, se utiliza la función ACCIONITEMGRAFICO. Se debe informar solamente en el último parámetro, la variable con el valor a ser completado. La siguiente figura muestra un ejemplo.

 

 

Ejemplo para calcular la edad a partir de la fecha de nacimiento

Para calcular la edad, es necesario utilizar algunas funciones del botón de fecha en la barra de herramientas. La siguiente imagen muestra un ejemplo:

 

A

Busca la fecha de nacimiento llenada en el formulario.

B

Busca la fecha de hoy a través de la función HOY().

C

Separa las fechas en año, mes y día.

D

Calcula la edad a través de la sustracción del año actual por el año de nacimiento.

E

Verifica si en el año actual el usuario ya cumplió años. Si no lo ha realizado, disminuye la edad en un año.

F

Completa el valor del campo edad con la edad calculada.

 

Cálculo con campo Hora

Es posible calcular cuántas horas hay entre dos campos del tipo hora. La siguiente imagen muestra un ejemplo entre un campo hora y la hora actual.

 

 

Cómo utilizar las funciones ACCION, ACCIONGRUPO y ACCIONITEMGRAFICO en la misma fórmula

Es posible utilizar las funciones de ACCION, ACCIONGRUPO y ACCIONITEMGRAFICO combinadas. Existen casos en los que se desea mantener solamente un ítem habilitado dentro de un fieldset y los demás deshabilitados. Para ese caso se pueden deshabilitar todos los ítems del fieldset con la función ACCIONGRUPO y luego habilitar el campo deseado con la función ACCIÓN. La secuencia de las acciones es respetada. La siguiente figura muestra un ejemplo.

 

 

A

Deshabilita todos los ítems dentro del fieldset.

B

Habilita solamente el campo total.

 

Es importante destacar que ya no es necesario concatenar utilizando ‘|’ (pipe). Tampoco es necesario devolver siempre una acción.

Ej: A = ACCION(...)

B = ACCION(...)

DEVUELVE A+’|’+B