Paso 10 - Añadir un Subflujo

Introducción al Paso 10

En este paso usted introducirá un subflujo. Utilizar un subflujo es una forma de agrupar lógicamente un conjunto de events y estados (en este caso sanciones). Subflows puede ser reutilizado dentro del mismo flujo y en diferentes flujos en el mismo modelo.

Si usted está familiarizado con la modelización de casos de uso, un subflujo es exactamente lo mismo que un caso de uso que es INCLUDED en otro.

Para este caso de uso, usted llamará al subflujo de sanciones una vez que haya completado la validación de la cuenta del deudor y la validación haya sido aprobada.

Usted introducirá el siguiente flujo de sanciones:

  • Se envía una solicitud a un nuevo dominio externo de sanciones.

  • Si la respuesta es 'sin coincidencias', continúe procesando el pago.

  • Si la respuesta es 'hit', se esperará una segunda respuesta que será 'pass', 'fail' o 'block'.

  • Si la respuesta es fallo, entonces la transacción es rechazada.

  • Si la respuesta es bloqueada, la transacción se gestionará manualmente y el pago se terminará.

Creando un nuevo Subflujo

Puede crear un nuevo subflujo haciendo clic derecho en su modelo desde el panel izquierdo y seleccionando Nuevo>v2Fo>SubFlujo.

Asigne un nombre al subflujo, y habrá creado un subflujo inicial que debería verse algo así:

step 10 1

Rellenando el subflujo

Verá que un subflujo se establece exactamente de la misma manera que un flujo, donde usted define sus estados y events y añádalos a su iniciación, entrada y event behaviours.

Ahora que ha estado creando y actualizando flujos durante un tiempo, intente construir un flujo de sanciones válido por su cuenta. Necesitará:

  • Cree un dominio externo para representar el sistema de sanciones.

  • Cree una única solicitud de sanciones con múltiples respuestas para un 'Hit', 'No Hit' y la 'Respuesta Final'.

  • Cree una nueva biblioteca de códigos de respuesta para los posibles códigos de 'Respuesta Final' de sanciones ('Aprobar', 'Rechazar' o 'Bloquear')

  • Defina sus estados y events en el subflujo

  • Cree un initiation behaviour en el subflujo

  • Incorpore esas respuestas en el comportamiento de entrada en el subflujo.

  • Complete el subflujo creando event comportamiento

Dominio Externo

Una vez que haya terminado, su nuevo dominio externo debería verse así:

step 10 2

Biblioteca de Códigos de Respuesta

Su biblioteca de códigos de respuesta actualizada debería verse así:

step 10 3

subflujo

Y su subflujo debería verse así:

step 10 4
El global state para que todo en el subflujo esté 'PENDIENTE' porque queremos que todos los subestados sean visibles en el Tablero IPF bajo ese global state. Usted puede crear una nueva biblioteca de global states solo para el subflujo de sanciones y utilice esos en su lugar si lo desea.
step 10 5
step 10 6
step 10 7
step 10 8

subflujo Gráfico

Si usted observa el gráfico de su subflujo, verá que se parece a esto:

step 10 9

Agregue el subflujo a Event Comportamiento

Ahora que ha creado un subflujo de sanciones reutilizable, puede integrarlo en su flujo.

Añada un subflujo Sub State

Primero que todo, debe colocarlo en el lugar correcto.- Una vez que se haya superado la validación de la cuenta, usted deberá verificar las sanciones antes de decidir si se trata de un 'Pago On Us' o un 'Pago por Esquema'.

Así que en el primero event comportamiento, elimine el decision desde el 'Mover a State’y presione Ctrl+Space. Tendrá la opción de crear un subflujo state, así que elija esa opción y su event el comportamiento debería verse así:

step 10 10

Nombre el subflujo

Como decisions, que usted utilizó en un paso anterior,subflows puede utilizarse múltiples veces, por lo que necesita un nombre único cada vez que se llama a un subflujo.

En su caso de uso, va a llamar al subflujo de sanciones una vez antes de ser enviado a compensación, así que llamemos al subestado 'Sanciones'.

step 10 11

Agregar acción de subflujo de llamada

Una vez que haya movido el pago al subestado del subflujo, también debe instruir al flujo para que envíe efectivamente el pago al subflujo.

Reemplace el 'Realizar Acción' (que actualmente es el decision) con una llamada a un subflujo al eliminar la entrada actual y presionando Ctrl+Space y luego seleccionando el subflujo que usted acaba de crear.

Si usted hubiera creado múltiples subflows, todos esos subflows estaría disponible para seleccionar.

step 10 12

Termine. Event Comportamiento

Ahora que ha creado un nuevo subestado de 'Sanciones', puede especificar qué debe suceder cuando el pago esté en ese estado.state.

Para subflows, un terminal state es el equivalente de un event(es decir, un terminal event en un subflujo se utiliza para mover el pago de uno state a otro en el flujo de llamadas).

Si recuerda, creó tres estados terminales en el subflujo: 'Sanciones Aprobadas', 'Sanciones Bloqueadas' y 'Sanciones Failed'- usted necesita agregar estos en el event comportamiento del flujo de llamadas.

Añada dos nuevos event behaviours como se muestra a continuación.

Debe construir el decision que usted eliminó de event comportamiento 1 en el nuevo event comportamiento (en este caso 11).
step 10 13

Revise el Diagrama de Flujo

Ahora puede ver que el subflujo llamado se muestra en el visor de flujo como un cuadro verde. El events que salen del subflujo, son los estados terminales que usted definió dentro del subflujo.

También puede expandir el subflujo dentro del mismo gráfico si lo desea.

step 10 14