Partekatu honen bidez:


Introducción a los atributos de entidad de Microsoft Dynamics CRM 2015

 

Publicado: noviembre de 2016

Se aplica a: Dynamics CRM 2015

Las entidades incluyen un conjunto de atributos que representan los datos que se pueden incluir en cada registro. Los programadores deben comprender los diferentes tipos de atributos y cómo trabajar con ellos. Los metadatos para los atributos describen las operaciones y los comportamientos válidos de diferentes tipos de atributos. Varios tipos de atributos se pueden agrupar por comportamientos comunes.

La experiencia específica que tendrán los programadores depende del estilo de desarrollo que elijan.Más información:Programación de entidad (enlace en tiempo de compilación frente a enlace en tiempo de ejecución frente a extensiones de desarrolladores).

Nota

En este tema se incluyen referencias a muchas propiedades de metadatos.Para ver los metadatos de la entidad de su organización, instale la solución Explorador de metadatos que se describe en Examinar los metadatos de la organización. También puede ver los metadatos de una organización no personalizada en una hoja de cálculo de Excel denominada EntityMetadata.xlsx que se incluye en la carpeta de nivel superior de la descarga del SDK.

En este tema

Operaciones válida en atributos

Tipos de atributos

Atributos de datos de categorización

Atributos de datos de colección

Atributo de datos de fecha y hora

Atributos de datos de imagen

Atributos de datos de cantidad

Atributos de datos de referencia

Atributos de datos de cadena

Identificador único de atributos de datos.

Atributos virtuales

Atributos lógicos

Operaciones válida en atributos

Cada atributo tiene metadatos que describen las operaciones que admite. Debe conocer las operaciones que son válidas para los atributos con los que trabaja.

Propiedad AttributeMetadata

Descripción

IsValidForCreate

True si este valor de atributo es válido para establecer cuando se crea un registro; si no, false.

IsValidForRead

True si este valor de atributo se puede recuperar; si no, false.

IsValidForUpdate

True si este valor de atributo es válido para establecer cuando se actualiza un registro; si no, false.

Tipos de atributos

Los atributos se definen en metadatos y la propiedad AttributeMetadata.AttributeTypeName contiene el valor que describe el tipo. Los integrantes estáticos de AttributeTypeDisplayName proporcionan la lista de tipos posibles.

Nota

La antigua propiedad AttributeType contiene datos que están fundamentalmente alineados con AttributeTypeName, pero muestran atributos ImageType como Virtual. Debe usar la propiedad AttributeTypeName en lugar de la propiedad AttributeType.

La siguiente sección agrupa los tipos de atributos en las siguientes categorías para poder compararlas más fácilmente:

  • Atributos de datos de categorización

  • Atributos de datos de colección

  • Atributo de datos de fecha y hora

  • Atributos de datos de imagen

  • Atributos de datos de cantidad

  • Atributos de datos de referencia

  • Atributos de datos de cadena

  • Identificador único de atributos de datos.

  • Atributos virtuales

Atributos de datos de categorización

Cada uno de los cinco atributos en este grupo se heredan de una clase base común de EnumAttributeMetadata y usan un conjunto predefinido de valores válidos para agrupar los registros en categorías.

Establezca atributos de lista desplegable, situación y estado mediante OptionSetValue con una propiedad de Value establecida en un entero que represente una opción válida en los metadatos.

Establezca atributos booleanos mediante un valor booleano, pero reconozca que se trata de una categorización limitada a solamente dos opciones.

Los atributos EntityName usan un valor de cadena que está limitado a un nombre lógico de entidad válido de la organización.

Los atributos de lista desplegable y booleanos personalizados se pueden definir como atributos calculados.Más información:Atributos calculados.

Tipo de metadatos

Valor AttributeTypeName

Descripción

PicklistAttributeMetadata

PicklistType

Los valores válidos se establecen en OptionMetadata.Value para el atributo definido en OptionSetMetadata.Options.

