Compartir por


Agregar metadatos a una actividad de flujo de trabajo personalizada

 

Publicado: noviembre de 2016

Se aplica a: Dynamics CRM 2015

El ensamblado que contiene la definición de la actividad de flujo de trabajo personalizada se anota mediante los atributos .NET para proporcionar metadatos que Microsoft Dynamics 365 usa en tiempo de ejecución al vincular su código con el motor de flujo de trabajo. Para obtener más información acerca de los atributos de .NET, consulte Extender metadatos mediante atributos.

Antes de comenzar a agregar metadatos a la definición de actividad de flujo de trabajo personalizada, asegúrese de estar al tanto de los tipos y los atributos de Microsoft Dynamics 365 que son compatibles con las actividades de flujo de trabajo personalizados.Más información: vea Clases, atributos y tipos de proceso

En este tema

Agregar parámetros de entrada

Agregar parámetros de salida

Agregar atributos de entrada y salida para el mismo parámetro

Atributos adicionales

Agregar el método Execute

Agregar parámetros de entrada

Cuando se especifica el parámetro de entrada de su clase de flujo de trabajo, también puede especificar un valor predeterminado para el parámetro. El siguiente ejemplo muestra la definición de un parámetro de entrada.

[Input("DateTime input")]
[Default("2004-07-09T02:54:00Z")]
public InArgument<DateTime> Date { get; set; }

Este parámetro de entrada se anota con el atributo de .NETInput. La clase de InputAttribute deriva de la clase ParameterAttribute, que toma un parámetro de (ParameterAttribute.Name) para especificar el nombre del atributo de entrada. Este nombre aparece en el ayudante del proceso de formulario en la aplicación web. Esto le permite asignar un atributo como parámetro de entrada al proceso.

Además, puede crear el parámetro de entrada requerido.Más información:RequiredArgumentAttribute

Agregar parámetros de salida

Los parámetros de salida se agregan de la misma forma que los parámetros de entrada. El siguiente ejemplo muestra la definición de un parámetro de salida.

[Output("Money output only")]
[Default("23.3")]
public OutArgument<Money> MoneyOutput { get; set; }

Este parámetro de salida se anota con el atributo de .NETOutput. La clase de OutputAttribute deriva de la clase ParameterAttribute, que toma un parámetro de (ParameterAttribute.Name) para especificar el nombre del atributo de salida. Este nombre aparece en el ayudante del proceso de formulario en la aplicación web. Esto le permite asignar un atributo como una salida.

Agregar atributos de entrada y salida para el mismo parámetro

Puede usar los atributos de entrada y salida para el mismo parámetro En el siguiente ejemplo de código, IntParameter es el parámetro de entrada y de salida.

[Input("Int input")]
[Output("Int output")]
[Default("2322")]
public InOutArgument<int> IntParameter { get; set; }

Atributos adicionales

Algunos tipos, como EntityReference y OptionSetValue requieren atributos adicionales además de Input, Output, y los atributos de Default. Los atributos adicionales son: ReferenceTarget y AttributeTarget. El siguiente ejemplo muestra la definición de un parámetro del tipo EntityReference.

[Input("EntityReference input")]
[Output("EntityReference output")]
[ReferenceTarget("account")]
[Default("3B036E3E-94F9-DE11-B508-00155DBA2902", "account")]
public InOutArgument<EntityReference> AccountReference { get; set; }

Para obtener una lista de los tipos y los atributos compatibles, consulte Clases, atributos y tipos de proceso.

Agregar el método Execute

La actividad de flujo de trabajo personalizado debe tener un método de Execute, como se muestra en el siguiente ejemplo.

protected override void Execute(CodeActivityContext context)
{
   if (AccountReference.Get(context).Id != new Guid("3B036E3E-94F9-DE11-B508-00155DBA2902"))   
      throw new InvalidPluginExecutionException("Unexpected default value");
}

Ver también

Actividades de flujo de trabajo personalizadas (ensamblados de flujo de trabajo)
Actividades de flujo de trabajo personalizadas (ensamblados de flujo de trabajo)
Crear una actividad de flujo de trabajo personalizada
Usar el servicio web de IOrganization en una actividad de flujo de trabajo personalizada
Ejemplo: crear una actividad de flujo de trabajo personalizada
Clases, atributos y tipos de proceso

© 2017 Microsoft. Todos los derechos reservados. Copyright