Condividi tramite


Usare la visualizzazione TMDL in Power BI Desktop (anteprima)

visualizzazione TMDL consente di creare script, modificare e applicare modifiche agli oggetti modello semantico con un editor di codice moderno usando TMDL (Tabular Model Definition Language) in Power BI Desktop, migliorando l'efficienza dello sviluppo e fornendo visibilità completa e controllo sui metadati del modello semantico.

visualizzazione TMDL offre un'esperienza alternativa alla modellazione semantica attraverso il codice, anziché un'interfaccia grafica utente, ad esempio visualizzazione modello.

La visualizzazione TMDL offre i vantaggi seguenti:

  • Migliorata efficienza di sviluppo con un editor di codice avanzato che include funzionalità di ricerca e sostituzione, tasti di scelta rapida, modifiche su più righe e altro ancora.
  • aumentare facilmente la riutilizzabilità tramite lo scripting, la condivisione e il riutilizzo di script TMDL tra sviluppatori di modelli semantici. Ad esempio, usare un sito di SharePoint centralizzato per condividere facilmente oggetti modello semantici riutilizzabili, ad esempio tabelle di calendario o gruppi di calcolo di intelligenza temporale.
  • Ottenere maggiore controllo e trasparenza, che mostra tutti gli oggetti e le proprietà del modello semantico e consente modifiche agli elementi non disponibili nell'interfaccia utente di Power BI Desktop, ad esempio IsAvailableInMDX o DetailRowsDefinition.

Abilitare la funzionalità di anteprima

Per usare la visualizzazione TMDL , bisogna abilitare la funzionalità di anteprima. In Power BI Desktop selezionare File > Opzioni e impostazioni > Opzioni > Funzionalità di anteprima e selezionare la casella accanto a VISTA TMDL.

Eseguire lo script in TMDL

In Power BI Desktop, selezionare l'icona visualizzazione TMDL che si trova sul lato sinistro della finestra, come illustrato nell'immagine seguente.

screenshot della visualizzazione del linguaggio di definizione del modello tabulare T-M-D-L.

Quando la visualizzazione TMDL apre l'editor di codice è inizialmente vuoto. È possibile creare script per qualsiasi oggetto modello semantico, ad esempio una tabella, una misura o una colonna, selezionando gli oggetti dal riquadro dati e trascinandoli nell'editor di codice:

Schermata di trascinamento di un oggetto del modello semantico nell'area di disegno della vista T-M-D-L.

Quando si utilizza la visualizzazione TMDL e si trascina l'oggetto dal riquadro Dati, Power BI inserisce i metadati completi dell'oggetto nella scheda corrente sotto forma di TMDL, oppure apre una nuova scheda se quella corrente non è vuota, come uno script TMDL createOrReplace degli oggetti selezionati, come mostrato nell'immagine seguente:

Screenshot dei metadati T-M-D-L creati automaticamente.

In alternativa, è possibile fare clic con il pulsante destro del mouse su un oggetto nella visualizzazione Dati e selezionare Script TMDL in una nuova scheda o negli Appunti, come illustrato nell'immagine seguente:

Screenshot del clic con il pulsante destro del mouse su un oggetto nella visualizzazione Dati per fare in modo che Power BI crei codice di metadati T-M-D-L.

Consiglio

La selezione multipla è supportata premendo CTRL prima di creare script per gli oggetti nell'editor del codice di visualizzazione TMDL.

Editor di codice

Dopo aver creato uno script di un oggetto modello semantico o incollato uno script TMDL nell'editor di codice, è possibile usare le funzionalità complete dell'esperienza di codice offerte dall'editor di codice della vista TMDL. Le funzionalità dell'esperienza del codice consentono di esplorare i metadati del modello o di apportare modifiche che possono essere applicate successivamente al modello semantico.

Evidenziazione semantica

L'evidenziazione semantica è integrata nell'editor di codice, che migliora la leggibilità applicando colori diversi alle parti del codice in base al significato. Tale codifica a colori semplifica la comprensione della struttura e delle funzionalità del codice TMDL, come illustrato nell'immagine seguente.

Screenshot della codifica a colori e dell'evidenziazione semantica per il codice dei metadati T-M-D-L.

