Pagina 1 di 2

Funzione FILTER con campi date

Inviato: mer 16 set 2020, 9:08
da Raf1988
Buongiorno a tutti,
Ho un problema con la seguente espressione DAX

=COUNTX(FILTER(Tabella,Tabella[data].[anno]=“2020”),Tabella[id])

La voglio usare per contare i valori di ID che hanno nella colonna data il valore anno 2020.
Non so cosa sbaglio, ma quando vado a riportare il totale in una scheda PowerBI mi restituisce l’errore “non è stato possibile caricare i dati per questo oggetto visivo” con suggerimento di provare ad utilizzare la funzione VALUE o FORMAT per convertire uno dei valori.

Potete aiutarmi per piacere?
Grazie

Funzione FILTER con campi date

Inviato: mer 16 set 2020, 9:16
da Raf1988
Forse ho risolto...ho tolto le virgolette da 2020 e adesso sembra che funzioni 😅

Funzione FILTER con campi date

Inviato: mer 16 set 2020, 9:40
da Enrico Galli
Ciao! Bene che tu abbia risolto da solo (evidentemente il tuo campo "anno" è un numerico, cosa di per sé non consigliata: anche i numeri, se non ci si deve effettuare dei calcoli, è sempre consigliabile salvarli come testo).

Aggiungo solo che la sintassi consigliata per questo calcolo sarebbe

Codice: Seleziona tutto

COUNTROWS(FILTER(Tabella,Tabella[data].[anno]=“2020”))
e aggiungo infine che la tua sintassi mi suggerisce che stai usando le aggregazioni temporali automaticamente generate da Power BI: abitudine assolutamente errata e da perdere prima possibile, in favore della costruzione di una tabella calendario esterna. Presto arriverà un tutorial su questo ;)

Funzione FILTER con campi date

Inviato: mer 16 set 2020, 10:38
da Raf1988
Grazie per il suggerimento. Non ho capito però come devo gestire i campi data.
Nella mia tabella ho diversi campi data e li gestisco come tipo dati “data”. Mi puoi spiegare meglio come costruire una tabella calendario esterna e che vantaggi mi porta?

Funzione FILTER con campi date

Inviato: mer 16 set 2020, 13:45
da Andrea90
Ciao Raf1988,

I vantaggi di una tabella calendario esterna sono enormi. Ti basti pensare che se ben implementata ti permette di ottenere la possibilità di utilizzare le Time Intelligence Functions di DAX (per il calcolo ad esempio dei running total, o delle comparazioni tra gli importi riferiti a periodi sfalsati di un anno, mese, trimestre, ecc).

Poi puoi ottenere grandezze dimensionali diverse e finalizzate agli scopi della tua analisi, tipo:

1) nome mese
2) trimestre anno (es° Q1_2020)
3) flag se il giorno è lavorativo, oppure no

ecc

L’implementazione di una tabella calendario non è nulla di così complicato ed una volta scritto il codice con i campi che ti interessano puoi riciclare tale script in altri lavori che un domani ti ritroverai a fare.

A presto,

Andrea

Funzione FILTER con campi date

Inviato: mer 16 set 2020, 14:00
da Raf1988
Andrea90 Fantastico!!
Mi hai ingolosito, dove mi consigli di approfondire l’argomento?

Funzione FILTER con campi date

Inviato: mer 16 set 2020, 17:57
da Andrea90
Direi che questo è un ottimo punto di partenza:

https://www.sqlbi.com/articles/creating ... le-in-dax/

Funzione FILTER con campi date

Inviato: mer 16 set 2020, 18:47
da Raf1988
Grazie Andrea90 mi metterò a studiare 🙂

Funzione FILTER con campi date

Inviato: gio 17 set 2020, 17:21
da Osiride
Andrea90 ha scritto: mer 16 set 2020, 17:57 Direi che questo è un ottimo punto di partenza:

https://www.sqlbi.com/articles/creating ... le-in-dax/
Ciao, utilizzi spesso tabelle data create in DAX?In caso contrario in quali casi và creata in DAX secondo te? Io ne creo sempre una in M per le prestazioni. Grz

Funzione FILTER con campi date

Inviato: gio 17 set 2020, 18:07
da Andrea90
Ciao Osiride,

Sinceramente sulla tabella calendario non trovo molte differenze a farla in PQ o direttamente in Dax, sarà che io carico massimo 3 anni quindi sono proprio una manciata di righe.

Magari altri utenti avranno altre esperienze da riportarti.

Andrea