Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Questo tutorial discuterà della scelta o del filtraggio di una data specifica nei report di dati di LuckyTemplates . Il materiale utilizzato in questo tutorial proviene dal . Imparerai come risolvere il problema e comprendere i metodi utilizzati. Puoi guardare il video completo di questo tutorial in fondo a questo blog.

Sommario

Comprensione del report sui dati in LuckyTemplates

Questo è il report dei dati di esempio che verrà utilizzato. Consiste in una tabella visiva e due affettatrici.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

L'obiettivo è avere una selezione della data sulla colonna Data nell'affettatrice. Significa che una volta selezionata una data nell'affettatrice, la visualizzazione della tabella mostrerà i giorni precedenti con un intervallo di 7 giorni. In questo esempio, i dati selezionati nell'affettatrice Data sono il 12 maggio 2007.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

La tabella dovrebbe mostrare il precedente con una differenza di 7 giorni tra le date.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

È inoltre necessario creare un parametro what if per mostrare dinamicamente il numero di date in base alla selezione. Se selezioni 3 , l'oggetto visivo della tabella dovrebbe mostrare solo 3 date.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Ricreare la tabella e le visualizzazioni

Il primo passaggio consiste nel creare un parametro what if . All'interno del desktop di LuckyTemplates passare alla scheda Modellazione e selezionare Nuovo parametro .

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Aggiungi un nome al parametro e imposta Tipo di dati su Numero intero . Quindi, imposta i valori minimo, massimo, incremento e predefinito come mostrato nell'immagine sottostante. Aggiungi l'affettatrice alla pagina selezionando la casella.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Dopo aver premuto OK, verrà generato uno slicer. Converti l'affettatrice in un elenco facendo clic sul pulsante a discesa e selezionando Elenco.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

La prossima cosa da fare è creare una tabella di date duplicata che verrà utilizzata come tabella di date disconnesse. Vai all'editor di query di potenza e duplica Dates .

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Quindi, rinomina il DisDate duplicato e fai clic su Chiudi e applica.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Caricamento delle tabelle della data e dei filtri dei dati in LuckyTemplates

Una volta caricata la tabella duplicata nel modello LuckyTemplates, creare un'affettatrice con la colonna della data dalla tabella della data disconnessa. Apri la tabella DisDate e trascina Data nell'area di disegno.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Quindi, trasforma la visualizzazione in un'affettatrice.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Successivamente, modifica il formato dell'affettatrice in List . La visualizzazione sarà quindi simile a questa.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Successivamente, duplica l'affettatrice e modifica il campo dati con la colonna Data dalla tabella Date.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

La selezione di una data dall'affettatrice Date limiterà il numero di righe visibili della tabella Sales nella matrice. Se selezioni il 14 marzo 2005, la matrice mostrerà solo quella data.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Il risultato e la misura non funzioneranno se utilizzi questa configurazione. Il motivo è che ancor prima che la misura inizi a funzionare, l'accesso alla matrice è già stato filtrato. Per quei valori filtrati, non sarai in grado di generare le date con intervalli.

Creazione di misure per gli affettatrici di selezione

È necessario creare un'impostazione di date che non filtri direttamente la matrice quando una selezione viene posizionata su un'affettatrice. Il filtraggio della matrice deve avvenire attraverso il codice DAX e non direttamente dagli slicer. Quindi, se selezioni una data dall'affettatrice DisDate, non si verificheranno modifiche nella matrice.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Ciò accade perché la tabella DisDate non ha una relazione con la tabella Date. Ecco perché la tabella disconnessa è essenziale.

Elimina l'affettatrice con la tabella Date e crea la prima misura. La misura recupererà il valore selezionato dall'affettatrice Date da mostrare. La prima variabile che devi creare è ValuesToShow . Quindi, identificalo con il valore Date da mostrare e inserisci RETURN per restituire i valori selezionati.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Trascina quella misura nella matrice. Se selezioni 6 dall'affettatrice Date da mostrare, anche la colonna Misura nella matrice restituirà 6.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Quindi, crea un'altra variabile che recupererà la data disconnessa selezionata nell'affettatrice.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Al termine, vedrai il valore selezionato nell'affettatrice DisDate mostrato nella colonna Misura.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Creazione di una tabella calcolata

