Condividi tramite


Personalizzare i metadati delle relazioni di entità

 

Data di pubblicazione: novembre 2016

Si applica a: Dynamics CRM 2015

Le relazioni di entità definiscono i modi in cui i record dell'entità possono essere associati ai record di altre entità o della stessa entità. La creazione di nuove relazioni di entità consente di creare nuove relazioni tra tabelle nel database. Utilizzare le relazioni di entità per definire associazioni specifiche utilizzate di frequente per associare i record per i report o nell'interfaccia utente. Una volta che esiste una relazione, è possibile associare e annullare l'associazione tra i record basati sulla relazione utilizzando i metodi Associate e Disassociate.Ulteriori informazioni:Azioni sui record dell'entità

Per le relazioni tra i singoli record meno formali e più flessibili, vedere Entità connessione.

Questo argomento riguarda l'utilizzo delle relazioni di entità a livello di programmazione. Per informazioni sull'utilizzo della relazione di entità nell'applicazione, vedere Creare e modificare le relazioni di entità.

In questo argomento

Tipi di relazioni di entità

Relazioni uno-a-molti

Relazioni molti-a-molti

Configurare i menu associati

Tipi di relazioni di entità

In Microsoft Dynamics 365 sono disponibili due tipi di relazioni di entità Entrambi i tipi ereditano dalla classe RelationshipMetadataBase:

  • Relazioni uno-a-molti

  • Relazioni molti-a-molti

Prima di creare una nuova relazione di entità a livello di programmazione, verificare se le entità sono idonee per partecipare alla relazione. Sono disponibili vincoli che vengono applicati alle relazioni di entità che utilizzano le seguenti proprietà EntityMetadata: CanBeInManyToMany, CanBePrimaryEntityInRelationship e CanBeRelatedEntityInRelationship. Queste limitazioni vengono prese in considerazione quando si creano manualmente le relazioni di entità negli strumenti di personalizzazione. Vi sono messaggi che è possibile utilizzare per determinare le relazioni che le entità possono utilizzare e quali entità sono valide per il tipo di relazione.Ulteriori informazioni:Idoneità delle relazioni di entità

Entrambi i tipi di relazioni di entità consentono alle opzioni di visualizzare i collegamenti di navigazione tra i record correlati.Ulteriori informazioni:Configurare i menu associati

Relazioni uno-a-molti

In una relazione di entità uno-a-molti, molti record dell'entità di riferimento (correlati) possono essere associati a un singolo record dell'entità (primario) a cui viene fatto riferimento. Il record dell'entità a cui viene fatto riferimento viene talvolta denominato "padre" e i record dell'entità di riferimento vengono denominati "figli".

In un nodo dell'entità di una pagina della soluzione questo tipo di relazione di entità viene visualizzato come Uno-a-molti (1:N) o (Molti-a-uno N:1). Questi termini vengono utilizzati perché si accede alle relazioni di entità tramite una delle entità. L'etichetta riflette il ruolo dell'entità corrente nella relazione.

Si utilizza un'istanza della classe OneToManyRelationshipMetadata quando si utilizza questo tipo di relazione di entità. A ogni relazione di entità è associato un nome univoco dello schema utilizzato per recuperare tale relazione. Per ulteriori informazioni, vedere SchemaName. Per ogni relazione di entità di questo tipo è inoltre disponibile un'entità di riferimento (Entità primaria) con un attributo di riferimento e un'entità di riferimento (Entità correlata) con un attributo di riferimento. È possibile visualizzare l'attributo di riferimento come campo di tipo lookup in un modulo dell'entità. Per ulteriori informazioni, vedere ReferencedEntity, ReferencedAttribute, ReferencingEntity e ReferencingAttribute.

È possibile richiedere l'aggiunta di un riferimento a un'entità di riferimento impostando AttributeRequiredLevel su ApplicationRequired nell'attributo di riferimento. Per mantenere l'integrità dei dati, quando si esegue questa operazione, è inoltre necessario specificare cosa deve accadere nel caso in cui il record primario venga eliminato. Utilizzare la proprietà CascadeConfiguration per impedire l'eliminazione del record primario o per eliminare automaticamente il record correlato, nonché per evitare un record orfano.

È inoltre possibile utilizzare la configurazione a catena per automatizzare il comportamento quando vengono eseguite azioni specifiche sui record correlati nell'organizzazione.Ulteriori informazioni:Comportamento della relazione di entità

Mappare i dati ai nuovi record

Quando esiste una relazione di entità uno-a-molti, è possibile specificare che i dati di campi specifici nell'entità a cui viene fatto riferimento possano essere trasferiti nei nuovi record correlati creati nel contesto della relazione. In questo modo è possibile semplificare l'immissione dei dati quando si creano nuovi record correlati. Per ulteriori informazioni, vedere Personalizzare mapping di entità e attributi.

