Media consumi mensile considerando anche i mesi con consumo zero
-
- Messaggi: 23 | Topic creati
- Iscritto il: gio 11 apr 2024, 12:09
Media consumi mensile considerando anche i mesi con consumo zero
esatto, 5/3 perchè ho consumato 5 asset in tre mesi. Dovrebbe fare (1+0+4)/3 invece fa (1+4)/2
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta:
Media consumi mensile considerando anche i mesi con consumo zero
@symon75
Avrai un periodo di riferimento (contesto filtro) quindi se ti calcoli il mese relativo alla data più recente e quello della data più lontana e fai la differenza tra i due numeri avrai il tuo denominatore.
Se il calcolo lo devi fare tra due periodi a cavallo di anni devi prevedere un contatore che tenga conto anche dell’anno delle due date.
Andrea
Avrai un periodo di riferimento (contesto filtro) quindi se ti calcoli il mese relativo alla data più recente e quello della data più lontana e fai la differenza tra i due numeri avrai il tuo denominatore.
Se il calcolo lo devi fare tra due periodi a cavallo di anni devi prevedere un contatore che tenga conto anche dell’anno delle due date.
Andrea
-
Autore del topic - Messaggi: 23 | Topic creati
- Iscritto il: gio 11 apr 2024, 12:09
Media consumi mensile considerando anche i mesi con consumo zero
ok, con i filtri se seleziono 2024 mi restituisce 3 che mi va anche bene perchè non voglio considerare il mese in corso, ma se seleziono 2023 mi restituisce 11. Dovrei aggiungere un IF se anno attuale allora ok altrimenti +1? O c'è una soluzione più smart?
DATEDIFF(MIN('Consumi Asset'[Data]), MAX('Consumi Asset'[Data]), MONTH)
DATEDIFF(MIN('Consumi Asset'[Data]), MAX('Consumi Asset'[Data]), MONTH)
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta:
Media consumi mensile considerando anche i mesi con consumo zero
@symon75,
Puoi aggiungere un campo flag(0/1) alla tua tabella calendario mettendo ad 1 le date che contengono mesi "completi", e cioè quelli precedenti alla prima data del mese in corso.
E poi usi questo flag per modificare il contesto filtro attuale direttamente dentro la misura.
Andrea
Puoi aggiungere un campo flag(0/1) alla tua tabella calendario mettendo ad 1 le date che contengono mesi "completi", e cioè quelli precedenti alla prima data del mese in corso.
E poi usi questo flag per modificare il contesto filtro attuale direttamente dentro la misura.
Andrea
-
Autore del topic - Messaggi: 23 | Topic creati
- Iscritto il: gio 11 apr 2024, 12:09
Media consumi mensile considerando anche i mesi con consumo zero
No, non ci sono.
Tralasciando la parte "else" che ho lasciato volontariamente a zero, volendo escludere il mese attuale dalla media, da "datediff" ottengo 3 se ho asset assegnati ad aprile e mi andrebbe anche bene, ma se NON ho asset assegnati ad aprile mi fa diviso 2 sballando tutto
Codice: Seleziona tutto
Media consumo =
IF(
SUM('Consumi Asset'[data del 2024]) = 0, /inserito per identificare con "zero" quelli del 2024
DIVIDE(
SUM('Consumi Asset'[QtaMovimento]),
DATEDIFF(MIN('Consumi Asset'[Data]), MAX('Consumi Asset'[Data]), MONTH)
,
0
)
)
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta:
Media consumi mensile considerando anche i mesi con consumo zero
@symon75,
Ma perché utilizzi DATEDIFF ?
Hai un range di date, sul quale agirà un contesto filtro (determinato da un campo della tabella Calendario).
Di questo basta che prendi la data minima e massima ed il loro relativo mese. L'analisi che fai è semplicemente una differenza tra questi due valori.
A questo devi aggiungere (e ci sono N modi per farlo) la logica del periodo da considerare (se mese in corso oppure no, ecc ecc).
Parti dalla prima parte di questo suggerimento, implementala e poi si prosegue.
La tabella calendario deve avere tutte le date del periodo analizzato (es° 2024). Prendi il campo Mese di questa tabella e vedrai che ti riporterà 12. Tu hai un flag 1/0 (sempre nella tabella calendario) che tiene conto se sei prima del mese corrente oppure no. Bene, utilizza questo campo per filtrare la tua tabella Calendario utilizzando CALCULATE(). In questo modo ne vedrai solo 3 di mesi, perché da aprile in avanti, le date del 2024 avranno valore flag 0 (o viceversa a seconda di come imposti la logica).
Se invece filtri il periodo 2023 avrai tutti i 12 mesi perché ormai il 2023 è tutto passato.
Andrea
Ma perché utilizzi DATEDIFF ?
Hai un range di date, sul quale agirà un contesto filtro (determinato da un campo della tabella Calendario).
Di questo basta che prendi la data minima e massima ed il loro relativo mese. L'analisi che fai è semplicemente una differenza tra questi due valori.
A questo devi aggiungere (e ci sono N modi per farlo) la logica del periodo da considerare (se mese in corso oppure no, ecc ecc).
Parti dalla prima parte di questo suggerimento, implementala e poi si prosegue.
Hai predisposto una tabella Calendario da collegare al tuo modello dati? Non puoi lavorare sul campo data della tabella dei fatti, perché come logico che sia può contenere dei "buchi".
La tabella calendario deve avere tutte le date del periodo analizzato (es° 2024). Prendi il campo Mese di questa tabella e vedrai che ti riporterà 12. Tu hai un flag 1/0 (sempre nella tabella calendario) che tiene conto se sei prima del mese corrente oppure no. Bene, utilizza questo campo per filtrare la tua tabella Calendario utilizzando CALCULATE(). In questo modo ne vedrai solo 3 di mesi, perché da aprile in avanti, le date del 2024 avranno valore flag 0 (o viceversa a seconda di come imposti la logica).
Se invece filtri il periodo 2023 avrai tutti i 12 mesi perché ormai il 2023 è tutto passato.
Andrea
-
Autore del topic - Messaggi: 23 | Topic creati
- Iscritto il: gio 11 apr 2024, 12:09
Media consumi mensile considerando anche i mesi con consumo zero
Ho creato una tabella collegata alla tabella data, che mi restituisce "0" se la data è nel mese corrente e "1" se non siamo nel mese corrente.
In questo modo pensavo di escludere dal conteggio quelli del mese corrente e chiuderla lì, ma non riesco a trovare la quadra del "come".
In questo modo pensavo di escludere dal conteggio quelli del mese corrente e chiuderla lì, ma non riesco a trovare la quadra del "come".
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta:
Media consumi mensile considerando anche i mesi con consumo zero
Allora ti faccio un esempio... tu filtri con un campo [Anno] preso dalla tabella Calendario il valore 2024.
Oggi è il 12/04/2024 quindi da quello che scrivi le 30 righe della tabella calendario relative ad Aprile 2024 hanno quel flag a 0, e tutte le restanti date le mette ad 1? Perché questo è quello che capisco dal tuo messaggio.
Andrea
-
Autore del topic - Messaggi: 23 | Topic creati
- Iscritto il: gio 11 apr 2024, 12:09
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta:
Media consumi mensile considerando anche i mesi con consumo zero
@symon75
Ma anche no… un mese come agosto 2024 deve avere lo stesso flag di aprile 2024 perché da aprile 2024 in poi le date sono tutte future al mese corrente.
Andrea
Ma anche no… un mese come agosto 2024 deve avere lo stesso flag di aprile 2024 perché da aprile 2024 in poi le date sono tutte future al mese corrente.
Andrea