En las herramientas de personalización de la aplicación estos atributos se denominan campos de Conjunto de opciones.

StatusAttributeMetadata

StatusType

Estos atributos del sistema normalmente se denominan StatusCode. Los valores válidos se establecen en StatusOptionMetadata.Value para el atributo definido en OptionSetMetadata.Options.

La propiedad StatusOptionMetadata.State para cada opción describe el valor válido para el correspondiente valor de StateCode. Antes de configurar StatusCode debe comprobar que sea válido para el valor actual de StateCode. Use el mensaje de SetStateRequest para establecer los valores de atributo de StatusCode y de StateCode si necesita cambiar el estado del registro.

Estos atributos pueden tener otras restricciones en las que se pueden establecer valores. La propiedad StatusOptionMetadata.TransitionData puede contener información en la que se admiten opciones cuando el valor EntityMetadata.EnforceTransitions es true.Más información:Definir transiciones de modelo de estado personalizadas.

StateAttributeMetadata

StateType

Estos atributos del sistema normalmente se denominan StatusCode. Los valores válidos se establecen en StateOptionMetadata.Value para el atributo definido en OptionSetMetadata.Options.

StateCode no es válido para actualizar. Una vez creado el registro, StateCode solo se puede establecer usando el mensaje de SetStateRequest.

La propiedad StateOptionMetadata.DefaultStatus para cada opción describe el StatusCode predeterminado que se usará si no se establece como parámetro en la SetStateRequest.

BooleanAttributeMetadata

BooleanType

Los atributos booleanos se pueden configurar directamente con un valor booleano, pero como los otros también tienen una propiedad OptionSet con propiedades FalseOption y TrueOption que correspondan a las opciones booleanas. Cada una de esas propiedades define un conjunto de etiquetas localizadas que representa lo que suponen true y false para el atributo. Dentro de las herramientas de personalización en la aplicación estos atributos se denominan campos Dos opciones porque el significado de cada opción puede ser cualquier par mutuamente exclusivo de opciones, no sólo true y false. Por ejemplo, las opciones podrían ser grande y pequeño.

EntityNameAttributeMetadata

EntityNameType

Estos atributos del sistema suelen emparejarse con un atributo de referencia o identificador único que es válido para varios tipos. El valor de este atributo es un valor de cadena que representa el nombre lógico de una entidad. Si el atributo de referencia correspondiente es un EntityReference, el valor de este atributo es el mismo que el valor de propiedad de EntityReference.Name.

Atributos de datos de colección

Estos atributos del sistema devuelven colecciones de valores.

Valor de AttributeTypeName

Descripción

CalendarRulesType

No hay atributos reales que usan CalendarRulesType. Cuando se usa el estilo de enlace anticipado, la herramienta de generación de código creará los dos atributos simulados siguientes que no están presentes en los metadatos. Estos atributos representan realmente una vista de registros de reglas de calendario asociados en una relación de uno a varios a la instancia de entidad.

  • Relación de Calendar.CalendarRules: calendar_calendar_rules

  • Relación de Service.CalendarRules: service_calendar_rules

PartyListType

Los siguientes atributos permiten establecer varios EntityReference para varios tipos de actividades.

ActivityPointer.allparties
Appointment.OptionalAttendees
Appointment.Organizer
Appointment.requiredattendees
CampaignActivity.from
CampaignActivity.Partners
CampaignResponse.Customer
CampaignResponse.from
CampaignResponse.Partner
Email.bcc
Email.cc
Email.from
Email.to
Fax.from
Fax.to
Letter.bcc
Letter.cc
Letter.from
Letter.to
PhoneCall.from
PhoneCall.to
RecurringAppointmentMaster.OptionalAttendees
RecurringAppointmentMaster.Organizer
RecurringAppointmentMaster.RequiredAttendees
ServiceAppointment.Customers
ServiceAppointment.Resources
SocialActivity.From
SocialActivity.Resources
SocialActivity.To

Atributo de datos de fecha y hora