Crea un elenco di date con intervalli di 7 giorni a partire dalla data selezionata nell'affettatrice. Quindi, assicurati che la matrice generi il numero di giorni in base alla selezione dell'affettatrice Date da mostrare. Per fare ciò, devi prima creare una tabella calcolata .

La tabella calcolata consente di visualizzare come vengono generate le date all'interno del codice DAX. Vai alla Visualizzazione dati e fai clic su Nuova tabella.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Immettere la variabile SelectedDate e identificarla con la funzione DATE . Quindi, inserisci una data tra parentesi. Successivamente, crea un'altra variabile che specificherà il numero di date che desideri mostrare nella matrice. Immettere DatesToShow e identificarlo con il numero di date.

Successivamente, crea un'altra variabile che genererà un elenco di date con intervalli di 7 giorni. Immettere DatesList e utilizzare la funzione GENERATESERIES . è una funzione che genera un elenco di numeri passando diversi argomenti.

Per il primo argomento, inserisci SelectedDate – (DatesToShow * 7)  come valore iniziale. Successivamente, inserisci SelectedDate come valore finale. Per l'ultimo argomento, inserire 7 per il valore di incremento o l'intervallo tra le date. Una volta fatto, chiudi la funzione e inserisci RETURN e DateList .

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

È quindi possibile visualizzare una tabella contenente sette valori a partire dal 5 maggio e tornare indietro con incrementi di sette.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Ora noterai che ha creato troppe date rispetto a quelle di cui hai bisogno. Nel report di esempio originale, l'ultima data mostrata con le stesse selezioni Date da mostrare e Data era il 31 marzo.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Per risolvere il problema, puoi modificare il valore della variabile DatesToShow in 5 o sottrarre 1 da 6. In questo esempio, 1 viene sottratto da 6.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Successivamente, vedrai che i valori terminano il 31 marzo.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Inserimento di date nel contesto del filtro

Successivamente, è necessario utilizzare e inserire queste date in un contesto di filtro di data. È inoltre necessario calcolare l'importo delle vendite nel contesto del filtro. Quindi, copia la sintassi GENERATESERIES e torna alla tua misura.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Nella misura, aggiungi una nuova variabile e inserisci DatesToShow . Quindi, identifica quella variabile con la sintassi GENERATESERIES . Modificare le variabili all'interno della sintassi da SelectedDate a DisSelectedDate e DatesToShow a ValuesToShow .

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Infine, crea una variabile per il risultato. Equivale alla funzione CALCULATE su Total Sales e DatesToShow per inserire tutte le date ricevute dalla sintassi GENERATESERIES nel contesto del filtro. Una volta fatto, inserire Result nella funzione RETURN .

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Ora vedrai che la matrice non mostrerà le date richieste dal codice DAX. Se inserisci la misura Total Sales nella matrice, vedrai che il codice restituisce l'importo Sales stesso.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Il problema con la misura è che la data creata nella sintassi GENERATESERIES ha una derivazione dati con la tabella data disconnessa. Ciò significa che la tabella Date non è collegata alla tabella Sales. Ecco perché quando l'elenco di date è stato applicato nel contesto del filtro, non includeva la tabella Sales.

È necessario utilizzare la funzione per creare relazioni virtuali e applicare il contesto del filtro.

Utilizzo di TREATAS per correggere la data in LuckyTemplates Matrix

È necessario trattare i valori ricevuti dalla sintassi GENERATESERIES come se facessero parte della tabella Date originale. Fondamentalmente si tratta di creare un lignaggio con la colonna Date della tabella Date che si trova nel modello di dati.

Quindi nella variabile Risultato, inserisci TREATAS dopo la tabella Total Sales e fornisci gli argomenti. Per il primo argomento, fornisci la colonna o la tabella che non ha la relazione. In questo caso, viene utilizzata la colonna DatesToShow .

