Creazione di una relazione uno-a-molti tra tabelle

Completato

Questa unità mostra come implementare relazioni uno-a-molti in Microsoft Dataverse con i seguenti passaggi.

Suggerimento

Le relazioni uno-a-molti o molti-a-uno rappresentano lo stesso tipo di relazione se la si considera da un lato o dall'altro.

Relazione uno-a-molti

  1. Accedere a Power Apps Maker Portal

  2. Selezionare l'ambiente in cui lavorare usando l'elenco a discesa nella barra dei menu in alto.

  3. Selezionare Tabelle nel pannello di spostamento laterale per visualizzare l'elenco delle tabelle disponibili.

    Screenshot di tutte le tabelle disponibili in Dataverse.

  4. Selezionare una tabella in cui creare una relazione con un'altra tabella.

  5. Nella schermata di visualizzazione Tabelle risultante, cercare il riquadro Schema e selezionare Relazioni per visualizzare le relazioni della tabella.

    Screenshot del riquadro Schema con la visualizzazione Relazioni evidenziata.

  6. Nella schermata di visualizzazione Relazioni è possibile vedere tutte le relazioni attuali della tabella. Le relazioni possono essere di tipo uno-a-molti, molti-a-uno o molti-a-molti. Per creare una nuova relazione, selezionare + Nuova relazione nella barra dei comandi.

    Screenshot del pulsante Nuova relazione che mostra i tre diversi tipi disponibili per la creazione.

  7. Successivamente selezionare un'opzione di relazione molti-a-uno, uno-a-molti o molti-a-molti. In questo esempio, si seleziona una relazione uno-a-molti.

  8. Viene visualizzata una finestra sul lato destro della schermata con il nome del tipo di relazione scelto (uno-a-molti in questo caso), insieme a un campo a discesa per scegliere la tabella correlata.

    Suggerimento

    In entrambi i casi, verrà creata una colonna di ricerca nella tabella primaria.

    Screenshot del riquadro Relazioni che mostra l'opzione a discesa per la tabella correlata.

    Il campo Tabella (molte) correlata permette di scegliere la tabella con cui creare la relazione.

  9. Dopo aver selezionato una tabella, Dataverse crea automaticamente una colonna di ricerca e tutto il necessario per correlare questa tabella alla tabella padre.

    Screenshot della relazione completata.

  10. Selezionare Fine per salvare la nuova relazione.

  11. Dopo il salvataggio, la nuova relazione viene visualizzata nell'elenco Relazioni.

A questo punto, è possibile usare la relazione e la ricerca nella soluzione aziendale. Sarà disponibile una colonna di ricerca che mostra tutte le numerose righe (figlio).

Comportamenti di una relazione uno-a-molti

Alcune tabelle non hanno senso da sole e in genere vengono create per supportare altre tabelle e processi. Di solito includono una colonna di ricerca obbligatoria per il collegamento alla tabella primaria che supportano. Ad esempio, un requisito aziendale potrebbe essere che la riga Progetto deve obbligatoriamente avere un account correlato. In questo caso, la tabella Progetto avrà una relazione molti-a-uno con la tabella Account e la colonna di ricerca dell'account sarà impostata su Obbligatorio per l'azienda.

Oltre a definire il modo in cui le righe possono essere correlate ad altre righe, le relazioni di tabella uno-a-molti forniscono anche i metadati per rispondere alle domande seguenti:

  • Quando si elimina una riga, è necessario eliminare anche tutte le righe correlate?

  • Quando si assegna una riga a un nuovo proprietario, è necessario assegnare anche tutte le righe correlate?

  • Come si può ottimizzare il processo di inserimento dei dati quando si crea una nuova riga correlata nel contesto di una riga esistente?

  • In che modo le persone che visualizzano una riga possono visualizzare le righe correlate?

È possibile usare il comportamento delle relazioni uno-a-molti per definire il modo in cui le righe lato molti di una relazione di tabella sono influenzate da operazioni quali assegnazione, condivisione ed eliminazione sulla riga padre. I comportamenti delle relazioni sono importanti perché aiutano a garantire l'integrità dei dati.

Comportamenti

Esistono diversi tipi di comportamenti che possono essere applicati quando si verificano determinate azioni:

Comportamento Descrizione
Esegui a catena su tutti i record Eseguire l'azione su tutte le righe della tabella correlata.
Esegui a catena sui record attivi Eseguire l'azione su tutte le righe della tabella correlata attiva.
Esegui a catena sui record di proprietà dell'utente Eseguire l'azione su tutte le righe della tabella correlata di proprietà dello stesso utente della riga della tabella primaria.
Non eseguire a catena Nessuna azione da eseguire.
Rimuovi collegamento Rimuovere il valore di ricerca per tutte le righe correlate.
Limita Impedisce l'eliminazione della riga della tabella primaria quando esistono righe della tabella correlata.

Azioni

