Código

En Cúram se proporciona un manejador de sucesos de flujo de trabajo y se registra de forma automática para que escuche sucesos generados en la aplicación. Pueden registrarse varias esperas de suceso para una determinada instancia de actividad en un proceso de flujo de trabajo. Si el distintivo waitOnAllEvents se establece a false para los datos de espera de suceso especificados, sólo será necesario que empareje una de estas esperas de suceso para completar esa instancia de actividad. El manejador de sucesos del flujo de trabajo procesará dicho suceso completando la instancia de actividad especificada e haciendo avanzar el proceso iniciando el siguiente conjunto de actividades del proceso. Luego se eliminarán todos los demás registros de suceso que se registraron para la instancia de actividad completada. Si se han especificado correlaciones de salida (consulte Correlaciones de salida) para la espera de suceso, el motor de flujo de trabajo las persistirá y podrán utilizarse en actividades y transiciones posteriores del proceso.

Cuando waitOnAllEvents está establecido a true, todas las esperas de suceso especificadas para la instancia de actividad deberán ser emparejadas por sucesos generados para poder completar la actividad y proseguir con el flujo. Por cada suceso generado que empareje con una espera de suceso asociada para la instancia de actividad, el manejador de sucesos del flujo de trabajo procesará el suceso suprimiendo el registro de escucha de suceso asociado y persistiendo las correlaciones de salida (consulte Correlaciones de salida) que se hayan especificado para la espera de suceso. Este proceso continúa hasta que todas las esperas de suceso asociadas hayan sido emparejadas por sucesos generados. Solo en ese momento el manejador de sucesos del flujo de trabajo completará la actividad especificada y hará avanzar el proceso iniciando el siguiente conjunto de actividades del proceso.