Configuración avanzada utilizando agrupar por

<< Click to Display Table of Contents >>

Navigation:  Bizagi Studio > Asistente de Procesos > Modelar Procesos > Modelado para ejecución > Subprocesos > Entendiendo los Subprocesos múltiples > Configuración avanzada para los Subprocesos múltiples >

Configuración avanzada utilizando agrupar por

Para ejemplificar la opción de Agrupar por, vamos a utilizar el proceso Ingreso de Estudiantes descrito en las secciones anteriores.

 

En un colegio, muchos estudiantes necesitan inscribirse para poder asistir a clase. Las solicitudes de los estudiantes deben ser recibidas y luego procesadas, por lo que se debe crear un Proceso de Matrícula de estudiantes: uno por cada estudiante. La situación de negocio descrita puede ser modelada con se muestra en el siguiente diagrama:

 

Configure multiple subprocess1

 

 

En este ejemplo el Proceso Padre se llama Ingreso de Estudiantes y un Subproceso Múltiple llamado Matrícula de Estudiantes.

 

Ambos procesos han sido diagramados en Bizagi Modeler y se han definido sus Entidades de Proceso respectivas.

Ingreso de Estudiantes es la Entidad de Proceso del proceso Ingreso de Estudiantes y Matrícula de Estudiantes el la Entidad de Proceso del proceso Matrícula de Estudiantes.

 

Para crear la relación de las instancias del Subproceso múltiple se debe definir una colección: La colección llamada Matrícula de Estudiantes.

 

 

Configure multiple subprocess with basics10

 

Deseamos manejar el ingreso de los estudiantes de acuerdo al género, por lo que se crearán una instancia del subproceso de Matrícula de Estudiantes para los niños y otra instancia para las niñas como se muestra en la figura.

 

Configure multiple subprocess with advanced2

 

Para agrupar las instancias del Subproceso siga los siguientes pasos:

 

1. Vaya al paso 1 (Modelar Proceso) del asistente y dé clic en Editar Proceso. Seleccione el Proceso Padre Ingreso de Estudiantes.

En el diagrama del modelo, dé clic derecho sobre la actividad que desea convertir, en este caso Matrícula de Estudiantes y seleccione la opción Transformar en Subproceso.

Una nueva ventana mostrará los tipos de Subprocesos. Seleccione la opción Múltiple y luego clic en Siguiente.

 

Configure multiple subprocess with basics1

 

2.  Seleccione el proceso a ser transformado, Matrícula de Estudiante, de la lista desplegable, seleccione el proceso y dé clic en Siguiente.

Una vez el diagrama ha sido asociado al Subproceso, seleccione la opción Configuración  Avanzada y dé clic en Siguiente.

 
Configure multiple subprocess with advanced1

 

3. Seleccione la colección para agrupar el Subproceso. En este caso vamos a agrupar la colección IngresoEstudiante.MatriculaEstudiantes (StudentsApplication.StudentsEnrollment).

También es necesario seleccionar el número de instancias. El número de instancias a crear será determinado utilizando la colección. Seleccione la opción ítem en la colección.

 

Configure multiple subprocess with advanced3

 

4. En la ultima ventana del Asistente, seleccione la opción Agrupa por. El asistente le pedirá definir la colección a agrupar, en este caso la colección es Matrícula de Estudiantes. Una vez se ha definido la colección, el Asistente le indicará que una relación debe ser definida entre dicha entidad y la entidad actual Subproceso.

Configure multiple subprocess with advanced6

 

Clic en para establecer la relación de forma automática. Luego clic en Siguiente.

 

Configure multiple subprocess with advanced4

 

 

5. Seleccione los atributos por los que desea realizar la agrupación. Seleccione el atributo desde la caja del lado izquierdo y luego arrastre el elemento a la caja del lado derecho para adicionarlo (donde apunta la flecha). Para remover un atributo selecciónelo (de la caja del lado derecho) y arrástrelo hasta la caja izquierda (Atributos en Colección).

Vamos a agrupar por género. Clic en Siguiente.

 

Configure multiple subprocess with advanced5

 

Relación con el proceso Padre

 

Cuando ejecute el Proceso notará que no es posible acceder a la información del Proceso padre ya que no se realiza un mapeo automático de los datos; Esto significa, que no existe una relación entre la entidad del Subproceso y la entidad del Proceso padre. Existe una relación entre la Entidad de Proceso del proceso padre y la entidad agrupada y entre la entidad de Proceso del Subproceso y la entidad agrupada.

 

Using groupby8

 

Es necesario definir la relación faltante para navegar por el modelo de datos y acceder a la información de la entidad del Proceso padre.

 

Using groupby9

 

Para definir la relación faltante entre la entidad del Proceso padre y la entidad del Subproceso siga los siguientes pasos:

 

1. Estando en el proceso padre, vaya al segundo paso del Asistente y dé clic en Modelo de Datos.

 

Using groupby10

 

2. Una nueva ventana es mostrada. Clic derecho en la entidad del Subproceso (Matrícula de Estudiantes por género) y seleccione la opción Editar lista de atributos.

 

 

Using groupby11

 

 

3. Cree un nuevo atributo dando clic en Adicionar e incluya el nombre visual. Seleccione la Entidad del Proceso Padre para crear la relación.

En este caso vamos a escribir Inscripción de Estudiantes y seleccionar la entidad Inscripción de Estudiantes de la lista de entidades maestras.

 

Using groupby12

 

4. La relación faltante se ha establecido y el modelo de datos ha sido actualizado.

 

Using groupby13

 

5. Ahora es necesario crear una expresión que incluya la información necesaria para completar la nueva relación.

Defina una expresión "al entrar" en la primera actividad del Subproceso. La expresión debe tomar el ID de la entidad del Proceso padre y asignarla en la entidad del Subproceso.

 

La expresión para este ejemplo sería:

 

var idParent=<StudentsEnrollmentbyGender.StudentsEnrollment[1].StudentsApplication>

<StudentsEnrollmentbyGender.StudentApplication>=idParent

 

Configure multiple subprocess with advanced7

 

Con la relación creada y la expresión para mapear los datos definida, usted podrá acceder a la información del contexto del proceso padre de forma normal a través de la relación Inscripción de Estudiantes.

 

Using groupby14

 

note_pin

Para agrupar instancias del Subproceso, tenga en cuenta que las entidades del subproceso múltiple y de la colección deben ser diferentes.