Per il secondo argomento, fornire la colonna a cui si desidera mappare la derivazione della colonna nel primo argomento. In questo esempio viene utilizzata la colonna Data della tabella Date.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Tuttavia, anche con le correzioni nel codice, la colonna Measure nella matrice non mostrerà ancora i valori corretti quando si usa lo slicer. Puoi anche notare che i valori all'interno della colonna si ripetono.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Il problema sta nel modo in cui è stato scritto il codice. TREATAS applica tutti i valori nel contesto del filtro e sovrascrive il contesto del filtro esistente alla data selezionata con tutti i valori che sono stati recuperati dalla funzione GENERATESERIES .

Utilizzo della funzione KEEPFILTERS su TREATAS

Per assicurarsi che il filtro venga inserito nel filtro senza sovrascrivere il contesto del filtro esistente, è necessario utilizzare la funzione KEEPFILTERS . cambia la semantica di filtraggio di CALCULATE .

Immettere KEEPFILTERS prima della funzione TREATAS e confermare la misura.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Vedrai ora che i valori all'interno della colonna Misura non si ripetono.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Se espandi i mesi di maggio e aprile, vedrai che i valori nella colonna Misura sono uguali ai valori della colonna Totale vendite.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Rimuovi la misura Total Sales nella matrice e seleziona un numero nell'affettatrice Date da mostrare. Vedrai quindi il numero equivalente di date mostrato nella matrice.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Risoluzione dei problemi relativi alla data mancante nella matrice di LuckyTemplates

Un altro problema con questo rapporto è che quando si seleziona 8 nel filtro dei dati DatesToShow , la matrice non cambia.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Se selezioni 9 nell'affettatrice, la matrice mostra solo 8 date. Noterai anche che il 17 marzo manca dall'elenco delle date.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Il motivo è che in alcuni giorni nella tabella Data non ci sono transazioni corrispondenti nella tabella Vendite. Quindi la misura restituisce uno spazio vuoto per quelle date. Poiché restituisce vuoto, il codice che corre dietro la matrice rimuove le righe vuote dal risultato.

LuckyTemplates usa quindi il risultato restituito per popolare la matrice. Quindi, poiché alcuni giorni tornano vuoti, non puoi vedere le vendite e le voci di quei giorni nella matrice.

Se vuoi mostrare qualcosa per i giorni senza Sales nei tuoi dati, torna alla misura e rimuovi la sintassi CALCULATE .

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Utilizzo di DAX per risolvere la data mancante in LuckyTemplates

Creare una derivazione dei dati scrivendo TREATAS sulla colonna DatesToShow e Date della tabella Dates . Quindi, controlla se tutte le date restituite dalla funzione TREATAS sono incluse nel contesto del filtro.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Da lì, dividi l'esecuzione per più variabili. Modificare il nome della variabile da Result a CreateDataLineage per mostrare che memorizza il risultato di TREATAS .

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Quindi, crea un'altra variabile che conterrà tutte le date visibili nel contesto del filtro proveniente dalla matrice. Immettere VisibleDate come nome della variabile e utilizzare sulla colonna Data .

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

La prossima cosa da fare è creare una colonna sul risultato della funzione TREATAS che conterrà l'importo delle vendite. Scrivere DatesWithSales come nome della variabile e utilizzare sulla variabile CreateDataLineage .

All'interno della funzione, crea una nuova colonna e denominala Sales Amount con la misura Total Sales nel contesto della riga per avviare la transizione del contesto.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Successivamente, crea una variabile che controlli se tutte le date archiviate nella variabile DatesWithSales sono incluse nel contesto del filtro. Immettere IsDateInFilterContext come nome della variabile e utilizzare la funzione .

Da lì, scrivi DatesWithSales come primo argomento della funzione. Immettere quindi Dates[Date] IN VisibleDate come secondo argomento per verificare se la data contenuta nella tabella DatesWithSales è inclusa nella variabile VisibleDate .

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

L'ultima variabile che devi creare è Result . Utilizzare la funzione sulla variabile IsDateInFilterContext . Scrivi [@Sales Amount] + 0 per includere i giorni che non erano inclusi in precedenza.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Dopo tutto ciò, vedrai la data mancante, 17 marzo, nella matrice.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Usando +0 nella misura originale

