Misura non funzionante L’argomento è risolto

Non è propriamente un programma di BI, ma nelle sue versioni più recenti anche Excel può fare grandi cose!

Moderatore: Utilizzo_prof_Excel

Rispondi

filippo66
Messaggi: 18 | Topic creati
Iscritto il: mar 26 apr 2022, 10:50
Ringraziato: 1 volta

Misura non funzionante

Messaggio da filippo66 »

Buongiorno.

Ho replicato in modo estremamente semplificato il mio modello.

Ottengo il costo di ciascun prodotto per ogni anno.

Se imposto la pivot con in riga l'anno e il codice non ci sono problemi, mentre se tolgo l'anno non ottengo il risultato desiderato.

Grazie per eventuali suggerimenti.
Allegati
Test.xlsx
(360.29 KiB) Scaricato 11 volte


Avatar utente

Andrea90
Messaggi: 2240 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 672 volte
Contatta:

Misura non funzionante

Messaggio da Andrea90 »

filippo66,

Questa è la tua misura (l'ho leggermente modificata):

Codice: Seleziona tutto

=
VAR Anno =
    MAX ( Articoli[Anno] )
VAR Result =
    CALCULATE (
        SUM ( 'Costo orario'[Costo orario] );
        'Costo orario'[Anno] = Anno;
        'Costo orario'[DIPENDENTE] = "Rossi";
        CROSSFILTER ( 'Anno Univoco'[Anno]; 'Costo orario'[Anno]; BOTH )
    ) * [Conteggio Ore]
RETURN
    Result
Se tu togli l'anno dal report, quale valore assumerà la variabile VAR Anno ? Che utilizzi dentro alla variabile Result?

Capito questo, capirai dove risiede "l'errore" e come fare per risolverlo.

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
filippo66
Messaggi: 18 | Topic creati
Iscritto il: mar 26 apr 2022, 10:50
Ringraziato: 1 volta

Misura non funzionante

Messaggio da filippo66 »

Grazie Andrea90

Se tolgo l'anno, immagino che la variabile prenda il valore 2022, e infatti il valore riportato è 350.

Non riesco a proseguire perché il MAX dell'anno presente nella misura lo devo lasciare perché mi permette di calcolare correttamente il costo orario di ciascun dipendente per ogni anno...
Avatar utente

Andrea90
Messaggi: 2240 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 672 volte
Contatta:

Misura non funzionante

Messaggio da Andrea90 »

filippo66,

"il MAX dell'anno presente nella misura lo devo lasciare perché mi permette di calcolare correttamente il costo orario di ciascun dipendente per ogni anno"

Questo non è del tutto vero. E come hai intuito, a livello di totale non vale questa tua considerazione poiché a livello di totale devi mantenere distinte le righe della tua tabella "Ore Rossi", altrimenti lui ti prenderà solo quella relativa all'anno maggiore.

Quindi MAX non è indicato a livello di subtotale.

Ma prima di questo direi che c'è un'altra considerazione che devi fare:

Nel tuo report stai utilizzando i campi della tabella "Ore Rossi", intendo come Anno e Codice, ma cosa comporta questo?

Immagine

DAX è un linguaggio "semplice", ma non facile... Bisogna studiare bene i modelli dati, perché utilizzare un campo "Codice" preso da una tabella piuttosto che un'altra, porta a risultati completamente diversi.

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
filippo66
Messaggi: 18 | Topic creati
Iscritto il: mar 26 apr 2022, 10:50
Ringraziato: 1 volta

Misura non funzionante

Messaggio da filippo66 »

Quindi per risolvere il mio problema, come mi consigli di procedere?
Avatar utente

Andrea90
Messaggi: 2240 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 672 volte
Contatta:

Misura non funzionante

Messaggio da Andrea90 »

filippo66,

Se hai capito il motivo per il quale il report (tabella pivot) così come da te impostato non funziona correttamente bene, altrimenti ti consiglio di studiare prima come funzionano i modelli dati: viewtopic.php?t=36

Altrimenti se ti do una possibile soluzione, ma poi tu non conosci le motivazioni che ci sono dietro penso sia inutile, poiché non sarai mai autonomo nello sviluppo di reportistiche.

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
filippo66
Messaggi: 18 | Topic creati
Iscritto il: mar 26 apr 2022, 10:50
Ringraziato: 1 volta

Misura non funzionante

Messaggio da filippo66 »

Andrea90

certamente i tuoi consigli sullo studio e l'apprendimento sono ben accetti e ti ringrazio. Concordo pienamente su tutto quello che hai detto...

Tuttavia, avendo la necessità di sviluppare il report in tempi ragionevoli, che purtroppo non coincidono con quelli necessari allo studio, potresti indicarmi a grandi linee se non la formula, il come poterla sviluppare?

Se non ti è possibile, grazie lo stesso.
Avatar utente

Andrea90
Messaggi: 2240 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 672 volte
Contatta:

Misura non funzionante

Messaggio da Andrea90 »

filippo66,

Per prima cosa devi inserire i giusti campi all'interno della tua pivot.

E come seconda cosa creerei una misura che esegua un SUMMARIZE della tua tabella Ore Rossi cosi da avere i campi Anno e Codice, più un campo calcolato che esegua semplicemente il prodotto tra Ore e Costo Orario.

Come ultimo fare un SUMX della tabella calcolata al punto precedente (sto parlando di Variabili all'interno della stessa misura).

Qualcosa di simile la trovi nel file allegato:

Codice: Seleziona tutto

=
VAR TempTab =
    ADDCOLUMNS (
        SUMMARIZE ( 'Ore Rossi'; 'Anno Univoco'[Anno]; 'Articoli Unici'[Codice] );
        "@CostoOrario";
            CALCULATE ( SUM ( 'Costo orario'[Costo orario] ) )
                * CALCULATE ( SUM ( 'Ore Rossi'[Ore] ) )
    )
VAR Result =
    SUMX ( TempTab; [@CostoOrario] )
RETURN
    Result
Andrea
Allegati
Test (2).xlsx
(353.98 KiB) Scaricato 18 volte
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link
Rispondi