Conversione formula da DAX a SQL per il cubo di Datawarehouse L’argomento è risolto

SQL Server, Oracle, MySQL...

elyfiora
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

Messaggio da elyfiora »

Esatto.
Se un progetto ha più valori in quel mese, nel subtotale del mese deve sommare solo l'ultimo ovvero il più recente.
Il subtotale complessivo sarà la somma di tutti i valori più recenti di ciascun progetto nel mese.


Avatar utente

Enrico Galli
Messaggi: 890 | Topic creati
Iscritto il: dom 28 giu 2020, 19:03
Luogo: San Giovanni in Persiceto (BO)
Ringraziato: 325 volte
Contatta:

Conversione formula da DAX a SQL per il cubo di Datawarehouse

Messaggio da Enrico Galli »

Prova un po' questo "mostro"... :lol: (Andrea90 intervieni tu per migliorare!)

Codice: Seleziona tutto

=IF ( ISFILTERED('CastProject'[Cast Project Name]);
	CALCULATE (
		CALCULATE (
			MAX ( 'Cast'[bFP] );
			LASTNONBLANK (
				'Cast'[Data];
				MAX ( 'Cast'[bFP] )
			)
		);
		FILTER (
			ALL ( 'Calendar'[data] );
			'Calendar'[data]
				< MAX ( 'Calendar'[data] )
		)
	);
	CALCULATE (
		SUMX(
			ADDCOLUMNS(
				VALUES('CastProject'[Cast Project Name]);
				"@maxbfp";
				CALCULATE (
					MAX ( 'Cast'[bFP] );
					LASTNONBLANK (
						'Cast'[Data];
						MAX ( 'Cast'[bFP] )
					)
				)
			);
			[@maxbfp]
		);
		FILTER (
			ALL ( 'Calendar'[data] );
			'Calendar'[data]
				< MAX ( 'Calendar'[data] )
		)
	)
)
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

Autore del topic
elyfiora
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

Messaggio da elyfiora »

Complimenti! Funziona! Avevo capito che dovevo usare la SUMX ma non la configuravo bene e quindi non mi usciva.
Grazie infinite
Elisa
Avatar utente

Enrico Galli
Messaggi: 890 | Topic creati
Iscritto il: dom 28 giu 2020, 19:03
Luogo: San Giovanni in Persiceto (BO)
Ringraziato: 325 volte
Contatta:

Conversione formula da DAX a SQL per il cubo di Datawarehouse

Messaggio da Enrico Galli »

In realtà funziona anche senza la prima parte del costrutto IF, mantenendo quindi solo:

Codice: Seleziona tutto

=
CALCULATE (
    SUMX (
        ADDCOLUMNS (
            VALUES ( 'CastProject'[Cast Project Name] );
            "@maxbfp";
                CALCULATE (
                    MAX ( 'Cast'[bFP] );
                    LASTNONBLANK (
                        'Cast'[Data];
                        MAX ( 'Cast'[bFP] )
                    )
                )
        );
        [@maxbfp]
    );
    FILTER (
        ALL ( 'Calendar'[data] );
        'Calendar'[data]
            < MAX ( 'Calendar'[data] )
    )
)
Confermi?
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

Autore del topic
elyfiora
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

Messaggio da elyfiora »

Si confermo, funziona ugualmente!
Grazie
Elisa
Rispondi