Clases, atributos y tipos de proceso
Publicado: noviembre de 2016
Se aplica a: Dynamics CRM 2015
En este tema, se proporciona información sobre los tipos y clases de procesos que se encuentran en Microsoft Dynamics 365 y que se pueden usar para trabajar con actividades personalizadas.
En este tema
Tipos de proceso
Atributos y tipos de Microsoft Dynamics CRM
InputAttribute y OutputAttribute
DefaultAttribute
ReferenceTargetAttribute
AttributeTargetAttribute
RequiredArgumentAttribute
Tipos de proceso
Las clases de procesos están disponibles en el espacio de nombres Microsoft.Xrm.Sdk.Workflow (Microsoft.Xrm.Sdk.Workflow.dll). Puede usar estas clases para crear actividades personalizadas en Windows Workflow Foundation y después utilizar las actividades en el área Procesos de Microsoft Dynamics 365 o en los flujos de trabajo de XAML. Para obtener información detallada sobre las clases de proceso, consulte Microsoft.Xrm.Sdk.Workflow.
Atributos y tipos de Microsoft Dynamics CRM
Los tipos de Microsoft Dynamics 365 se encuentran en el espacio de nombres Microsoft.Xrm.Sdk (Microsoft.Xrm.Sdk.dll). Use las clases de InputAttribute y de OutputAttribute para anotar propiedades de entrada y de salida.
Se admiten los siguientes tipos para las actividades personalizadas de flujo de trabajo:
Bool
DateTime
Decimal
Double
Int
Money
String
Aparte de Input, Output, y los atributos de Default , algunos de los tipos compatibles de Microsoft Dynamics 365 en las actividades de flujo de trabajo personalizadas requieren que se especifiquen atributos adicionales, como ReferenceTarget y AttributeTarget. Se describen en la sección siguiente.
InputAttribute y OutputAttribute
El siguiente ejemplo muestra cómo agregar los atributos de entrada y salida a un parámetro Money usado en una actividad de flujo de trabajo personalizada. También muestra cómo especificar un valor predeterminado para la propiedad.
[Input("Money input")]
[Output("Money output")]
[Default("232.3")]
public InOutArgument<Money> MoneyParameter { get; set; }
DefaultAttribute
Puede usar la clase DefaultAttribute para especificar un valor predeterminado para un parámetro de entrada. Los siguientes ejemplos muestran cómo establecer el valor predeterminado para cada tipo mediante el atributo Default .
Bool
[Input("Bool input")]
[Output("Bool output")]
[Default("True")]
public InOutArgument<bool> Bool { get; set; }
Fecha y hora
[Input("DateTime input")]
[Output("DateTime output")]
[Default("2004-07-09T02:54:00Z")]
public InOutArgument<DateTime> DateTime { get; set; }
Decimal
[Input("Decimal input")]
[Output("Decimal output")]
[Default("23.45")]
public InOutArgument<decimal> Decimal { get; set; }
Doble
[Input("Double input")]
[Output("Double output")]
[Default("252.2")]
public InOutArgument<double> Double { get; set; }
EntityReference
[Input("EntityReference input")]
[Output("EntityReference output")]
[ReferenceTarget("account")]
[Default("3B036E3E-94F9-DE11-B508-00155DBA2902", "account")]
public InOutArgument<EntityReference> EntityReference { get; set; }
Int
[Input("Int input")]
[Output("Int output")]
[Default("2322")]
public InOutArgument<int> Int { get; set; }
Dinero
[Input("Money input")]
[Output("Money output")]
[Default("232.3")]
public InOutArgument<Money> Money { get; set; }
OptionSetValue
[Input("OptionSetValue input")]
[Output("OptionSetValue output")]
[AttributeTarget("account", "industrycode")]
[Default("3")]
public InOutArgument<OptionSetValue> OptionSetValue { get; set; }
Cadena
[Input("String input")]
[Output("String output")]
[Default("string default")]
public InOutArgument<string> String { get; set; }
ReferenceTargetAttribute
El tipo de atributo EntityReference requiere especificar el tipo de entidad al que se hace referencia mediante la clase ReferenceTargetAttribute . El siguiente ejemplo muestra cómo agregar los atributos de entrada y salida a un parámetro AccountReference en una actividad de flujo de trabajo personalizada mediante el atributo ReferenceTarget.
[Input("EntityReference input")]
[Output("EntityReference output")]
[ReferenceTarget("account")]
[Default("3B036E3E-94F9-DE11-B508-00155DBA2902", "account")]
public InOutArgument<EntityReference> AccountReference { get; set; }
AttributeTargetAttribute
El tipo de atributo OptionSetValue requiere que especifique la entidad y el atributo a los que se hace referencia mediante la clase AttributeTargetAttribute. El siguiente ejemplo muestra cómo agregar los atributos de entrada y salida a un parámetro OptionSetValue en una actividad de flujo de trabajo personalizada mediante el atributo AttributeTarget.
[Input("OptionSetValue input")]
[Output("OptionSetValue output")]
[AttributeTarget("account", "industrycode")]
[Default("3")]
public InOutArgument<OptionSetValue> OptionSetValue { get; set; }
RequiredArgumentAttribute
Puede usar la clase System.Activities.RequiredArgumentAttribute para especificar que se necesita un parámetro de entrada.
[RequiredArgument]
[Input("Update Next Birthdate for")]
[ReferenceTarget("contact")]
public InArgument<EntityReference> Contact { get; set; }
Ver también
Actividades de flujo de trabajo personalizadas (ensamblados de flujo de trabajo)
Agregar metadatos a una actividad de flujo de trabajo personalizada
Ejemplo: crear una actividad de flujo de trabajo personalizada
© 2017 Microsoft. Todos los derechos reservados. Copyright