I passaggi precedenti hanno mostrato come creare una misura per includere tutte le date che non hanno transazioni nella tabella dei fatti. Ora, se usi + 0 nella misura originale che hai creato, i valori nella colonna Misura saranno tutti 0.

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Scegli una data specifica in LuckyTemplates utilizzando il calcolo DAX

Il motivo è che la variabile Risultato contiene uno spazio vuoto o un importo di vendita. Quindi, se aggiungi 0, stai sostituendo lo spazio vuoto con 0. Ricorda che le colonne riepilogate rimuovono le righe vuote dal set di dati. Restituiscili a LuckyTemplates in modo che possano mostrare solo righe limitate e non gli spazi vuoti.

Ma poiché viene aggiunto 0, la colonna di riepilogo è costretta a mantenere le righe. Quindi restituisce una tabella che contiene tutte le date esistenti nella tabella Date e mostra zero ovunque sia applicabile o quando è vuoto.

Questo è il motivo per cui è necessario riscrivere la misura in modo da aggiungere solo 0 alle date visibili nel contesto del filtro e incluse nella variabile DatesToShow .


Connettori Power Automate: numero, testo e data Ora
Tabella data estesa Power Query Funzione M
Power Query LuckyTemplates | Crea nuovi record basati sui campi data

Conclusione

Per creare un report di dati che consenta di selezionare una data specifica in una matrice di LuckyTemplates , è necessario utilizzare tabelle calcolate e funzioni DAX . Le funzioni e le misure DAX devono essere scritte in modo da ottenere facilmente risultati.


Cosè il sé in Python: esempi del mondo reale

Cosè il sé in Python: esempi del mondo reale

Cos'è il sé in Python: esempi del mondo reale

Come salvare e caricare un file RDS in R

Come salvare e caricare un file RDS in R

Imparerai come salvare e caricare oggetti da un file .rds in R. Questo blog tratterà anche come importare oggetti da R a LuckyTemplates.

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

In questa esercitazione sul linguaggio di codifica DAX, scopri come usare la funzione GENERATE e come modificare dinamicamente il titolo di una misura.

Mostra approfondimenti utilizzando la tecnica di visualizzazione dinamica multi-thread in LuckyTemplates

Mostra approfondimenti utilizzando la tecnica di visualizzazione dinamica multi-thread in LuckyTemplates

Questo tutorial illustrerà come utilizzare la tecnica di visualizzazione dinamica multi-thread per creare approfondimenti dalle visualizzazioni di dati dinamici nei report.

Introduzione al filtraggio del contesto in LuckyTemplates

Introduzione al filtraggio del contesto in LuckyTemplates

In questo articolo, esaminerò il contesto del filtro. Il contesto del filtro è uno degli argomenti principali che qualsiasi utente di LuckyTemplates dovrebbe inizialmente conoscere.

I migliori suggerimenti per lutilizzo delle app nel servizio online LuckyTemplates

I migliori suggerimenti per lutilizzo delle app nel servizio online LuckyTemplates

Voglio mostrare come il servizio online di LuckyTemplates Apps può aiutare nella gestione di diversi report e approfondimenti generati da varie fonti.

Analizza le variazioni del margine di profitto nel tempo: analisi con LuckyTemplates e DAX

Analizza le variazioni del margine di profitto nel tempo: analisi con LuckyTemplates e DAX

Scopri come elaborare le modifiche al margine di profitto utilizzando tecniche come la ramificazione delle misure e la combinazione di formule DAX in LuckyTemplates.

Idee di materializzazione per cache di dati in DAX Studio

Idee di materializzazione per cache di dati in DAX Studio

Questo tutorial discuterà delle idee di materializzazione delle cache di dati e di come influiscono sulle prestazioni dei DAX nel fornire risultati.

Reporting aziendale tramite LuckyTemplates

Reporting aziendale tramite LuckyTemplates

Se finora utilizzi ancora Excel, questo è il momento migliore per iniziare a utilizzare LuckyTemplates per le tue esigenze di reportistica aziendale.

Che cosè il gateway LuckyTemplates? Tutto quello che devi sapere

Che cosè il gateway LuckyTemplates? Tutto quello che devi sapere

Che cos'è il gateway LuckyTemplates? Tutto quello che devi sapere