È anche possibile espandere o comprimere sezioni dello script TMDL, come illustrato nell'immagine seguente:

Screenshot delle sezioni di codice a scomparsa nell'editor di codice.

Completamento automatico

Il completamento automatico è integrato nell'editor di codice e offre suggerimenti intelligenti durante la digitazione. Il completamento automatico può velocizzare il flusso di lavoro, ridurre la probabilità di errori e aiutare a comprendere le opzioni del codice suggerendo dinamicamente valori o proprietà possibili prendendo in considerazione la posizione del cursore.

Screenshot del completamento automatico nell'editor di codice.

È anche possibile attivare la funzionalità di completamento automatico in qualsiasi posizione premendo CTRL+SPAZIO.

Suggerimenti

Il tooltip contestuale viene visualizzato al passaggio del mouse, fornendo informazioni su ogni oggetto o proprietà TMDL.

Screenshot di un tooltip di contesto visualizzato nell'editor di codice al passaggio del mouse, mostrando informazioni su un oggetto o una proprietà TMDL.

Azioni del codice

Quando il cursore si trova su un testo ondulato o selezionato, la visualizzazione TMDL visualizza un'icona a forma di lampadina che indica le azioni di codice disponibili, ad esempio la generazione di tag di derivazione o la correzione di errori di ortografia del nome della proprietà.

Screenshot della visualizzazione TMDL nell'editor di codice che mostra un'icona a forma di lampadina accanto a una linea ondulata, che indica Azioni del codice disponibili, come la generazione di tag di tracciamento.

Screenshot della visualizzazione TMDL nell'editor di codice che mostra un'icona a forma di lampadina accanto a una linea ondulata, indicando azioni disponibili come la correzione di errori nei nomi delle proprietà.

Formattazione del codice

Formattare il codice TMDL premendo MAIUSC + ALT + F oppure facendo clic sull'opzione Formato sulla barra multifunzione.

Screenshot dell'editor di codice con codice TMDL formattato usando l'opzione Formato nella barra multifunzione.

È possibile formattare il testo selezionato anche usando l'opzione "Formato selezione" nel menu di scelta rapida.

Screenshot dell'editor di codice con codice TMDL formattato con i tasti di scelta rapida MAIUSC + ALT +F.

Diagnostica degli errori

La diagnostica degli errori predefinita dell'editor di codice consente di identificare e risolvere i problemi evidenziando gli errori del linguaggio TMDL nell'editor di codice, con messaggi dettagliati che forniscono indicazioni sulla risoluzione dei problemi. Inoltre, nel riquadro problemi è disponibile un riepilogo degli errori, che consente di spostarsi facilmente nella posizione di errore nell'editor di codice, come illustrato nell'immagine seguente.

Screenshot della diagnostica degli errori nell'editor di codice.

Applicare modifiche al modello semantico

Quando sei pronto, puoi selezionare il pulsante Applica per effettuare lo script TMDL sul modello semantico e applicare le modifiche al codice TMDL.

Screenshot dell'applicazione dello script usando il pulsante Applica nell'editor di codice.

In caso di esito positivo, viene visualizzata una notifica e la modifica della modellazione viene applicata al modello semantico.

Screenshot del banner di operazione riuscita nell'editor di codice che indica che le modifiche sono state applicate correttamente.

In caso di errore, viene visualizzata una notifica di errore per indicare che le modifiche di modellazione non sono state applicate al modello semantico. Per visualizzare altre informazioni sull'errore, selezionare il collegamento Mostra dettagli nella notifica, che espande quindi il riquadro di output e visualizza i dettagli dell'errore.

screenshot del banner di errore nell'editor di codice che indica che le modifiche non sono state completate.

Nota

La vista TMDL modifica solo i metadati del modello semantico, senza aggiornare i dati o influire sul report. Se le modifiche richiedono un aggiornamento dei dati, ad esempio la modifica di un'espressione Di PowerQuery o di un'espressione di colonna calcolata, è necessario aggiornare manualmente la tabella o il modello per rendere effettive le modifiche. Inoltre, la rinominazione di un campo nella vista TMDL può interrompere gli elementi visivi all'interno del report che usano tale campo.

