Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

La maggior parte dei principianti DAX e persino degli utenti intermedi faticano davvero a capire cosa fa la  funzione EARLIER . Mi ci è voluto anche molto tempo per capire come, quando e perché dovresti usare questa funzione in LuckyTemplates. Puoi guardare il video completo di questo tutorial in fondo a questo blog.

In questo articolo, completeremo un'analisi approfondita dell'utilizzo della funzione PRECEDENTE . Ti mostrerò esempi di funzioni PRECEDENTI e come usarli in modo efficace.

Inoltre, ti mostrerò un modo molto più intuitivo per eseguire calcoli invece di utilizzare la funzione PRECEDENTE .

Sommario

Come e quando utilizzare la funzione PRECEDENTE

Storicamente la funzione PRECEDENTE era l'unico modo per manipolare il contesto di un calcolo all'interno di una particolare formula. Ma da quando sono state introdotte le VARIABILI, ora non è così essenziale come una volta.

Tuttavia, comprendere la funzione EARLIER è importante se si desidera portare la propria conoscenza DAX a un nuovo livello. Richiede una conoscenza approfondita del contesto di riga e filtro, che sono concetti fondamentali quando si lavora con i calcoli DAX.

Per una rapida revisione del concetto generale (ma molto importante) di contesto vedere i link sottostanti.

Contesto di valutazione - (1.8) Guida definitiva per principianti a DAX

Filter Context – (1.9) Guida definitiva per principianti a DAX

Spiegazione del contesto della riga - (1.10) Guida definitiva per principianti a DAX

Userò la tabella Prodotti per tutti gli esempi che esamineremo qui. Se diamo una rapida occhiata al modello, vedrai che la mia tabella Prodotti è una tabella di ricerca con una relazione fino alla mia tabella Vendite (che è considerata una tabella dei fatti).

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Voglio calcolare alcuni totali cumulativi all'interno di questa particolare tabella.

Il primo totale cumulativo è generico. Volevo calcolarlo basandomi solo su un indice generale che ho per ogni prodotto che deriva dal nome del prodotto che ho in questa particolare tabella.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

La prossima cosa che ho fatto è stato posizionare Total Product Sales all'interno della misura Total Sales. Un concetto chiave di questa particolare formula è la transizione del contesto .

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Transizione di contesto e contesto di riga

La transizione del contesto avviene inserendo una misura all'interno dell'espressione. E poi sei in grado di passare da un contesto di riga a un contesto di filtro.

Ecco come questo particolare risultato viene filtrato per il Prodotto 1.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Mi sono tuffato in questo perché la comprensione del contesto in una tabella e una colonna calcolata è fondamentale qui. E in questo caso particolare, stiamo usando row context .

Contesto di riga significa che verrà eseguita una valutazione su ogni singola riga. E ogni singola riga in una colonna calcolata ha un risultato con la valutazione che avviene in ogni singola riga.

Esempi di totali cumulativi che utilizzano la funzione EARLIER

Ora voglio calcolare un totale cumulativo basato su questa particolare riga nella colonna Cumulative Product Sales e voglio farlo in una colonna calcolata. È qui che entra in gioco la funzione PRECEDENTE in LuckyTemplates.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

La formula per questo esempio contiene la funzione FILTRO . E in questa particolare formula, FILTER aggiunge un ulteriore contesto di riga.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Abbiamo iniziato con un contesto di riga per questo calcolo e quindi abbiamo utilizzato la funzione filtro che valuterà ogni singola riga nella tabella dei prodotti.

E poi in ogni singola riga nella tabella Product, guardiamo qual è l'indice e valutiamo se è minore di un numero specifico che abbiamo nella riga.

Scenario 1: l'indice del prodotto è inferiore o uguale a 8

Per questa particolare riga, vogliamo calcolare tutto ciò che ha un indice di 8 o inferiore.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Dobbiamo valutare ogni singola riga nella tabella Prodotti e capire se esiste un numero indice minore o uguale a 8.

Se c'è, allora vogliamo calcolare tutte le vendite per quei particolari prodotti. E mentre scendiamo, rivaluta le tariffe.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

EARLIER ci consente di saltare da un contesto di riga al contesto di riga precedente per recuperare un valore.

Scenario 2: l'indice del prodotto è inferiore o uguale a 10

Nel nostro prossimo esempio, il risultato particolare è 10. Vogliamo valutare l'indice del prodotto in ogni singola riga se è minore o uguale a 10.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Ora, alcuni di voi che hanno familiarità con il concetto di totale cumulativo potrebbero pensare che qui invece possiamo usare la  funzione MAX , dato che è quello che facciamo nel modello generico di totale cumulativo.

Ma se inserisco un MAX nella formula, valuterà sempre i prodotti massimi. Inoltre, in realtà non valuta l'indice del prodotto nella riga specifica.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Quindi dobbiamo uscire da questo contesto di riga e quindi tornare al contesto di riga iniziale per recuperare l'indice del prodotto. Ed è quello che fa EARLIER .

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

