Compartir a través de


GetWorkflowEvent (operación)

Inserta el nombre del evento del flujo de trabajo en curso en la pila.

Sintaxis


<wf:Operation Name="GetWorkflowEvent" />

Parámetros

Ninguno.

Valor insertado

Cadena que contiene el evento del flujo de trabajo en curso.

Comentarios

Una instancia de flujo de trabajo puede pasar por varios estados durante el transcurso de su ejecución. Por ejemplo, una instancia de flujo de trabajo puede estar inactiva o suspendida. Cada vez que la instancia de flujo de trabajo cambia de estado, emite un evento de estado de flujo de trabajo a la infraestructura de seguimiento en tiempo de ejecución. El interceptor de BAM de Windows Workflow Foundation es compatible con la mayoría de los eventos definidos por la enumeración de System.Workflow.Runtime.Tracking.TrackingWorkflowEvent, como se muestra en la siguiente tabla.

Evento de actividad Descripción
Cambiado Se ha producido un cambio de flujo de trabajo en la instancia de flujo de trabajo.
Completado La instancia de flujo de trabajo ha finalizado.
Creado La instancia de flujo de trabajo se ha creado.
Excepción Se ha producido un error no controlado.
Inactivo La instancia de flujo de trabajo está inactiva.
Cargado La instancia de flujo de trabajo se ha cargado en memoria.
Guardado La instancia de flujo de trabajo se ha guardado.
Reanudado Se ha reanudado la ejecución de una instancia que se había detenido anteriormente.
Iniciado La instancia de flujo de trabajo se ha iniciado.
Suspended La instancia de flujo de trabajo se ha suspendido.
Finalizado La instancia de flujo de trabajo se ha finalizado.
Descargado La instancia de flujo de trabajo se ha descargado desde memoria.

Nota

No puede usar GetWorkflowEvent ni GetActivityEvent en el mismo elemento OnEvent.

Ejemplo

El siguiente ejemplo contiene un filtro configurado para buscar una actividad específica ("FoodAndDrinksPolicy") en un flujo de trabajo. En el ejemplo, se configura un filtro para buscar la actividad denominada "FoodAndDrinksPolicy" en un flujo de trabajo cerrado. Esto se realiza mediante la comparación del valor devuelto por GetWorkflowEvent al valor constante "Creado".

<ic:Filter>
  <ic:Expression>
    <wf:Operation Name="GetWorkflowEvent" />
      <ic:Operation Name="Constant">
        <ic:Argument>Created</ic:Argument>
      </ic:Operation>
    <ic:Operation Name="Equals" />
  </ic:Expression>
</ic:Filter>

Esta operación es útil para el seguimiento del período de vida de un flujo de trabajo y para la detección de excepciones o de otros problemas con el flujo de trabajo.

Consulte también

Enumeración System.Workflow.Runtime.Tracking.TrackingWorkflowEvent