Relazioni di entità uno-a-molti autoreferenziali

Una relazione autoreferenziale è dove l'entità di riferimento e l'entità a cui viene fatto riferimento sono identiche. Ad esempio, l'entità account ha una relazione uno-a-molti autoreferenziale che consente una ricerca contrassegnata come Account padre. Se il comportamento della relazione di entità viene definito come Con elemento padre un record non può fare riferimento a se stesso perché ciò comporterebbe la creazione di un riferimento circolare nel momento in cui vengono applicati i comportamenti a catena.Ulteriori informazioni:Comportamento della relazione di entità

Relazioni entità uno-a-molti gerarchiche

Con Aggiornamento di Microsoft Dynamics CRM 2015 e Microsoft Dynamics CRM Online 2015, è possibile specificare una relazione di entità autoreferenziale uno-a-molti come la relazione gerarchica definita per un'entità. La proprietà OneToManyRelationshipMetadata.IsHierarchical contrassegna questa relazione come la relazione uno-a-molti da utilizzare per l'entità.

Tutte le relazioni entità uno-a-molti rappresentano un tipo di gerarchia, ma le relazioni contrassegnate utilizzando la proprietà IsHierarchical sono le sole relazioni di entità che supportano le visualizzazioni della gerarchia nell'applicazione e i nuovi operatori di query per recuperare i record correlati gerarchicamente.Ulteriori informazioni:Eseguire una query ai dati gerarchici

Relazioni molti-a-molti

In una relazione di entità molti-a-molti, molti record dell'entità possono essere associati a molti altri record dell'entità. A differenza delle relazioni uno-a-molti, non esiste alcun campo di tipo lookup in entrambe le entità e pertanto nessuna gerarchia indicata. I record correlati che utilizzano una relazione molti-a-molti possono essere considerati di pari livello e la relazione è reciproca. Un relazione molti-a-molti può essere anche autoreferenziale. Poiché non esiste alcun comportamento a catena coinvolto nelle relazioni molti-a-molti, è possibile consentire che un singolo record abbia un riferimento a se stesso.

Si utilizza un'istanza della classe ManyToManyRelationshipMetadata quando si utilizza questo tipo di relazione di entità. Ogni relazione di entità ha un SchemaName univoco utilizzato per recuperare tale relazione.

La creazione di una relazione di entità molti-a-molti consente di creare una nuova entità intersecata in cui la proprietà IsIntersect è true. I record per questa entità tengono traccia di ogni singola relazione molti-a-molti. Non è possibile aggiungere attributi personalizzati alle entità intersecate.

Configurare i menu associati

Entrambi i tipi di relazioni di entità consentono la configurazione dei collegamenti di navigazione tra i record correlati. Utilizzare le proprietà AssociatedMenuConfiguration in ogni tipo di definizione della relazione di entità per specificare come si desidera che vengano visualizzati i collegamenti di navigazione in un modulo dell'entità.

Tali valori forniscono la configurazione predefinita per la relazione. È possibile utilizzare l'editor di moduli per sostituire tali opzioni per ogni modulo.Ulteriori informazioni:TechNet: Utilizzare l'editor di moduli: Modificare la struttura di navigazione

  • Behavior
    Offre le opzioni seguenti:

    • DoNotDisplay

    • UseCollectionName

    • UseLabel

  • Group
    Offre le opzioni seguenti:

    • Dettagli

    • Marketing

    • Vendite

    • Servizio

    Non è possibile aggiungere nuovi gruppi, ma è possibile modificare il testo visualizzato perché utilizzino l'editor di moduli.

  • Etichetta
    Se si seleziona AssociatedMenuBehavior.UseLabel, è necessario specificare un'etichetta personalizzata.

  • Ordine
    Il numero intero specificato per l'ordine controllerà la posizione relativa degli elementi di navigazione nel gruppo. Più basso è il valore, più in alto apparirà l'elemento in relazione ai valori degli altri elementi nel gruppo.

Vedere anche

Estendere il modello dei metadati
Messaggi di metadati delle relazioni di entità
Idoneità delle relazioni di entità
Comportamento della relazione di entità
Creare e recuperare le relazioni di entità
Esempio: Creare e recuperare le relazioni di entità
Esempio: Informazioni sulle relazioni di un'entità dump in un file
Personalizzare mapping di entità e attributi
Recuperare i record per le relazioni molti-a-molti utilizzando entità intersecate

© 2017 Microsoft. Tutti i diritti sono riservati. Copyright