Atributos con el valor de AttributeTypeName de metadatos de DateTimeType. Establezca estos atributos mediante System.DateTime.

La propiedad DateTimeAttributeMetadata.Format puede ser uno de los siguientes valores de DateTimeFormat:

  • DateAndTime: Mostrar la fecha y hora.

  • DateOnly: Mostrar solo la fecha

Los atributos de fecha y hora personalizados se pueden definir como atributos calculados o consolidados.Más información:Atributos calculados y consolidados.

Atributos de datos de imagen

Para las entidades que admitan atributos de imagen, el atributo SchemaName de la entidad de imagen siempre es EntityImage.

Más información:Atributos de imagen, Imágenes de entidad y Ejemplo: establecer y recuperar imágenes de entidad.

Atributos de datos de cantidad

Los atributos en esta categoría usan datos numéricos. Cada uno de estos atributos tiene una propiedad de metadatos MaxValue y MinValue para establecer un intervalo de valores válidos.

Los atributos de decimal, entero o dinero personalizados se pueden definir como atributos calculados o consolidados.Más información:Atributos calculados y consolidados.

Tipo de metadatos

Valor de AttributeTypeName

Descripción

BigIntAttributeMetadata

BigIntType

Los atributos BigInt solo para uso interno.

DecimalAttributeMetadata

DecimalType

Use valores decimales.

La propiedad de metadatos Precision define la precisión que se usará para el atributo.

DoubleAttributeMetadata

DoubleType

Use valores dobles.

La propiedad de metadatos Precision define la precisión que se usará para el atributo.

IntegerAttributeMetadata

IntegerType

Use valores int.

MoneyAttributeMetadata

MoneyType

Use Money que tiene una propiedad decimalValue.

Cada atributo monetario tiene un correspondiente atributo monetario de divisa base calculado por el sistema que se usa para calcular el valor de la divisa base de la organización cuando varias divisas se han habilitado para la organización. La propiedad IsBaseCurrency identifica si un atributo monetario representa la divisa base.Más información:Entidad de divisa de la transacción (divisa).

Los atributos monetarios también tienen una propiedad de metadatos PrecisionSource que puede especificar el nivel de precisión que deben usarse. El valor de entero en esta propiedad determina si:

  • 0: La precisión está determinada por la propiedad de metadatos Precision.

  • 1: El valor de Organization.PricingDecimalPrecision.

  • 2: La TransactionCurrency.CurrencyPrecision que está asociada con el registro actual.

Atributos de datos de referencia

Estos atributos se llaman habitualmente atributos de búsqueda y cada uno de ellos contiene un valor de EntityReference. La diferencia entre estos atributos es la clase de entidades con la que pueden asociarse. La propiedad de metadatos Targets contiene una String[] de nombres lógicos de entidad válida que representa destinos válidos para la búsqueda. Los atributos de búsqueda personalizados sólo pueden tener un tipo en la propiedad Targets.

La PartyListType también representa un tipo de atributo de datos de referencia, pero dado que contienen una colección de referencias, se incluyen en los Atributos de datos de colección.

Tipo de metadatos

Valor de AttributeTypeName

Descripción

LookupAttributeMetadata

CustomerType

Estos atributos de búsqueda del sistema pueden vincularse con los registros de entidad de cuenta o de contacto.

Contact.ParentCustomerId
Contract.BillingCustomerId
Contract.CustomerId
ContractDetail.CustomerId
CustomerOpportunityRole.CustomerId
CustomerRelationship.CustomerId
CustomerRelationship.PartnerId
Entitlement.CustomerId
Incident.CustomerId
Invoice.CustomerId
Lead.CustomerId
Opportunity.CustomerId
Quote.CustomerId
SalesOrder.CustomerId
SocialActivity.PostAuthor
SocialActivity.PostAuthorAccount
SocialProfile.CustomerId

LookupType

Estos atributos de búsqueda se pueden usar para establecer referencias a un registro del tipo indicado mediante la propiedad de metadatos .