Anteprima delle modifiche apportate al modello semantico

La visualizzazione TMDL consente di visualizzare in anteprima le modifiche dello script visualizzando un'anteprima del modello semantico prima e dopo l'esecuzione dello script, visualizzata come diff del codice TMDL. L'anteprima delle modifiche dello script è particolarmente utile quando si copiano script da altre origini, consentendo di valutarne l'impatto prima di eseguirli sul modello semantico.

Selezionando il pulsante Anteprima viene visualizzata una differenza TMDL del modello semantico prima e dopo l'esecuzione dello script TMDL nella scheda aperta.

Screenshot del pulsante anteprima per visualizzare in anteprima le modifiche dello script.

Nel riquadro destro viene visualizzata una finestra affiancata, come illustrato nell'immagine seguente.

Screenshot del riquadro della visualizzazione di anteprima per le modifiche dello script in sospeso.

Le caselle rosse e verdi evidenziano le modifiche, con le caselle rosse indicate come linee rimosse o modificate e il verde che indica nuove linee.

Screenshot delle evidenziazioni in rosso e verde delle modifiche allo script in sospeso.

Nota

Il confronto non è direttamente rispetto allo script TMDL attualmente visualizzato, ma piuttosto un confronto semantico completo prima e dopo l'esecuzione dello script. Pertanto, alcune proprietà possono essere ordinate in modo diverso rispetto a quello visualizzato nella scheda, rispettando l'ordinamento predefinito della proprietà/oggetto TMDL.

L'anteprima è di sola lettura, ma è possibile continuare a modificare lo script. Per aggiornare l'anteprima dopo le modifiche, selezionare il pulsante Aggiorna anteprima , come illustrato nel banner nell'immagine seguente.

Screenshot del pulsante di anteprima dell'aggiornamento.

È presente una barra degli strumenti nell'angolo superiore destro della schermata di anteprima che consente di navigare tra tutte le differenze di codice, consentendo di passare tra diff inline o affiancata, visualizzare o nascondere le aree non modificate e chiudere la vista di anteprima.

Screenshot della barra degli strumenti per l'anteprima dello script.

Quando si visualizzano le modifiche apportate al modello semantico, tenere presenti alcune considerazioni:

  • La visualizzazione TMDL reimposta le configurazioni di visualizzazione per impostazione predefinita in ogni esecuzione dell'anteprima.
  • Un'anteprima funziona solo con una modifica TMDL valida. Gli script TMDL non validi non eseguono un'anteprima e viene visualizzato un errore nel riquadro Output.

Schede script TMDL

Nella visualizzazione TMDL è possibile avere più schede di script contemporaneamente, una delle quali può essere rinominata o rimossa.

Screenshot di più schede nella visualizzazione T-M-D-L.

I contenuti della visualizzazione delle schede TMDL viene salvato nel file di report quando si salva il report di Power BI Desktop, quindi è possibile continuare da dove si era interrotto la successiva apertura del file di report di Power BI Desktop. Quando si salva in un progetto Power BI (PBIP), ogni scheda di script viene salvata come file .tmdl nella cartella \TMDLScripts, come illustrato nell'immagine seguente.

Screenshot della struttura dei file per salvare le schede in un file di Power BI Desktop.

Consiglio

È possibile aprire e modificare gli script TMDL in Visual Studio Code e ricaricarli correttamente dopo il riavvio di Power BI Desktop.

I riquadri Problemi e Output visualizzano errori e messaggi specifici della scheda script attualmente selezionata e visualizzata. Il passaggio a un'altra scheda script TMDL aggiorna entrambi i riquadri con informazioni specifiche della scheda selezionata e attualmente visualizzata.

È possibile selezionare il pulsante cancella per svuotare i messaggi del riquadro Output.

Screenshot del pulsante

I messaggi vengono mantenuti solo per ogni sessione di Power BI Desktop, quindi il riavvio di Power BI Desktop cancella tutti i messaggi di output per tutte le schede degli script.

Richiesta di aggiornamento a livello di compatibilità

