Dataverse: Tabelle e colonne
Guida completa alla struttura dati di Microsoft Dataverse, con focus su tipi di colonne, lookup multipli e tabelle gerarchiche.
Introduzione a Microsoft Dataverse
Microsoft Dataverse è la base dati centrale della Power Platform, progettata per archiviare e gestire in modo sicuro le informazioni utilizzate da app, automazioni e analisi aziendali. Ogni soluzione costruita su Dataverse si fonda su un insieme di tabelle che rappresentano entità logiche (come account, contatti, opportunità) e su colonne che descrivono le proprietà di ciascuna entità.
La modellazione corretta di tabelle e colonne è fondamentale per garantire prestazioni, sicurezza e riutilizzabilità della soluzione. Dataverse fornisce strumenti grafici nel Power Apps Maker Portal per creare, gestire e collegare tabelle, oltre a un ricco set di API per sviluppatori.
Struttura delle tabelle in Dataverse
Ogni tabella in Dataverse rappresenta una collezione di record omogenei. Le tabelle possono essere di tipo standard (fornite da Microsoft), estese (derivate da applicazioni Dynamics 365 o di terze parti) o personalizzate (create ad hoc dagli implementatori). Le tabelle standard, come Account e Contact, non possono essere eliminate, ma possono essere estese tramite nuove colonne o relazioni.
Ogni tabella è dotata di metadati che descrivono il comportamento, le relazioni e le regole di sicurezza associate. Le personalizzazioni vengono salvate in soluzioni Dataverse e possono essere distribuite tra ambienti come sandbox, sviluppo e produzione.
Tipi di tabelle
- Tabelle standard: fornite da Microsoft, incluse in Dataverse o in moduli Dynamics 365.
- Tabelle personalizzate: create per esigenze specifiche di business.
- Tabelle di sistema: utilizzate internamente per la gestione della piattaforma (non modificabili).
- Tabelle virtuali: connesse a origini dati esterne tramite OData o connettori, senza duplicazione fisica dei dati.
Colonne e tipi di dati
Le colonne (o campi) definiscono le proprietà di ogni record. Ogni colonna ha un nome logico, un’etichetta visualizzata e un tipo di dati. Dataverse supporta una vasta gamma di tipi di colonne, dai semplici numerici ai complessi come immagini o lookup multipli. Le colonne possono essere obbligatorie, facoltative o calcolate e possono includere regole di business per la validazione.
Principali tipi di colonne
| Tipo | Descrizione | Esempio d’uso |
|---|---|---|
| Testo | Campo di testo singola o multipla linea | Nome, Descrizione |
| Numero | Intero, decimale o valuta | Quantità, Prezzo, Punteggio |
| Data/ora | Gestione di date locali o UTC | Data creazione, Scadenza |
| Scelta | Valori selezionabili da un elenco predefinito (locali o globali) | Stato, Categoria |
| Lookup | Collegamento ad un record di un’altra tabella | Cliente (lookup su Account o Contatto) |
| Colonna immagine/file | Gestione di contenuti multimediali associati ai record | Foto profilo, Documento allegato |
Le colonne di tipo Choice possono essere definite come globali per garantire coerenza tra tabelle diverse. Le colonne Lookup offrono la possibilità di creare relazioni tra entità e supportano anche lookup multipli, dove la relazione può puntare a più tabelle di destinazione.
Lookup multipli e relazioni tra tabelle
Le relazioni in Dataverse consentono di definire connessioni tra tabelle. Esistono tre tipi principali di relazioni:
- 1:N (uno-a-molti): una riga di una tabella può essere associata a più righe di un’altra.
- N:1 (molti-a-uno): più righe fanno riferimento a una singola riga di un’altra tabella.
- N:N (molti-a-molti): relazione simmetrica tramite una tabella di intersezione.
I lookup multipli rappresentano un’evoluzione dei classici lookup e consentono di puntare a più tabelle, ad esempio una colonna “Cliente” che può fare riferimento sia a “Account” sia a “Contatto”. Questa flessibilità riduce la necessità di mantenere più colonne e semplifica l’architettura dati.
Ogni relazione può essere configurata in termini di comportamento (parentale, referenziale o personalizzato), determinando come vengono propagate le operazioni di eliminazione, assegnazione o condivisione tra tabelle correlate.
Tabelle gerarchiche e visualizzazioni
Dataverse permette di rappresentare relazioni gerarchiche tra record della stessa tabella. Attivando le Hierarchy Settings, è possibile visualizzare le relazioni parent-child in una struttura ad albero, utile per scenari come organizzazioni, cataloghi o strutture di prodotto.
Per configurare una gerarchia, occorre:
- Creare una relazione autoreferenziale N:1 nella tabella.
- Definire un modulo “Quick View” per visualizzare i dati chiave del record padre.
- Abilitare la gerarchia nelle impostazioni della tabella.
Una volta configurata, la gerarchia può essere esplorata graficamente nelle app model-driven tramite un controllo dedicato.
Best practice di modellazione dati
Una buona modellazione dati in Dataverse garantisce prestazioni, manutenzione e sicurezza. Tra le pratiche consigliate:
- Utilizzare colonne globali per valori condivisi tra tabelle.
- Limitare il numero di lookup per evitare complessità eccessiva nelle query.
- Usare relazioni gerarchiche solo quando strettamente necessarie.
- Documentare tabelle, relazioni e regole di business nelle soluzioni.
- Verificare la propagazione delle operazioni nelle relazioni parentali per evitare cancellazioni indesiderate.
- Testare la configurazione con dati realistici prima del rilascio in produzione.
Per approfondire, consulta la documentazione ufficiale su Microsoft Dataverse e le pagine tecniche su componenti di app model-driven.
Domande frequenti su tabelle e colonne Dataverse
Qual è la differenza tra tabelle standard e personalizzate?
Le tabelle standard sono fornite da Microsoft e non possono essere eliminate; quelle personalizzate vengono create per esigenze specifiche del cliente e sono completamente modificabili.
Posso collegare più tabelle con un’unica colonna lookup?
Sì, grazie ai lookup multipli introdotti in Dataverse è possibile collegare una singola colonna a più tabelle di destinazione, semplificando la modellazione dei dati.
Come si attiva una gerarchia in una tabella?
Basta creare una relazione autoreferenziale N:1, definire un modulo Quick View e abilitare l’opzione “Hierarchy Settings” nelle proprietà della tabella.
Scopri di più su Dataverse e la Power Platform
Approfondisci le tecnologie Microsoft Power Platform con le nostre guide dettagliate e scopri come modellare dati e automazioni aziendali in modo efficace.