Comportamientos
En IPF definimos comportamientos para el procesamiento de entradas al sistema (a partir de una respuesta o instrucción) y para especificar las acciones requeridas cuando se procesan eventos. Para esto tenemos dos conceptos:
-
"Comportamiento de Entrada" - es un comportamiento que especifica para cada entrada qué evento se generará.
-
"Comportamiento de Evento" - es el comportamiento que especifica qué acciones deben tomarse al recibir un evento.
Comportamiento de Entrada
Un comportamiento de entrada tiene varias propiedades:
-
"Entrada" - la entrada (instrucción o respuesta) sobre la cual se dispara el comportamiento.
-
"Código de respuesta" - el código de respuesta (vinculado a la respuesta si la respuesta es una entrada; de lo contrario, este campo no aplica) para el cual aplica el comportamiento.
-
"Evento" - esto puede ser un evento directamente o mediante la ejecución y el resultado de una decisión.
| Ten en cuenta que cuando se usan códigos de respuesta, si no se define uno en un comportamiento de entrada, esto se considerará el comportamiento "por defecto" para todos los códigos de respuesta. |
Comportamiento de Evento
El comportamiento de evento es un poco más complicado. Tiene varias propiedades:
-
"Estado Actual" - el estado en el cual debe estar el flujo para que el comportamiento aplique.
-
"Criterios" - cuándo aplica el comportamiento (on / on all of / on any of)
-
"Eventos" - uno o más eventos; pueden ser cualquier tipo de evento (por ejemplo, de dominio, de tiempo de espera, etc.)
-
"Mover a Estado" - el estado de destino del comportamiento
-
"Acciones" - la lista de acciones (1 o más) que deben realizarse después de la transición de estado, es decir, solicitudes, notificaciones, etc.
Esta definición de comportamiento dice entonces: mientras estemos en el Estado Actual, cuando se cumplan los Criterios con estos Eventos, entonces "Mover a Estado" y realizar la lista de Acciones.
Añadiendo los comportamientos obtenemos:

| Ten en cuenta que la función de agregado (discutida aquí), como una unidad de cálculo autocontenida, no se considera ni comportamiento de evento ni de entrada, sino una capacidad funcional por sí misma. |
Comportamiento de Iniciación
Hay un tipo más clave de comportamiento a considerar dentro de un Flujo IPF, que es el "Comportamiento de Iniciación".
El comportamiento de iniciación es una versión especializada del comportamiento de entrada previamente definido, pero solo se utiliza para iniciar un flujo. No está vinculado a un dominio externo para que podamos iniciar el flujo potencialmente desde muchas fuentes diferentes.
Un comportamiento de iniciación tiene varias propiedades:
-
"Al Recibir Datos" - Una lista de datos de negocio tomadas en la entrada al flujo
-
"Mover a Estado" - Un estado inicial al que moverse
-
Acción "Realizar" - Una lista de acciones a realizar
Y opcionalmente
-
"Realizar Enriquecimiento" - Llamar a una función para Enriquecimiento de Entrada del evento
-
"Generar Datos de Agregado" - Llamar a una Función de Agregado para operar sobre el Agregado
|
Ten en cuenta que cuando se invoca el comportamiento de iniciación, se iniciará un flujo y se elevará el evento "FlowInitiated". |