Compartir a través de


Elemento OnEvent del interceptor

El elemento OnEvent describe un evento real que se asigna a la actividad de BAM envolvente.

Formato

El OnEvent elemento contiene elementos secundarios que especifican un filtro de eventos, el identificador de correlación y, opcionalmente, qué datos se van a actualizar, hacer referencia a los datos y un token de continuación.

Atributos

Nombre del atributo Descripción
Nombre Nombre de este evento definido por el usuario.
Source Nombre del origen del evento tal como aparece en un elemento EventSource .
IsBegin Valor booleano que indica si el evento es el principio de una nueva actividad bam (true) o no (false).
IsEnd Valor booleano que indica si el evento es el final de una actividad bam (true) o no (false).

Elementos secundarios

Estado de ejecución Descripción
Filter Proporciona una forma de limitar el evento de acuerdo con unos criterios específicos.
CorrelationID Especifica el Id. de correlación (el Id. de instancia de actividad).
ContinuationToken Especifica el token de continuación, un Id. de correlación que utilizarán eventos futuros que contribuirán a la misma instancia de actividad.
Actualizar Especifica los datos que se van a extraer del evento y que se van a importar a la actividad de BAM.
Referencia Agrega una relación a una actividad de BAM.

Comentarios

Ejemplo

En el ejemplo siguiente se muestra un bloque OnEvent típico para WF:

<ic:OnEvent Name="BeginAct" IsBegin="true" Source="ResWF">  
  <ic:Filter>  
    <ic:Expression>  
      <wf:Operation Name="GetActivityName"/>  
      <ic:Operation Name="Constant">  
        <ic:Argument>FoodAndDrinksPolicy</ic:Argument>  
      </ic:Operation>  
      <ic:Operation Name="Equals"/>  
      <wf:Operation Name="GetActivityEvent"/>  
      <ic:Operation Name="Constant">  
        <ic:Argument>Closed</ic:Argument>  
      </ic:Operation>  
      <ic:Operation Name="Equals"/>  
      <ic:Operation Name="And"/>  
    </ic:Expression>  
  </ic:Filter>  
  <ic:CorrelationID>  
    <ic:Expression>  
      <wf:Operation Name="GetContextProperty">  
        <wf:Argument>InstanceId</wf:Argument>  
      </wf:Operation>  
    </ic:Expression>  
  </ic:CorrelationID>  
  <ic:Update DataItemName="StartOrderProcessing" Type="DATETIME">  
    <ic:Expression>  
      <wf:Operation Name="GetContextProperty">  
        <wf:Argument>EventTime</wf:Argument>  
      </wf:Operation>  
    </ic:Expression>  
  </ic:Update>  
  <ic:Update DataItemName="FoodItem" Type="NVARCHAR">  
    <ic:Expression>  
      <wf:Operation Name="GetWorkflowProperty">  
        <wf:Argument>foodItem</wf:Argument>  
      </wf:Operation>  
    </ic:Expression>  
  </ic:Update>  
</ic:OnEvent>  

En este ejemplo se muestra un bloque OnEvent típico para el servicio WCF:

<ic:OnEvent IsBegin="true" IsEnd ="false" Name ="AuthorizationRequestService" Source="ESCreditCardService">  
  <ic:Filter>  
    <ic:Expression>  
      <wcf:Operation Name="GetServiceContractCallPoint"/>  
      <ic:Operation Name ="Constant">  
        <ic:Argument>ServiceRequest</ic:Argument>  
      </ic:Operation>  
      <ic:Operation Name ="Equals"/>  
      <wcf:Operation Name="GetOperationName" />  
      <ic:Operation Name="Constant">  
        <ic:Argument>AuthorizeWithDataContract</ic:Argument>  
      </ic:Operation>  
      <ic:Operation Name ="Equals" />  
      <ic:Operation Name ="And" />  
    </ic:Expression>  
  </ic:Filter>  
  <ic:CorrelationID>  
    <ic:Expression>  
      <ic:Operation Name="Constant">  
        <ic:Argument>ServiceRequest</ic:Argument>  
      </ic:Operation>  
    </ic:Expression>  
  </ic:CorrelationID>  
  <ic:Update DataItemName="Name" Type="NVARCHAR">  
    <ic:Expression>  
      <wcf:Operation Name="XPath">  
        <wcf:Argument>//s:Body/ccservice:*/ccservice:creditCard/creditcard:FirstName</wcf:Argument>  
      </wcf:Operation>  
      <wcf:Operation Name="XPath">  
        <wcf:Argument>//s:Body/ccservice:*/ccservice:creditCard/creditcard:LastName</wcf:Argument>  
      </wcf:Operation>  
      <ic:Operation Name ="Concatenate"/>  
    </ic:Expression>  
  </ic:Update>  
</ic:OnEvent>  

En esta sección

Consulte también

Estructura de un archivo de configuración de interceptores