Creare elementi di calcolo dinamici

Completato

I calcoli statici e gli oggetti visivi possono influire negativamente sulle prestazioni dei report, ma è possibile aggiungere flessibilità al modello semantico usando gruppi di calcolo, stringhe di formato dinamico e parametri di campo. Queste funzionalità rendono i report scalabili e semplici da usare semplificando i calcoli e riducendone le visualizzazioni.

Gruppi di calcolo

I gruppi di calcolo consentono di definire calcoli riutilizzabili che si applicano a più misure, riducendo la ridondanza e semplificando la manutenzione dei modelli semantici. È possibile usare i gruppi di calcolo per semplificare calcoli complessi, ad esempio funzioni di Business Intelligence per le gerarchie temporali, nell'intero modello.

Si supponga di dover calcolare i dati di vendita da inizio anno (YTD), da inizio trimestre (QTD) e da inizio mese (MTD). Invece di creare misure separate per ogni funzione di Business Intelligence per le gerarchie temporali, si decide di usare i gruppi di calcolo per semplificare questi calcoli.

Per questo esempio è disponibile un gruppo di calcolo denominato Time Intelligence con gli elementi di calcolo seguenti.

   Year-to-Date (YTD) = 
   CALCULATE(
       SELECTEDMEASURE(),
       DATESYTD('Date'[Date])
   )
//
   Quarter-to-Date (QTD) = 
   CALCULATE(
       SELECTEDMEASURE(),
       DATESQTD('Date'[Date])
   )
//
   Month-to-Date (MTD) = 
   CALCULATE(
       SELECTEDMEASURE(),
       DATESMTD('Date'[Date])
   )

È ora possibile usare il gruppo di calcolo nel riquadro filtro, un filtro dei dati, un oggetto visivo e anche come riferimento in una misura. I diversi elementi di calcolo (YTD, QTD, MTD) vengono visualizzati automaticamente e consentire il filtro o l'espansione nell'oggetto visivo.

Nell'immagine seguente è presente una matrice che include i tre anni fiscali con le vendite totali per YTD, QTD e MTD. È anche presente un filtro dei dati per il gruppo di calcolo per consentire agli utenti di scegliere tra le varie opzioni. L'oggetto visivo è configurato nel modo seguente:

  • Righe: campo Date[Year]
  • Colonne: gruppo di calcolo Time Calc
  • Valori: misura Total Sales

Screenshot dell'oggetto visivo matrice che mostra la misura Total Sales relativa a YTD, QTD e MTD per ogni anno.

Senza i gruppi di calcolo, è necessario creare misure YTD, QTD e MTD per ogni calcolo necessario, ad esempio Total Sales, Profit, Target e così via. È invece possibile creare gli oggetti visivi e aggiungere il gruppo di calcolo e le altre misure.

La natura dinamica e riutilizzabile dei gruppi di calcolo li rende incredibilmente efficace ai fini della scalabilità dei modelli semantici.

Suggerimento

Vedere la documentazione per altre informazioni su come creare gruppi di calcolo in Power BI.

Parametri di campo

I parametri di campo consentono di creare report interattivi permettendo agli utenti di selezionare campi o misure diversi in modo dinamico. Questa funzionalità è utile per la creazione di report personalizzabili in cui gli utenti possono scegliere i dati da visualizzare.

In questo scenario è stato creato un nuovo parametro per includere i campi Product, Category e Color. Si userà ora la misura Total Sales e si aggiungerà il parametro in un oggetto visivo anziché in questi singoli campi. Oltre al parametro, si aggiungerà anche un filtro dei dati in modo che gli utenti possano spostarsi tra i campi selezionati. L'immagine seguente mostra un istogramma per Total Sales in base a Category configurato con il parametro nell'asse X e Total Sales nell'asse Y. È anche presente un filtro dei dati per spostarsi dinamicamente tra Total Sales in base a Product, Category e Color.

Screenshot dell'istogramma e del filtro dei dati con la misura Total Sales in base a Product.

Prima dei parametri di campo, gli sviluppatori di report possono creare un oggetto visivo per Total Sales in base a Product e ripetere l'operazione per Category e Color. Gli utenti possono spostarsi tra i diversi oggetti visivi in un'esperienza simile sovrapponendo gli oggetti visivi e aggiungendo segnalibri e pulsanti. Tuttavia, l'aggiunta di più oggetti visivi a una pagina del report potrebbe influire sulle prestazioni.

Suggerimento

Vedere la documentazione per altre informazioni su come consentire ai lettori di report di usare i parametri di campo per cambiare gli oggetti visivi.

Stringhe di formato dinamico

Le stringhe di formato dinamico consentono di modificare il formato di una misura in base alle condizioni, migliorando la leggibilità e la presentazione dei dati.

Si supponga di voler visualizzare i dati delle vendite in formati diversi in base al relativo valore:

  • Milioni (M) per vendite superiori a 1.000.000.
  • Migliaia (K) per le vendite comprese tra 1.000 e 1.000.000.
  • Valore esatto per le vendite inferiori a 1.000.

Il codice seguente usa la funzione SWITCH per applicare i diversi formati in base all'importo delle vendite:

Total Sales with Format = 
SWITCH(
    TRUE(),
    [Total Sales] > 1000000, FORMAT([Total Sales], "$#,##0,,M"),
    [Total Sales] > 1000, FORMAT([Total Sales], "$#,##0,K"),
    FORMAT([Total Sales], "$#,##0")
)

Le stringhe di formato dinamico semplificano la presentazione dei dati, riducendo la necessità di più calcoli o oggetti visivi, e possono essere usate con i gruppi di calcolo per ridurre la complessità e la manutenzione per il codice.

Suggerimento

Vedere la documentazione per altre informazioni su come creare stringhe di formato dinamico per le misure.