Il livello di compatibilità di un modello semantico di Power BI determina le funzionalità accessibili. La vista TMDL consente di aggiungere qualsiasi oggetto o proprietà di Analysis Services, anche se non è disponibile a livello di compatibilità corrente. Quando si applica una modifica che richiede un aggiornamento del livello di compatibilità, la vista TMDL fornisce una richiesta che indica l'oggetto o gli oggetti che richiedono l'aggiornamento.

Screenshot della visualizzazione TMDL in Power BI con un prompt di aggiornamento del livello di compatibilità. Il messaggio indica che il livello di compatibilità corrente di 1550 è inferiore al livello richiesto di 1601 per la proprietà FormatStringDefinition e chiede se aggiornare e riapplicare la modifica.

Ridenominazione degli oggetti con la visualizzazione TMDL

Per rinominare un oggetto all'interno della visualizzazione TMDL, è necessario realizzare uno script del suo elemento genitore. Ad esempio, la ridenominazione di una colonna richiede lo scripting della tabella, mentre la ridenominazione di una tabella richiede lo script dell'intero modello semantico. Altre informazioni sulla gerarchia del modello a oggetti tabulari sono disponibili nel documento seguente: Gerarchia del modello a oggetti tabulari.

Con la vista TMDL, la ridenominazione in blocco può essere eseguita in modo efficiente usando modelli di ricerca e sostituzione semplici. Ad esempio, è possibile rinominare tutte le colonne della tabella in lettere minuscole seguendo questa procedura.

Aprire la vista TMDL, creare uno script per la tabella che si intende modificare.

Premere CTRL+F per aprire la finestra di dialogo Trova e sostituisci, assicurarsi che l'opzione Espressione regolare sia abilitata.

Screenshot della visualizzazione TMDL in Power BI che mostra la funzionalità Trova e sostituisci usata. L'input Sostituisci è attivo, con un'opzione per passare tra le modalità Trova e Sostituisci, evidenziata nella barra degli strumenti sopra l'editor di codice.

Immettere i modelli seguenti nei campi trova e sostituisci e selezionare Sostituisci tutto.

Azione Modello/sostituzione
Trova (^\s+column\s+)(.+)
Sostituire $1\L$2

Screenshot di una schermata di configurazione del modello di dati di Power BI che mostra una definizione di tabella Product con due colonne: product (string) e productkey (int64), insieme alle relative proprietà dei metadati.

Eseguire lo script TMDL per rinominare immediatamente tutte le colonne della tabella in lettere minuscole:

Screenshot di una tabella del prodotto Power BI che mostra 14 colonne, tra cui marchio, categoria, colore, produttore, prodotto, productkey, sottocategoria, costo unitario, prezzo unitario e attributi di peso.

Si noti che il nome della colonna sarà diverso dalla proprietà sourceColumn.

Screenshot di una configurazione del modello di dati di Power BI che mostra la definizione di colonna productKey con tipo di dati int64, in cui viene eseguito il mapping di sourceColumn a ProductKey nei dati di origine.

La sincronizzazione tra la tabella del modello semantico e la query di Power Query si basa su sourceColumn, mantenendo i nomi indipendenti. Quando si apre l'editor di Power Query, verranno visualizzati i nomi di colonna corrispondenti a sourceColumn, anziché il nome della colonna del modello. Inoltre, la ridenominazione di una colonna nell'interfaccia utente non aggiungerà automaticamente un passaggio di ridenominazione alla query finché sourceColumn e il nome della colonna non sono identici.

Screenshot dell'editor di query di Power BI che mostra i dati del prodotto con le colonne ProductKey, Codice prodotto, Prodotto e Produttore, con 16 query visibili nel riquadro di spostamento.

Visualizzazione TMDL e progetto di Power BI

Quando si salva il lavoro come progetto di Power BI (PBIP), si ottiene l'accesso ai metadati di definizione del modello semantico come file TMDL , fornendo un'esperienza utile di controllo del codice sorgente e di co-sviluppo, consentendo allo stesso tempo di apportare modifiche al modello semantico all'esterno di Power BI Desktop. Tuttavia, se si modificano i file TMDL all'interno del PBIP, è necessario riavviare Power BI Desktop per ricaricare tali modifiche. Al contrario, la vista TMDL segue un modello mentale di scripting, consentendo di applicare in modo efficiente le modifiche direttamente al modello semantico da modificare in Power BI Desktop usando TMDL, indipendentemente dal fatto che il formato di file sia PBIX o PBIP.