Algunas búsquedas del sistema no tienen un valor establecido para la propiedad Targets, pero la entidad prevista debe estar aparentemente basada en la relación de entidad que está asociada a la búsqueda.

OwnerType

Estas búsquedas del sistema siempre se llaman OwnerId y cada entidad propiedad del usuario tendrá una. Pueden hacer referencia a registros SystemUser o del equipo.

Atributos de datos de cadena

Existen dos tipos de atributos que usan datos de cadena.

Tipo de metadatos

Valor de AttributeTypeName

Descripción

StringAttributeMetadata

StringType

Un atributo para un valor de cadena al que se puede aplicar un formato.Más información:Formatos de StringAttributeMetadata.

Los atributos de cadena personalizados se pueden definir como atributos calculados.Más información:Atributos calculados.

MemoAttributeMetadata

MemoType

Un atributo para un valor de cadena pensado para notas. Estos atributos son equivalentes a los atributos de cadena con el valor de propiedad FormatName establecido en TextArea.

Identificador único de atributos de datos.

Los atributos con el valor de AttributeTypeName de metadatos de UniqueidentifierType contienen valores System.Guid que acepta valores nulos.

Cada instancia de entidad incluye un atributo que representa el identificador único del registro. Este atributo tiene un nombre de esquema que sigue la convención de nomenclatura <entity schema name>+Id. Por ejemplo, la entidad de cuenta del nombre de esquema para el atributo que representa el identificador único se llama AccountId. Este valor también está disponible directamente utilizando la propiedad Entity.Id. Este atributo se devuelve siempre cuando se recupera una entidad, incluso si no se incluye en la ColumnSet de una consulta. Este valor es nulo para una entidad recién instanciada. Aunque es válido configurar un valor de Guid para definir el identificador único cuando se crea un nuevo registro, para conseguir el máximo rendimiento se recomienda dejarlo nulo y permitir que el sistema asigne un valor al crear el registro. Tras guardar un registro este valor se convierte en de solo lectura.

Las entidades pueden incluir otros atributos de identificador único en función de las capacidades de la entidad. Por ejemplo, las entidades que se habilitan para procesos de negocio contendrán atributos de identificador único para que ProcessId y StageId realice un seguimiento del proceso de negocio actual asociada al registro. Determinadas relaciones del sistema que normalmente usaría un valor de EntityReference usarán un identificador único en su lugar. Por ejemplo, las entidades de cuenta y contacto tienen dos atributos de identificador único (Address1_AddressId y Address2_AddressId) que corresponden a los registros de CustomerAddress creados cuando se crea una cuenta o un contacto.

Atributos virtuales

Los metadatos para una entidad incluirán algunos atributos con el valor de AttributeTypeName de metadatos de VirtualType. Estos atributos no se pueden usar en código.

Atributos lógicos

Los atributos lógicos contienen valores que se almacenan en tablas de base de datos diferentes que otros atributos de la entidad. En la mayoría de los casos esta implementación interna no es relevantes para trabajar con Microsoft Dynamics CRM. Cuando usa atributos lógicos como orígenes de un campo calculado los valores del campo calculado no se pueden ordenar. Use la propiedad AttributeMetadata.IsLogical para detectar si un atributo es un atributo lógico.

Los atributos lógicos más comunes son los que almacenan información de dirección en varias entidades específicas: CompetitorAddress, CustomerAddress, InternalAddress, LeadAddress, y PublisherAddress. Existen 8 entidades del sistema que incluyen un conjunto completo de atributos para dos direcciones mediante atributos lógicos. Cada uno de estos atributos comienza con "Address*", como Address1_City o Address2_Latitude.

Ver también

Introducción a entidades en Microsoft Dynamics CRM 2015
Atributos de imagen
Atributos calculados y consolidados
Ejemplo: recuperar transiciones de estado válidas
Ejemplo: establecer y recuperar imágenes de entidad

© 2017 Microsoft. Todos los derechos reservados. Copyright