Pagina 1 di 3

Media consumi mensile considerando anche i mesi con consumo zero

Inviato: gio 11 apr 2024, 13:58
da symon75
Buongiorno a tutti,
sto cercando di creare una media mensile di consumi su varie tipologie di asset, e tutto funziona finché non mi trovo un mese senza movimentazioni.
Ad es. se a gennaio ho 1 movimentazione, a febbraio zero ed a marzo 6, la formula seguente mi restituisce 4 arrotondato invece che due.
P.s.
Questa parte di formula "MONTH('Consumi Asset'[Data]) <> MONTH(TODAY())" serve ad escludere che nella media venga considerato il mese attuale ed è voluta.

Ho provato anche a farmi aiutare da chatgpt ma probabilmente non sono riuscito a spiegarmi bene :-D

Codice: Seleziona tutto

AVERAGEX (
    KEEPFILTERS (
        FILTER (
            VALUES ( 'Consumi Asset'[Data].[Mese] ),
            'Consumi Asset'[Data].[Mese] <> SELECTEDVALUE ( 'Consumi Asset'[Data].[Mese] )
        )
    ),
    CALCULATE (
        SUM ( 'Consumi Asset'[QtaMovimento] ),
        MONTH ( 'Consumi Asset'[Data] ) <> MONTH ( TODAY () )
    )
)

Media consumi mensile considerando anche i mesi con consumo zero

Inviato: gio 11 apr 2024, 14:04
da Andrea90
@symon75,

Quella formula te la sei fatta "suggerire" da chatgpt?

Premessa: lascia stare Chatgpt quando devi creare misure in DAX. Studia la teoria e createle tu le misure. Anche perché queste dipendono molto da come hai strutturato il modello dati.

Andrea

P.s. il codice va inserito nei tagcode, per questa volta faccio io.

Media consumi mensile considerando anche i mesi con consumo zero

Inviato: gio 11 apr 2024, 14:24
da symon75
Mi sono fatto aiutare dalla funzione "misura rapida" che però nel calcolo non mi include i mesi con zero movimenti

Media consumi mensile considerando anche i mesi con consumo zero

Inviato: gio 11 apr 2024, 14:34
da Andrea90
@symon75,

Si ma il punto del discorso è questo: su quella misura che ti sei fatto creare (misura rapida o chatgpt il discorso cambia poco, ovvero se copi ed incolli il loro operato sarai sempre un utente passivo), quanto sei autonomo nel gestirla?

Ad esempio perché hai dovuto mettere un KEEPFILTERS() che circonda FILTER() (premetto che so come funziona KEEPFILTERS(), ma vorrei capirne la logica del suo utilizzo).

Inoltre perché utilizzi campi come: 'Consumi Asset'[Data].[Mese] ... quel [Data].[...] identifica una tabella "calendario" che ti sei fatto creare in automatico da PowerBI ? Se è così rimuovi quell'opzione e creati tu la tua tabella calendario, lascia stare questo automatismo che comporta solo problemi.

Sai cosa riporta questa funzione:

Codice: Seleziona tutto

SELECTEDVALUE ( 'Consumi Asset'[Data].[Mese] )
In particolar modo quando non hai un solo valore mese all'interno del contesto filtro attivo.

Andrea

Media consumi mensile considerando anche i mesi con consumo zero

Inviato: gio 11 apr 2024, 15:00
da symon75

Codice: Seleziona tutto

AVERAGEX(
	KEEPFILTERS(VALUES('Consumi Asset'[Data].[Mese])),
	CALCULATE(SUM('Consumi Asset'[QtaMovimento]),MONTH('Consumi Asset'[Data]) <> MONTH(TODAY())
))
)
Ora è più pulita, pasticciando ero arrivato a piazzare pezzi poco utili.
La data la prende dalla sorgente che è un file excel ed è uno dei valori filtrati

Media consumi mensile considerando anche i mesi con consumo zero

Inviato: gio 11 apr 2024, 15:12
da Andrea90
@symon75,

Allega un file demo con il tuo tentativo fatto

Andrea

Media consumi mensile considerando anche i mesi con consumo zero

Inviato: gio 11 apr 2024, 16:13
da symon75
perdonami, per il file demo intendi un file powerbi e la sorgente?

Media consumi mensile considerando anche i mesi con consumo zero

Inviato: gio 11 apr 2024, 16:15
da Andrea90
Esatto, poi non servono tutti i dati. Bastano qualche manciata di righe con le misure che hai predisposto. Giusto per vedere il modello dati e il risultato che ottieni al momento.

Andrea

Media consumi mensile considerando anche i mesi con consumo zero

Inviato: gio 11 apr 2024, 18:59
da symon75
Eccolo, è già sul "caso" del desktop senza movimentazioni a febbraio che rende la media errata

Media consumi mensile considerando anche i mesi con consumo zero

Inviato: gio 11 apr 2024, 22:10
da Andrea90
@symon75,

Nel tuo esempio hai due mesi con i dati, gennaio e marzo, rispettivamente con 1 e 4.
Come media tu vuoi ottenere ? Vuoi fare 5/3 ? perché tra gennaio e marzo ci sono 3 mesi?

Andrea