Resueltas

Acceder a datos de otras instancias de procesos

Estoy implementando un proceso básico de préstamo de equipo. Pero quiero hacer una validación automática que me permita aprobar automáticamente la solicitud de préstamo si no hay ninguna otra solicitud de préstamo en estado 'aprobado' que coincida con la fecha y horas de préstamo de una solicitud en particular.

¿Cómo puedeo hacer esa verificación?

Supongo que debe haber alguna forma de acceder a los datos de instancias de procesos en ejecución para poder hacer esta validación.

Gracias de antemano.

Mejor respuesta
photo

Estimado Julio,

De acuerdo a su intención de realizar reglas de validación que permita aprobar solicitudes, Bizagi tiene 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.

Para mayor información, por favor mire estos articulos:

Saludos

photo
0

Estimado Julio,

De acuerdo a su intención de realizar reglas de validación que permita aprobar solicitudes, Bizagi tiene 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.

Para mayor información, por favor mire estos articulos:

Saludos

photo
0

Hola Juan

Pero durante una validación, ¿como puedo acceder a otras instancias del proceso para verificar los datos?

En este caso por ejemplo, la primer solicitud para equipo para el 18-02-2014 de 2:00 pm a 4:00 p.m. será debe ser autorizada automáticamente porque no hay otra solicitud. Luego la segunda solicitud si es para el mismo día en horario de 1:00 p.m. a 3 p.m. no debería ser autorizada porque entra en conflicto con el horario de prestamo de la solicitud 1.

¿Se podría guardar los datos de solicitud en una BD y luego todas las solicitudes consultan esa base para validar? ¿se puede hacer eso?, ¿como?

Gracias

photo
0

Estimado Julio,

Luego de analizar su pregunta, lo que esta usted necesita es poder acceder a la entidad donde tiene guardado la disponibilidad de equipos por medio del EntityManager. Es así como se accede a entidades no relacionadas con el modelo de datos, tal cual como usted menciona: "acceder a los datos de instancias de procesos en ejecución ".

Para realizar este procedimiento, por favor mire el siguiente articulo: http://help.bizagi.com/bpmsuite/es/acceder_a_entidades_no_relacio.htm

Usted puede puede modelar en un botón o en el flujo del proceso esta verificación de disponibilidad. En ambos casos: se crea una regla que evalúa por entitymanager, si el equipo que buscan está o no disponible. Si está se autoriza automáticamente, si no, pues no.

Esperamos haber contestado su pregunta.

Saludos

photo
0

Hola Juan

Su respuesta contesta el 50% de mi pregunta.

Supongamos que tengo la entidad de proceso llamada "Solicitud Prestamo" la cual tiene los campos: solicitante, fecha y hora inicio, fecha y hora final, lista de equipos, estado.

Cuando en el proceso pasa a la actividad de verificación, se debe acceder a la entidad "Reservas" que contiene: equipo, fecha y hora inicio, fecha y hora final; entonces para saber si se puede o no autorizar el préstamo hay que realizar una busqueda en esta entidad para ver si hay coincidencia o no. Esto es lo que usted explica como hacer en tu comentario anterior.

Si no hay coincidencia entonces se aprueba la solicitud, lo cual implica hacer una actualización programática del campo estado a "Aprobado" e insertar programáticamente los registros respectivos en la entidad "Reservas" ¿Como se hace estas dos cosas?

Gracias por su ayuda.

photo
0

Estimado Julio,

Realmente lo que usted requiere es modificar la información en la base de datos. Para realizar este paso, depende si los datos están en una colección o grilla o no.

En este artículo muestran como adicionar, modificar y eliminar registros de una grilla: adicionar_y_remover_elementos. Para los casos que no sean dentro de una grilla, debe recorrer la entidad y una vez tenga el registro, lo actualiza con este artículo: Modificar registros. Y para los registros que esten dentro del mismo caso, con tan solo usar xPath.

Esperamos haber solucionado su inquietud.

Saludos

photo
0

Muchas Gracias Juan.

Esta información me servirá para hacer la aplicacion de mi proceso.

Saludos