Le azioni controllate dai comportamenti sono:

Colonna Descrizione Comportamenti
Eliminazione Quali dovranno essere le conseguenze dell'eliminazione della riga della tabella primaria? Esegui a catena su tutti i record, Rimuovi collegamento, Limita
Assegnazione Quali dovranno essere le conseguenze dell'assegnazione della riga della tabella primaria a un altro utente? Esegui a catena su tutti i record, Esegui a catena sui record attivi, Esegui a catena sui record di proprietà dell'utente, Non eseguire a catena
Ricollegamento Quali dovranno essere le conseguenze della modifica del valore di ricerca di una tabella correlata in una relazione padre-figlio? Esegui a catena su tutti i record, Esegui a catena sui record attivi, Esegui a catena sui record di proprietà dell'utente, Non eseguire a catena
Condivisione Quali dovranno essere le conseguenze della condivisione della riga della tabella primaria? Esegui a catena su tutti i record, Esegui a catena sui record attivi, Esegui a catena sui record di proprietà dell'utente, Non eseguire a catena
Annullamento della condivisione Quali dovranno essere le conseguenze dell'annullamento della condivisione di una riga della tabella primaria? Esegui a catena su tutti i record, Esegui a catena sui record attivi, Esegui a catena sui record di proprietà dell'utente, Non eseguire a catena
Unione Quali dovranno essere le conseguenze dell'unione di una riga della tabella primaria? Esegui a catena su tutti i record, Non eseguire a catena
Visualizzazione rollup Qual è il comportamento desiderato della visualizzazione rollup associata a questa relazione? Esegui a catena su tutti i record, Esegui a catena sui record attivi, Esegui a catena sui record di proprietà dell'utente, Non eseguire a catena

Nota

I comportamenti operano solo su righe correlate quando l'azione viene eseguita sulla riga padre, non per azioni eseguite sulle righe correlate, ovvero i comportamenti operano nella direzione uno-a-molti ma non nella direzione molti-a-uno.

Tipi di comportamento

Per semplificare l'impostazione dei comportamenti delle relazioni, Microsoft ha raggruppato i comportamenti in tipi:

Tipo Descrizione
Padre-figlio Qualsiasi azione eseguita su una riga della tabella padre viene eseguita anche sulle righe della tabella figlio correlata.
Referenziale, Eliminazione vincolata È possibile accedere a qualsiasi riga correlata. Le azioni intraprese sulla riga padre non verranno applicate alla riga figlio, ma la riga padre non può essere eliminata se esiste la riga figlio.
Referenziale, Rimuovi collegamento È possibile accedere a qualsiasi riga correlata e le azioni eseguite su una delle righe non influiranno sull'altra. Questa è l'impostazione predefinita.
Personalizzato È possibile selezionare il comportamento per ogni possibile azione.

Screenshot della modifica della colonna primaria.

Mapping di una relazione uno-a-molti

È possibile eseguire il mapping di colonne tra tabelle che hanno una relazione uno-a-molti. Ciò permette di impostare valori predefiniti per una riga creata nel contesto di un'altra riga. I mapping permettono di semplificare il processo di immissione dei dati quando gli utenti creano una nuova riga correlata dal modulo della riga padre in un'app basata su modello.

Ad esempio, quando si apre una riga di un account e si crea un nuovo contatto correlato, questa funzionalità precompilerà il modulo di contatto con le informazioni selezionate dall'account quali indirizzo dell'ufficio, numero di telefono principale, ecc.

Considerazioni sul mapping:

  • Sono una funzionalità di un'app basata su modello.

  • Si applica solo alle relazioni uno-a-molti.

  • Si applica solo quando si crea una nuova riga correlata dal contesto del modulo della riga padre.

  • Non applicare se la riga correlata viene creata e collegata selezionando una colonna di ricerca.

  • I valori nelle colonne della riga padre vengono copiati nella riga figlio.

  • Il mapping può essere eseguito solo sulle colonne con lo stesso tipo di dati.

  • Gli utenti possono sovrascrivere i valori prima della creazione della riga.

  • La copia dei valori viene eseguita una sola volta al momento della creazione e non avrà luogo alcuna sincronizzazione futura.

Nota

Usare la versione classica di Esplora soluzioni per configurare i mapping per una relazione.

Relazioni gerarchiche

Per alcune tabelle standard in Dataverse, come ad esempio Account, le gerarchie sono già definite. Le righe in una gerarchia possono essere visualizzate visivamente nelle app basate su modello.

Screenshot della relazione gerarchica.

L'opzione per definire una relazione gerarchica è disponibile solo per le relazioni autoreferenziali. Una relazione autoreferenziale è una relazione uno-a-molti tra una tabella e se stessa in cui la stessa tabella è definita sia come tabella primaria che come tabella correlata.

Screenshot della creazione di una relazione gerarchica.

Per altre informazioni sulle relazioni di tabella, consultare Relazioni di tabella.