ciao Andrea90, ho letto la soluzione che ha suggerito e volevo chiederti perchè è importante mettere il SUMX prima dell'IF e non come espressione dell'IF (in pratica prima del DIVIDE).
Effettivamente da risultati diversi, ma mi sfugge il motivo teorico.
Grazie
Subtotali di un visual matrice come somma
-
- Messaggi: 83 | Topic creati
- Iscritto il: sab 29 ago 2020, 13:18
- Ringraziato: 7 volte
-
Autore del topic - Messaggi: 10 | Topic creati
- Iscritto il: ven 26 ago 2022, 12:20
- Ringraziato: 1 volta
Subtotali di un visual matrice come somma
Grazie mille Andrea90 per l'ulteriore spiegazione e ora molti dubbi si stanno risolvendo, anche se alcune cose non rimangono oscure.
Scusami il ritardo nella risposta ma mi sono preso un giorno per approfondire il materiale didattico presente sul sito.
Avendo preso fiducia ho provato a produrre un visual con i valori progressivi, ma sono ricascato nello stesso problema.
Qui sotto trovi la misura creata:
Sicuramente può essere semplificata e soprattutto corretta, ma ho messo tutti i passaggi per renderla più esplicativa possibile.
Ho pensato che in questo caso non posso avvalermi di Sumx in quanto la tabella su cui dovrei iterare è influenzata dal filtro e quindi non saprei come esplicitarla (ho provato anche a fare la prova empirica, ma non lo dico troppo forte altrimenti mi becco una seconda volta del trafficone... ma effettivamente non sembra funzionare)
Allego anche il file demo, quello che vorrei è sempre avere i subtotali che corrispondano alla somma dei singoli elementi.
Grazie in anticipo se mi potete dare ancora una mano
Scusami il ritardo nella risposta ma mi sono preso un giorno per approfondire il materiale didattico presente sul sito.
Avendo preso fiducia ho provato a produrre un visual con i valori progressivi, ma sono ricascato nello stesso problema.
Qui sotto trovi la misura creata:
Codice: Seleziona tutto
V Volume Progr =
VAR MaxDate =
max(Periodo[periodo])
VAR FTEB22tot =
CALCULATE (
[FTE B22],
FILTER (
ALL( Periodo ),
Periodo[Periodo] <= MaxDate
)
)
VAR FTEB22Avg =
divide(FTEB22tot , MaxDate)
VAR PayB22Prog =
CALCULATE (
[Payroll B22],
FILTER (
ALL( Periodo ),
Periodo[Periodo] <= MaxDate
)
)
VAR FTEA22tot =
CALCULATE (
[FTE A22],
FILTER (
ALL( Periodo ),
Periodo[Periodo] <= MaxDate
)
)
VAR FTEA22Avg =
divide(FTEA22tot , MaxDate)
VAR PayB22ProgAvg =
divide(PayB22Prog, FTEB22Avg)
VAR FTEA22vsB22Avg =
FTEA22Avg-FTEB22Avg
RETURN
if( or (FTEA22Avg = 0 , FTEB22Avg = 0), [Payroll Progr vs B22] , PayB22ProgAvg*FTEA22vsB22Avg)
Ho pensato che in questo caso non posso avvalermi di Sumx in quanto la tabella su cui dovrei iterare è influenzata dal filtro e quindi non saprei come esplicitarla (ho provato anche a fare la prova empirica, ma non lo dico troppo forte altrimenti mi becco una seconda volta del trafficone... ma effettivamente non sembra funzionare)
Allego anche il file demo, quello che vorrei è sempre avere i subtotali che corrispondano alla somma dei singoli elementi.
Grazie in anticipo se mi potete dare ancora una mano
- Allegati
-
- prova.pbix
- (68.74 KiB) Scaricato 10 volte
-
- Messaggi: 890 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:03
- Luogo: San Giovanni in Persiceto (BO)
- Ringraziato: 325 volte
- Contatta:
Subtotali di un visual matrice come somma
Ciao, SUMX è un iteratore, ovvero attiva un row context all'interno della tabella su cui agisce. In altre parole, l'espressione (in questo caso il calcolo contenuto nell'IF, inclusa la condizione stessa) viene valutata per ogni riga della tabella che viene iterata da SUMX, e i singoli risultati vengono infine sommati. Se metti la condizione all'esterno, essa sarà valutata una sola volta nel filter context, e a seconda del risultato viene o meno iterata l'intera tabella con la somma del calcolo impostato. In pratica, la differenza sta nel fatto che in un caso la condizione viene valutata per ogni riga della tabella iterata, nell'altro viene valutata una sola volta a monteRaf1988 ha scritto: ↑mar 30 ago 2022, 18:53 ciao Andrea90, ho letto la soluzione che ha suggerito e volevo chiederti perchè è importante mettere il SUMX prima dell'IF e non come espressione dell'IF (in pratica prima del DIVIDE).
Effettivamente da risultati diversi, ma mi sfugge il motivo teorico.
Grazie
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
-
- Messaggi: 83 | Topic creati
- Iscritto il: sab 29 ago 2020, 13:18
- Ringraziato: 7 volte
Subtotali di un visual matrice come somma
Grazie Enrico Galli, sei stato molto chiaro, in effetti non avevo mai riflettuto su questa differenza pensando che in realtà se la condizione la metto fuori o dentro non cambi nulla.
-
Autore del topic - Messaggi: 10 | Topic creati
- Iscritto il: ven 26 ago 2022, 12:20
- Ringraziato: 1 volta
Subtotali di un visual matrice come somma
Ciao,
scusate se vi disturbo ancora sul tema, ma sono due giorni che mi sto rompendo la testa per trovare una soluzione, ma non riesco proprio ad uscirne.
L'unica soluzione che ho trovato per aggirare il problema è costruire il progressivo anche delle misure "V Price" e V Volume" così come ho fatto per le misure dei costi (es. "Payroll A22") che ho costruito così:
(piccola nota...se inserisco questa misura nel modellino semplificato che avevo mandato un paio di giorni fa nel Visual trovo -erroneamente- esattamente gli stessi valori che derivano dalla misura che avevo postato sempre un paio di giorni fa-riallego il file. E questo mi risulta ancora più misterioso, perché sul file di lavoro con i dati reali che sto usando, questa misura funziona come mi aspettavo, cioè facendo la somma della misura "V Volume" di ogni mese. Controllate ad esempio il cdc "X", mi aspettavo che "V Volume2 Progr" fosse -18.086,04)
Usando misura (nel file originale) i subtotali sono corretti, ma personalmente trovo sbagliato questo approccio non ovviamente dal lato tecnico, ma per la significatività del dato. Infatti facendo la somma dei singoli mesi si distorce un po' il valore della variante "Volume", soprattutto quando in un dato centro di costo capita che non ci siano HC in uno specifico mese (sicuramente si può aprire una discussione filosofica sul tema).
Spero possiate darmi una mano, grazie ancora!
scusate se vi disturbo ancora sul tema, ma sono due giorni che mi sto rompendo la testa per trovare una soluzione, ma non riesco proprio ad uscirne.
L'unica soluzione che ho trovato per aggirare il problema è costruire il progressivo anche delle misure "V Price" e V Volume" così come ho fatto per le misure dei costi (es. "Payroll A22") che ho costruito così:
Codice: Seleziona tutto
V Volume2 Progr =
VAR MaxDate =
max(Periodo[periodo])
VAR VVolumeProgr =
CALCULATE (
[V Volume],
FILTER (
ALL( Periodo ),
Periodo[Periodo] <= MaxDate
)
)
RETURN
VVolumeProgr
Usando misura (nel file originale) i subtotali sono corretti, ma personalmente trovo sbagliato questo approccio non ovviamente dal lato tecnico, ma per la significatività del dato. Infatti facendo la somma dei singoli mesi si distorce un po' il valore della variante "Volume", soprattutto quando in un dato centro di costo capita che non ci siano HC in uno specifico mese (sicuramente si può aprire una discussione filosofica sul tema).
Spero possiate darmi una mano, grazie ancora!
- Allegati
-
- prova_v2.pbix
- (82.12 KiB) Scaricato 10 volte
-
Autore del topic - Messaggi: 10 | Topic creati
- Iscritto il: ven 26 ago 2022, 12:20
- Ringraziato: 1 volta
Subtotali di un visual matrice come somma
Ciao a tutti,
scusate se scrivo ancora....ma volevo solo un riscontro...a vostro avviso c'è una soluzione? sto cercando di capire come risolvere il problema, ma se anche per voi non c'è possibilità di uscirne lascio perdere...mi basta avere un segnale di speranza...
Grazie e scusate ancora il disturbo
scusate se scrivo ancora....ma volevo solo un riscontro...a vostro avviso c'è una soluzione? sto cercando di capire come risolvere il problema, ma se anche per voi non c'è possibilità di uscirne lascio perdere...mi basta avere un segnale di speranza...
Grazie e scusate ancora il disturbo