<< Clic para mostrar Tabla de Contenidos >> Reutilizar reglas de negocio |
Introducción
En Bizagi es posible reutilizar reglas de negocio para hacer la automatización del proceso más eficiente. Las Reglas de Negocio que son utilizadas frecuentemente en el proyecto solo se crean una vez, luego solo se deben asociar a los nuevos elementos cuando se necesite.
Tipos de reglas de negocio
Existen dos tipos de reglas de negocio: Reglas booleanas y reglas de Scripting. Cada tipo provee cierta flexibilidad y facilidad de uso. Depende de donde se utilicen reglas de negocio, Bizagi permitirá la creación de unas u otras.
•Reglas Booleanas
Estas reglas solamente deben retornar Verdadero o Falso. Como vimos en la sección anterior, las reglas booleanas son utilizadas para:
oReglas asociadas al flujo de secuencia (ruta del proceso)
oReglas utilizadas para condiciones de atributos (campos en formas) para que sean visibles, editables o requeridos.
Note la opción Reusable (Reutilizable) en la esquina inferior izquierda. Si la regla es reutilizable, seleccione el campo.
•Scripting rules
Son reglas que realizan cálculos y validaciones. En este tipo de reglas usted puede incluir código para llevar a cabo cualquier tipo de tarea, estas reglas no tienen que retornar un tipo de datos en particular. Este tipo de reglas son utilizadas en:
oAcciones al Entrar, al Salvar y al Salir.
oValidaciones de tablas de la forma.
oBotones y formas.
Estas reglas siempre son reutilizables. Sin embargo, dependiendo de dónde se han creado, estas pueden ser usadas por cualquier proceso dentro del proyecto, o por un proceso dentro de la misma aplicación, o solamente en el proceso donde fueron creadas.
Contexto o alcance de las reglas de negocio
Bizagi tiene cuatro niveles donde las Reglas de Negocio son guardadas dependiendo del sitio desde el cual pueden ser accedidas.
Estos niveles representan el contexto a alcance en los que pueden ser aplicadas.
Los niveles son:
•Reglas Globales / Reglas de librería:
Estas pueden ser reglas Booleanas o Scripting. Son reglas generales que pueden ser accedidas y reutilizadas por todos los procesos de todas las aplicaciones, generalmente realizan cálculos que aplican a varios procesos, sin ningún contexto. Es posible crear familias de reglas para organizarlas. Si la regla es creada como una Función está será como librería de reglas. De esta forma podrá ser llamada por otras reglas para realizar cálculos.
Las reglas de librería funcionan tal como las de negocio, pero no tienen un contexto asociado pues pueden ser invocadas desde cualquier parte del proyecto. Esto significa que las reglas de librería no tienen acceso al Modelo de datos, por lo que en ellas no se pueden usar XPaths. Dado esto, por ello debe evitar el uso de cualquier función XPath o Me como Me.getXPath, Me.newCollectionItem, o <count(XPath)> |
Para mayor información respecto a este tema, visite este artículo.
•Reglas de aplicación:
Estas pueden ser reglas Booleanas o Scripting. Pueden ser accedidas y reutilizadas por todos los procesos de una aplicación. Usualmente realizan cálculos que aplican para los procesos que comparten el contexto. Es posible crear familias de reglas para ordenarlas.
•Reglas de entidad: estas pueden ser reglas Booleanas o Scripting. Pueden ser accedidas por cualquier proceso en cualquier aplicación siempre y cuando la entidad donde se encuentra la regla sea parte del modelo de datos. Las reglas booleanas en entidades manejan, por ejemplo, si un campo es visible, editable o requerido. Las reglas de scripting se utilizan en botones y en validaciones de tabla.
•Reglas de proceso: estas pueden ser reglas Booleanas o Scripting. Estas reglas solo se pueden reutilizar en el proceso: ningún otro proceso podrá verlas o utilizarlas. Las reglas booleanas son las relacionadas con la ruta del proceso. Las reglas de Scripting son aquellas que se utilizan en las acciones Al Entrar, Al Salvar y Al Salir. Cuando se crea una regla en el paso cuatro del Asistente para definir la ruta del proceso o una acción, esta quedará guardada automáticamente como Reglas de Proceso.
Ejemplo de una Regla de aplicación
Para la solicitud de un crédito, es necesario facilitar cierta información inicial sobre la solicitud. Antes de que el solicitante sea aceptado como cliente, las formas deberán mostrar u ocultar cierta información. Por lo que se necesitan de reglas de visibilidad en varias formas del mismo proceso.
Note que esta regla tiene un contexto porque está relacionada con el solicitante. El contexto de la regla será la entidad del Proceso principal del proceso padre. Por lo tanto, creamos una regla de aplicación que devuelve Verdadero o Falso según el cliente evaluado.
En la vista de Experto, seleccione la opción Reglas de negocio. Dé clic derecho sobre Expresiones en la Aplicación donde quiere crear la regla. Seleccione Nueva Expresión.
Bizagi le preguntará si desea una regla Booleana o de Script. En este caso seleccionamos Booleana.
Arrastre y suelte los datos para evaluar, además establezca la condición.
Finalmente de un nombre a la regla. Cuando se crea una nueva regla es posible ubicarla dentro de una familia de reglas, seleccione la familia de la lista desplegable si aplica, de lo contrario deje el espacio en blanco.
Ahora se pude utilizar la regla en el Modelador de Formas de cualquier proceso de la aplicación.
Abra el Modelador de Formas y seleccione el atributo que se quiere ocultar con la regla.
Ejemplo de una regla de Entidad
En el Proceso de Solicitud de Compras existe una colección de productos, donde el usuario final ingresa todos los productos que necesita.
Existe una relación uno a muchos entre la entidad de proceso Solicitud de compras y Productos de la Solicitud.
El usuario final ingresa cada producto especificando el precio unitario y la cantidad. Luego, cuando el registro se guarda, se debe calcular y mostrar el precio total de los productos, es decir, el precio unitario multiplicado por la cantidad.
Vamos a calcular esta cantidad utilizando una Expresión de Validación al Editar. Estas reglas están relacionadas con las formas del modelador donde se han guardado la entidad de la colección. Es decir, pueden ser reutilizadas por cualquier proceso que tenga la entidad de la colección dentro de su modelo de datos.
En el modelador de formas, seleccione la tabla donde se va a utilizar la regla.
Seleccione Editar la Expresión de Validación. Esto abrirá un regla de script para escribir el código. Debido a que estamos trabajando sobre una colección, el contexto de la regla será la entidad Productos Solicitados.
Cuando el usuario final guarde un nuevo proceso, el precio total será calculado.
Ejemplo de una regla de proceso
Bizagi guarda como reglas de proceso las acciones creadas Al Entrar, Al Salir y Al guardar y las reglas de ruteo del proceso.
La siguiente regla en una regla de proceso booleana que orienta el proceso cuando el jefe ha solicitado cambios, antes de continuar con el subproceso Cotizaciones.
Cómo reutilizar una regla
Cuando una regla ya ha sido creada y se desea reutilizar, vaya al flujo de secuencia que quiere asociar y abra el administrador de expresiones.
Seleccione Basado en el resultado de una expresión.
Esto desplegará las reglas para ser re-usadas en la pestaña Expresiones.
Seleccione la que desea y dé clic en Ok.
Last Updated 7/12/2023 3:35:33 PM