È possibile integrare facilmente entrambe le esperienze. Ad esempio, è possibile aggiornare la definizione TMDL in PBIP per modifiche rapide senza avviare Power BI Desktop e usare la visualizzazione TMDL quando Power BI Desktop è già aperto per implementare in modo efficiente una serie di modifiche al modello semantico usando TMDL. Entrambi gli approcci offrono un'esperienza di codifica TMDL completa e coerente.

Casi d'uso comuni per la visualizzazione TMDL

scenario: ho bisogno di riutilizzare o condividere una tabella del modello semantico con la definizione completa, incluse le colonne, l'espressione di Power Query, la configurazione di ordinamento, e altri elementi in un altro modello semantico.

Soluzione: Aprire il modello semantico con la tabella, crearne uno script usando la vista TMDL. Copiare lo script nell'altra finestra di Power BI Desktop, aprire la scheda Visualizzazione TMDL e applicare lo script.



Scenario : Ho denominato tutte le tabelle con i prefissi "dim_" o "fact_". Vorrei rimuovere questi prefissi senza aggiornare manualmente ognuna delle oltre 100 tabelle.

Soluzione: Aprire la vista TMDL, creare lo script del modello semantico, cercare il prefisso (sono supportate espressioni regolari) e sostituirlo con un testo vuoto.



Scenario: Ho bisogno di creare una prospettiva nel mio modello semantico per utilizzare la funzionalità di oggetti visivi personalizzati . Tuttavia, non è possibile crearlo o modificarlo usando l'interfaccia grafica di Power BI Desktop.

Soluzione: Aprire la visualizzazione TMDL, creare una nuova scheda vuota (o usare lo script da una prospettiva esistente), quindi creare o modificare la prospettiva usando TMDL. Questo metodo si applica anche ad altri metadati del modello semantico che non dispongono di un'interfaccia grafica, ad esempio traduzioni, espressioni di riga di dettaglio e altre.

createOrReplace
      perspective SalesView
        perspectiveTable Sales
            perspectiveMeasure 'Sales Amount'
            perspectiveMeasure 'Sales Qty'
            perspectiveColumn Quantity
            perspectiveColumn 'Amount'


Scenario: Ho bisogno di modificare l'espressione di Power Query della mia tabella senza avviare un aggiornamento.

Soluzione: Creare script per la tabella, modificare l'espressione di Power Query e applicare le modifiche. La visualizzazione TMDL non richiede l'aggiornamento dei dati.



Scenario: Ho bisogno di cambiare la modalità di archiviazione della mia tabella da DirectQuery a Import e viceversa

Soluzione: Creare uno script per la tabella, aggiornare la modalità di partizione e applicare le modifiche.



Scenario: Ho bisogno di eseguire il backup della definizione del modello semantico prima di fare modifiche importanti e per ripristinare facilmente una definizione precedente, se necessario.

Soluzione: Creare uno script per il modello semantico o parti specifiche di cui eseguire il backup, apportare le modifiche in altre viste e, se necessario, tornare alla visualizzazione TMDL per ripristinare i metadati precedenti eseguendo lo script salvato.



Considerazioni e limitazioni

La visualizzazione TMDL è attualmente in anteprima, quindi tenere presenti le limitazioni seguenti:

  • È possibile usare la visualizzazione TMDL per modificare qualsiasi oggetto o proprietà all'interno di un modello semantico. Tuttavia, le modifiche incomplete o non corrette possono causare comportamenti imprevisti. Per altre indicazioni su queste operazioni, vedere l'articolo Creazione di modelli.
  • Il riquadro comandi visualizza alcuni comandi attualmente non supportati.
  • La configurazione iniziale dell'integrazione Git dall'area di lavoro non includerà gli script di visualizzazione TMDL salvati nel modello semantico pubblicato. Per saperne di più, consultare l'articolo sull'integrazione di Git in Fabric.
  • Non è possibile creare script per gruppi di Esplora modelli, ad esempio Misure, Colonne e così via.

Gli articoli seguenti descrivono altre informazioni su TMDL e sui relativi usi.