Condividi tramite


Mapping dei campi con relazioni nei flussi di dati standard

Nel flusso di dati standard è possibile eseguire facilmente il mapping dei campi dalla query del flusso di dati alle tabelle Dataverse. Tuttavia, se la tabella Dataverse contiene campi di ricerca o relazione, è necessario prendere in considerazione ulteriori considerazioni per assicurarsi che questo processo funzioni.

Qual è la relazione e perché è necessario?

Se si proviene da un background di sviluppo di database, si ha familiarità con il concetto di relazione tra tabelle. Tuttavia, molti utenti dei servizi di Microsoft Power Platform non provengono da tale background. È possibile chiedersi qual è la relazione o perché è necessario creare una relazione tra tabelle.

Le tabelle e la relativa relazione sono concetti fondamentali della progettazione di un database. Per apprendere tutte le informazioni sulle relazioni non rientra nell'ambito di questo articolo. Tuttavia, verrà discussa in modo generale qui.

Si supponga di voler archiviare informazioni sui clienti e i relativi dettagli, tra cui l'area, in Dataverse. È possibile mantenere tutti gli elementi in una tabella. La tabella può essere denominata Customers e può contenere campi, ad esempio CustomerID, Name, Birthdate e Region. Si supponga ora di avere un'altra tabella che contiene anche le informazioni dell'archivio. Questa tabella può includere campi, ad esempio ID dello Store, Nome e Area. Come si può notare, l'area viene ripetuta in entrambe le tabelle. Non c'è un'unica posizione in cui è possibile ottenere tutte le aree; alcuni dei dati dell'area si trovano nella tabella Customers e alcuni nella tabella Stores. Se si compila un'applicazione o un report da queste informazioni, è sempre necessario combinare le informazioni delle due aree in una sola.

Due tabelle senza relazione.

Le operazioni eseguite nella procedura di progettazione del database sono creare una tabella per Region in scenari come quello descritto in precedenza. Questa tabella Region include un ID area, un nome e altre informazioni sull'area. Le altre due tabelle (Customers e Stores) avranno collegamenti a questa tabella usando un campo (che può essere l'ID area se è presente l'ID in entrambe le tabelle o Name se è sufficientemente univoco per determinare un'area). Ciò significa avere una relazione dalla tabella Stores e Customers alla tabella Region.

Relazioni che usano un campo di ricerca.

In Dataverse esistono diversi modi per creare una relazione. Un modo consiste nel creare una tabella e quindi creare un campo in una tabella che rappresenta una relazione (o una ricerca) a un'altra tabella, come descritto nella sezione successiva.

Che cosa sono i campi di ricerca o di relazione?

In Dataverse è possibile avere un campo definito come campo di ricerca, che punta a un'altra tabella.

Campo di ricerca.

Nell'immagine precedente il campo Region è un campo di ricerca in un'altra tabella denominata Region Lookup. Per altre informazioni sui diversi tipi di relazioni, vedere Creare una relazione tra tabelle.

Quando il mapping dei campi non mostra i campi della relazione

Se è stato creato un campo di ricerca in una tabella che punta a un'altra tabella, tale campo potrebbe non essere visualizzato nel mapping del flusso di dati. Ciò è dovuto al fatto che l'entità di destinazione coinvolta nella relazione richiede la definizione di un campo Chiave. Questa procedura consigliata assicura quindi che il campo sia mappabile nei mapping di tabella del flusso di dati.

Impostazione del campo Chiave nella tabella

Per impostare il campo chiave nella tabella, passare alla scheda Chiavi e aggiungere una chiave a un campo con valori univoci.

Impostare un campo chiave.

Dopo aver impostato il campo chiave, è possibile visualizzare il campo nel mapping del flusso di dati.

Campo chiave visualizzato in Mapping dei campi.

Limitazioni note

  • Il mapping ai campi di ricerca polimorfica non è attualmente supportato.
  • Il mapping a un campo di ricerca a più livelli, una ricerca che punta al campo di ricerca di un'altra tabella, non è attualmente supportata.
  • I campi di ricerca per le tabelle standard, a meno che non contengano campi chiave alternativi come descritto in questo documento, non verranno visualizzati nella finestra di dialogo Tabelle mappa.
  • I flussi di dati non garantiscono un ordine di caricamento corretto durante il caricamento dei dati nelle tabelle configurate come strutture di dati gerarchiche.
  • L'ordine di esecuzione delle query o l'ordine di caricamento nelle tabelle di Dataverse non è garantito. È consigliabile separare le tabelle figlio e padre in due flussi di dati e aggiornare prima il flusso di dati contenente gli artefatti figlio.
  • Il mapping ai campi la cui proprietà IsValidForCreate è impostata su false non è supportata, ad esempio il campo Account dell'entità Contact.