La funzione EARLIER ci consente di saltare da un contesto a un contesto di riga precedente, in modo da ottenere il risultato desiderato.

Scenario 3: utilizzo della classifica dei prodotti anziché dell'indice dei prodotti

Per il nostro prossimo esempio, ho classificato i miei prodotti in base alle vendite. Ho anche un grado basato su dove si siedono tutti.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Le vendite migliori per i nostri prodotti sono $ 864.000 e questo è il prodotto 63.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Ora, voglio creare un totale cumulativo basato sulla classifica. Invece di guardare l'indice precedente, in realtà sto cercando la classifica delle vendite dei prodotti precedenti.

Quindi dobbiamo esaminare ogni singolo prodotto in questa particolare tabella di prodotti per valutare se la classifica del prodotto è inferiore o uguale alla classifica del prodotto su quella particolare riga.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

EARLIER salta fuori da questo contesto di riga e torna al contesto di riga iniziale creato trovandosi in una colonna calcolata.

Una migliore alternativa alla funzione precedente

Usare la funzione PRECEDENTE può essere un po' complicato. Ma la buona notizia è che abbiamo un modo migliore per eseguire questi calcoli in LuckyTemplates.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

VARIABLES è un modo di gran lunga superiore per eseguire i calcoli. Ti mostrerò come puoi bypassare EARLIER .

In questo esempio, invece di saltare fuori dal contesto di riga creato da un filtro, possiamo semplicemente recuperare il valore dell'indice di prodotto nel suo contesto di riga iniziale in una variabile.

Così ho tolto EARLIER e ho inserito la variabile ProductIndex .

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Vedrai qui che le vendite cumulative di prodotti ora funzionano perfettamente anche in questo nuovo formato. Sembra come faceva prima.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Possiamo fare esattamente lo stesso con le vendite cumulative di prodotti per classifica utilizzando questo calcolo:

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

E poi se ordiniamo la colonna Classifica vendite prodotti dall'ordine crescente, possiamo vedere che il prodotto con il punteggio più alto è il prodotto 63.

Come utilizzare la funzione PRECEDENTE in LuckyTemplates: un tutorial su DAX

Come calcolare i risultati del budget o della previsione in modo cumulativo in LuckyTemplates
Confrontare più metriche in modo cumulativo in LuckyTemplates utilizzando DAX

Conclusione

L'uso di VARIABLES è un modo di gran lunga superiore per affrontare tutti gli esempi che ho mostrato in precedenza.

E ad essere onesti, con tutto il lavoro di sviluppo che ho fatto prima, raramente ho usato la funzione EARLIER . Ma è ancora una funzione interessante da conoscere e capire.

Le variabili sono fondamentali quando si scrive DAX in molte aree diverse di LuckyTemplates. Qui è dove le cose diventano molto più semplici.

Invece di dover saltare dentro e fuori dal contesto all'interno delle formule, puoi effettivamente avviare i calcoli all'interno delle variabili o isolare il calcolo con le variabili al suo interno, quindi l'esecuzione di una formula è più fluida.

È possibile navigare attraverso questi collegamenti per ottenere maggiori informazioni su questo argomento:

Sintassi, commenti e variabili delle formule: guida definitiva per principianti a DAX

Come utilizzare le variabili nella formula DAX con LuckyTemplates

Si spera che tu possa avere una buona comprensione di come funziona questo particolare calcolo all'interno di LuckyTemplates.

Leave a Comment

Power Automate si applica a ogni azione nei flussi di lavoro

Power Automate si applica a ogni azione nei flussi di lavoro

Scopri l

Tecniche di modellazione dei dati per organizzare le misure DAX

Tecniche di modellazione dei dati per organizzare le misure DAX

Tecniche di modellazione dei dati per organizzare meglio le misure DAX per un flusso di lavoro più efficiente.

Filtro Power Apps: cosè e come si usa?

Filtro Power Apps: cosè e come si usa?

Scopri come utilizzare la funzione di filtro in Power Apps e come incorporarla nelle formule esistenti all

Come commentare più righe in Python: una guida semplice e veloce

Come commentare più righe in Python: una guida semplice e veloce

Come commentare più righe in Python: una guida semplice e veloce

Connettori Power Automate: numero, testo e data e ora

Connettori Power Automate: numero, testo e data e ora

Acquisisci familiarità con i connettori Power Automate per la manipolazione di numeri, testo e date/ore.

Budget Vs Actual Vs Last Year - Suggerimenti per la rendicontazione finanziaria

Budget Vs Actual Vs Last Year - Suggerimenti per la rendicontazione finanziaria

Ora, è molto facile studiare il budget rispetto all

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 articolo tratta anche come importare oggetti da R a LuckyTemplates.

Che cosè Power Query e M Language: una panoramica dettagliata

Che cosè Power Query e M Language: una panoramica dettagliata

Scopri tutto su Power Query e il linguaggio M per la trasformazione e la preparazione dei dati nel desktop di LuckyTemplates.

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

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.