Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Las relaciones de entidad definen las formas en que los registros de entidad se pueden asociar a registros de otras entidades o a la misma entidad. La creación de nuevas relaciones de entidad crea nuevas relaciones de tabla en la base de datos. Use relaciones de entidad para definir asociaciones específicas que se usan con frecuencia para asociar registros para informes o en la interfaz de usuario. Una vez que existe una relación, puede asociar y desasociar registros en función de la relación mediante los Associate métodos y Disassociate . Más información: Acciones en registros de entidad
Para ver las relaciones entre registros individuales que son menos formales y más flexibles, consulte Entidades de conexión.
Este tema trata sobre cómo trabajar con relaciones de entidad mediante programación. Para obtener información sobre cómo trabajar con la relación de entidad en la aplicación, consulte Creación y edición de relaciones de entidad.
Tipos de relaciones de entidad
Dynamics 365 Customer Engagement (local) proporciona dos tipos de relaciones de entidad. Ambos heredan de la RelationshipMetadataBase clase :
-
Antes de crear una nueva relación de entidad mediante programación, compruebe si las entidades son aptas para participar en la relación. Hay restricciones aplicadas a las relaciones de entidad que usan las siguientes
EntityMetadatapropiedades:CanBeInManyToMany,CanBePrimaryEntityInRelationshipyCanBeRelatedEntityInRelationship. Estas restricciones se tienen en cuenta al crear manualmente relaciones de entidad en las herramientas de personalización. Hay mensajes que puede usar para determinar qué relaciones puede usar una entidad y qué otras entidades son válidas para ese tipo de relación. Más información: Elegibilidad de relación de entidadAmbos tipos de relaciones de entidad permiten opciones para mostrar vínculos de navegación entre registros relacionados. Más información: Configurar menús asociados
Relaciones de uno a varios
En una relación de entidad de uno a varios, muchos registros de entidad de referencia (relacionados) se pueden asociar a un único registro de entidad al que se hace referencia (principal). El registro de entidad al que se hace referencia se conoce a veces como "primario" y los registros de la entidad de referencia se conocen como "elementos secundarios".
En un nodo de entidad de una página de solución, este tipo de relación de entidad se muestra como una relación de 1 a varios (1:N) o una relación de varios a 1 (N:1). Estos términos se usan porque se navega a las relaciones de entidad a través de una de las entidades. La etiqueta refleja qué rol tiene la entidad actual en la relación.
Nota:
Consulte API web: Creación de una relación uno a varios para obtener información sobre cómo usar la API web para crear una relación 1:N.
Para el Servicio de organización, se usa una instancia de la OneToManyRelationshipMetadata clase cuando se trabaja con este tipo de relación de entidad. Cada relación de entidad tiene un nombre de esquema único que se usa para recuperarla. Para obtener más información, consulte SchemaName. Cada relación de entidad de este tipo también tiene una entidad a la que se hace referencia (entidad principal) con un atributo al que se hace referencia y una entidad de referencia (Entidad relacionada) con un atributo de referencia. El atributo de referencia se puede mostrar como un campo de búsqueda en un formulario de entidad. Para obtener más información, consulte
| API de la Web | Ensamblaje del SDK |
|---|---|
| OneToManyRelationshipMetadata EntityType. ReferencedEntity | ReferencedEntity |
| OneToManyRelationshipMetadata EntityType. ReferencedAttribute | ReferencedAttribute |
| OneToManyRelationshipMetadata EntityType. Referencia aEntity | ReferencingEntity |
| OneToManyRelationshipMetadata EntityType. Hacer referencia aAttribute | ReferencingAttribute |
Puede requerir que una entidad de referencia tenga una referencia estableciendo la AttributeRequiredLevel enumeración (AttributeRequiredLevel EnumType o AttributeRequiredLevel enumeración) ApplicationRequired en en el atributo de referencia. Para mantener la integridad de los datos, al hacerlo también debe especificar lo que desea que se produzca si se elimina el registro principal. Utilice la OneToManyRelationshipMetadata.CascadeConfiguration propiedad para evitar eliminar el registro principal o eliminar automáticamente el registro relacionado, así como para evitar un registro huérfano.
También puede usar la configuración en cascada para automatizar el comportamiento cuando se realizan acciones específicas en registros relacionados de la organización. Más información: Comportamiento de relación de entidad
Asignación de datos a nuevos registros
Cuando hay una relación de entidad uno a varios, puede especificar que los datos de determinados campos de la entidad a la que se hace referencia se pueden transferir a los nuevos registros relacionados creados en el contexto de la relación. Esto puede simplificar la entrada de datos al crear nuevos registros relacionados. Para obtener más información, vea Asignaciones de entidades y atributos.
Hacer referencia automática a las relaciones de entidad de uno a varios
Una relación de referencia automática es donde la entidad a la que se hace referencia y a la que se hace referencia es la misma. Por ejemplo, la entidad de cuenta tiene una relación de uno a varios que hace referencia automáticamente que permite una búsqueda con la etiqueta Cuenta primaria. Si el comportamiento de la relación de entidad se define como Parental , no es posible que un registro haga referencia a sí mismo porque esto crearía una referencia circular cuando se aplican comportamientos en cascada. Más información: Comportamiento de relación de entidad
Relaciones jerárquicas de entidad uno a varios
Con Dynamics 365 Customer Engagement (local), puede especificar una relación de entidad que haga referencia uno a varios como relación jerárquica designada para una entidad. La OneToManyRelationship.IsHierarchical propiedad (OneToManyRelationship.IsHierarchical o OneToManyRelationshipMetadata.IsHierarchical) marca esta relación como la relación uno a varios que se va a usar para la entidad.
Todas las relaciones de entidad de uno a varios representan un tipo de jerarquía, pero las relaciones marcadas explícitamente mediante la IsHierarchical propiedad son las únicas relaciones de entidad que admiten las visualizaciones de jerarquía en la aplicación, así como operadores de consulta nuevos para recuperar registros relacionados jerárquicamente. Más información: Consulta de datos jerárquicos
Cambiar el nombre de las propiedades de navegación de la API web
Si desea aplicar un nombre de propiedad de navegación de API web personalizada para una relación uno a varios, puede establecer valores para las OneToManyRelationshipMetadata.ReferencingEntityNavigationPropertyName propiedades y OneToManyRelationshipMetadata.ReferencedEntityNavigationPropertyName .
Relaciones de varios a varios
En una relación de entidad de varios a varios, muchos registros de entidad se pueden asociar a muchos otros registros de entidad. A diferencia de las relaciones uno a varios, no hay ningún campo de búsqueda en ninguna entidad y, por tanto, no hay ninguna jerarquía prevista. Los registros relacionados con el uso de una relación de varios a varios se pueden considerar pares y la relación es recíproca. Una relación de varios a varios también puede ser autoreferencial. Dado que no hay ningún comportamiento en cascada implicado en relaciones de varios a varios, puede permitir que un registro individual tenga una referencia a sí mismo.
Nota:
Consulte Creación de una relación de varios a varios mediante la API web para obtener información sobre cómo usar la API web para crear una relación N:N.
Se usa una instancia de ManyToManyRelationshipMetadata (ManyToManyRelationshipMetadata EntityType o ManyToManyRelationshipMetadata clase) cuando se trabaja con este tipo de relación de entidad. Cada relación de entidad tiene un valor único RelationshipMetadataBase.SchemaName que se usa para recuperarla.
La creación de una relación de entidad de varios a varios crea una nueva entidad intersect donde la EntityMetadata.IsIntersect propiedad es true. Los registros de esta entidad realizan un seguimiento de cada relación individual de varios a varios. No se pueden agregar atributos personalizados para intersecr entidades.
Cambiar el nombre de las propiedades de navegación de la API web
Si desea aplicar un nombre de propiedad de navegación de API web personalizado para una relación de varios a varios, puede establecer valores para ManyToManyRelationshipMetadata EntityType. Entity1NavigationPropertyName y ManyToManyRelationshipMetadata EntityType. Propiedades Entity2NavigationPropertyName.
Configurar menús asociados
Ambos tipos de relaciones de entidad permiten la configuración de vínculos de navegación entre registros relacionados. Use las Metadata.AssociatedMenuConfiguration propiedades de cada tipo de definición de relación de entidad para especificar cómo desea que se muestren los vínculos de navegación en un formulario de entidad.
Estos valores proporcionan la configuración predeterminada para la relación. Puede usar el editor de formularios para invalidar estas opciones para cada formulario. Más información: Cambiar la navegación dentro de un formulario
Behavior
Proporciona las siguientes opciones:
DoNotDisplay
UseCollectionName
UseLabel
Group
Proporciona las siguientes opciones:Detalles
Mercadotecnia
Ventas
Service
No puede agregar nuevos grupos, pero puede cambiar el texto que se muestra para ellos mediante el editor de formularios.
Etiqueta
Si seleccionaAssociatedMenuBehavior.UseLabel, debe proporcionar una etiqueta personalizada.Orden
El entero proporcionado para el orden controlará la posición relativa de los elementos de navegación del grupo. Cuanto menor sea el valor, más alto aparecerá el elemento en relación con los valores de otros elementos del grupo.
Consulte también
Creación y actualización de relaciones de entidad mediante web API
Ampliar el modelo de metadatos para Dynamics 365 Customer Engagement (local)
Mensajes de relación de entidad
Elegibilidad de la Relación de Entidades
Comportamiento de relación de entidad
Crear relaciones de entidad
Ejemplo: Crear relaciones de entidad
Ejemplo: volcar la información de relaciones de entidad en un archivo
Asignaciones de entidades y atributos
Recuperar registros para relaciones de variosTo-Many mediante entidades intersect