Conversione formula da DAX a SQL per il cubo di Datawarehouse L’argomento è risolto
-
- Messaggi: 26 | Topic creati
- Iscritto il: mer 7 apr 2021, 19:39
- Ringraziato: 1 volta
Conversione formula da DAX a SQL per il cubo di Datawarehouse
Ciao, ti ringrazio moltissimo per la disponibilità. Ti allego un excel dove ho creato il modello e ho riportato il risultato atteso partendo da quei dati.
Sono a disposizione se ci sono domande.
Ringrazio di nuovo
Elisa
Sono a disposizione se ci sono domande.
Ringrazio di nuovo
Elisa
- Allegati
-
- LastValue.xlsx
- (215.45 KiB) Scaricato 94 volte
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta:
Conversione formula da DAX a SQL per il cubo di Datawarehouse
Ciao elyfiora,
La Calendar Table falla sempre iniziare e chiudere con tutte le date relative ad un anno (o più). Quindi, in questo caso, arriva fino al 31/12/2021
Come seconda cosa attenta al modello dati in excel, quando l'ho aperto la relazione tra Calendar e la Fact table puntava nella direzione sbagliata.
Per fare quello che chiedi tu, con i dati che hai proposto, proverei a scrivere questa misura:
La misura [#TotBfP] è un MAX del campo Bfp.
A presto,
Andrea
La Calendar Table falla sempre iniziare e chiudere con tutte le date relative ad un anno (o più). Quindi, in questo caso, arriva fino al 31/12/2021
Come seconda cosa attenta al modello dati in excel, quando l'ho aperto la relazione tra Calendar e la Fact table puntava nella direzione sbagliata.
Per fare quello che chiedi tu, con i dati che hai proposto, proverei a scrivere questa misura:
Codice: Seleziona tutto
=VAR DatesTable =
DATESYTD ( 'Calendar'[data] )
VAR TempTable =
CALCULATETABLE ( LASTDATE ( Cast[Data] ); DatesTable )
RETURN
CALCULATE ( [#TotBfP]; TempTable; ALL ( 'Calendar'[data (Month)] ) )
A presto,
Andrea
-
- Messaggi: 890 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:03
- Luogo: San Giovanni in Persiceto (BO)
- Ringraziato: 326 volte
- Contatta:
Conversione formula da DAX a SQL per il cubo di Datawarehouse
Ottima soluzione Andrea, molto elegante (o comunque più elegante della mia che stavo per postare ma ormai me la tengo nascosta )
Enrico Galli
Link utili: I nostri tutorial | Come inserire: Immagini - Codice - Risolto
Se il forum ti è stato utile, considera di supportarlo con una libera donazione
Link utili: I nostri tutorial | Come inserire: Immagini - Codice - Risolto
Se il forum ti è stato utile, considera di supportarlo con una libera donazione
-
Autore del topic - Messaggi: 26 | Topic creati
- Iscritto il: mer 7 apr 2021, 19:39
- Ringraziato: 1 volta
Conversione formula da DAX a SQL per il cubo di Datawarehouse
Ciao, grazie per i suggerimenti. L'excel proposto era solo per farvi capire i dati, in quanto in realtà lavoro su Analysis Services.
Ad ogni modo se inserisco anche solo la prima parte VAR DatesTable
mi resituisce errore: "A table of multiple values was supplied where a single value is expected."
Grazie della collaborazione
Elisa
Ad ogni modo se inserisco anche solo la prima parte VAR DatesTable
mi resituisce errore: "A table of multiple values was supplied where a single value is expected."
Grazie della collaborazione
Elisa
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta:
Conversione formula da DAX a SQL per il cubo di Datawarehouse
Ciao Elisa,
Hai provato ad inserire quella misura nel tuo file excel o direttamente dentro Analysis Services?
Inoltre cosa intendi con inserito la prima parte? Il codice che ti ho fornito rappresenta un'intera misura, non devi spezzarlo in parti.
Andrea
Hai provato ad inserire quella misura nel tuo file excel o direttamente dentro Analysis Services?
Inoltre cosa intendi con inserito la prima parte? Il codice che ti ho fornito rappresenta un'intera misura, non devi spezzarlo in parti.
Andrea
-
Autore del topic - Messaggi: 26 | Topic creati
- Iscritto il: mer 7 apr 2021, 19:39
- Ringraziato: 1 volta
Conversione formula da DAX a SQL per il cubo di Datawarehouse
Ciao, l'ho inserito in Analysis Service dove ho la mia struttura e per farlo sono 'obbligata' a spezzarlo in tre misure diverse.
Elisa
Elisa
-
Autore del topic - Messaggi: 26 | Topic creati
- Iscritto il: mer 7 apr 2021, 19:39
- Ringraziato: 1 volta
Conversione formula da DAX a SQL per il cubo di Datawarehouse
Io in Analysis service mi sono costruita qualcosa di questo tipo:
ma non mi fa vedere per tutti i mesi l'ultimo valore di bFP ma mi fa vedere i bFP sono per la data corrispondente che trova nella tabella CAST.
Grazie
Codice: Seleziona tutto
test:=SUMX (
SUMMARIZE (
Cast,
Cast[sk_CastProject],
"myXBFP",
CALCULATE (
CALCULATE (
MAX ( Cast[bFP] ),
LASTDATE ( Cast[data] )
),
FILTER (ALL ( 'Calendar'[data]), 'Calendar'[data] <= MAX ( 'Calendar'[data] ) )
)
),
[myXBFP]
)
Grazie
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta:
Conversione formula da DAX a SQL per il cubo di Datawarehouse
Ciao elyfiora,
Non capisco perché tu non possa utilizzare VAR all'interno delle misure, ma in questo caso non è un problema.
Hai provato a condensare il tutto in un'unica formula?
A presto,
Andrea
Non capisco perché tu non possa utilizzare VAR all'interno delle misure, ma in questo caso non è un problema.
Hai provato a condensare il tutto in un'unica formula?
Codice: Seleziona tutto
=
CALCULATE (
[#TotBfP];
CALCULATETABLE ( LASTDATE ( Cast[Data] ); DATESYTD ( 'Calendar'[data] ) );
ALL ( 'Calendar'[data (Month)] )
)
Andrea
-
Autore del topic - Messaggi: 26 | Topic creati
- Iscritto il: mer 7 apr 2021, 19:39
- Ringraziato: 1 volta
Conversione formula da DAX a SQL per il cubo di Datawarehouse
Ciao, ho consolidato tutto all'interno della stessa formula come da te indicato e non ho errori. Il fatto è che non mi fa vedere per tutti i mesi l'ultimo valore di bFP ma mi fa vedere i bFP sono per la data corrispondente che trova nella tabella CAST.
Grazie
Grazie
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta:
Conversione formula da DAX a SQL per il cubo di Datawarehouse
Il report che utilizzi è identico a quello che hai mostrato nel file excel? quindi solo con due dimensioni:
cast project name e date month?
cast project name e date month?