report confronto fatturato mese con quello dell'anno precedente L’argomento è risolto

Il software per la BI di Microsoft, leader nel mercato

alessiob82
Messaggi: 10 | Topic creati
Iscritto il: lun 15 gen 2024, 9:08

report confronto fatturato mese con quello dell'anno precedente

Messaggio da alessiob82 »

Buongiorno avrei bisogno di un consiglio su power bi.

premetto che non sono un esperto.

Ho una tabella con una colonna “data” che contiene mese e anno di incasso e una seconda colonna con fatturato. Ogni mese tabella viene incrementata con il fatturato del mese.

Vorrei creare un report che che mi dica:

-la differenza di fatturato per ogni mese dell’anno corrente con il mese dell’anno precedente. ES. fatturato_gennaio_2024-fatturato_gennaio_2023

La differenza del fatturato annuo incassato fino al mese corrente con quello incassa nello stesso periodo dell’anno precedente


Grazie in anticipo

Alessio


Avatar utente

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

report confronto fatturato mese con quello dell'anno precedente

Messaggio da Andrea90 »

@alessiob82,

Quando devi eseguire delle analisi temporali è quasi sempre d'obbligo la predisposizione di una tabella Calendario.

Una tabella Calendario si compone di tutte le date presenti all'interno di un anno (o più). Ad esempio se la tua analisi deve prevedere il periodo 2022-2024 dovrai predisporre una tabella calendario con tutte le date dal 01/01/2022 al 31/12/2024. Oltre al campo data puoi predisporre anche altri campi come ad esempio Mese, Anno, Mese Nome, Trimestre, ecc ecc tutti quelli che potenzialmente ti possono servire per creare le tue visualizzazioni.

Quando predisponi una tabella calendario e la leghi alla tabella dei fatti puoi poi usufruire di alcune funzioni già predisposte dette Time Intelligence Functions le quali semplificano la costruzione delle misure.
Ad esempio per te che vuoi fare il confronto tra il dato del mese con quello riferito allo stesso mese anno precedente puoi utilizzare funzioni come SAMEPERIODLASTYEAR() che altro non è che DATEADD() con parametri -1 e YEAR (diciamo che DATEADD può servire se vuoi considerare anche altri orizzonti temporali).

Se vuoi calcolare il totale dell'anno da Gennaio al mese corrente puoi utilizzare DATESYTD(). E se la vuoi portare indietro al periodo precedente utilizzerai SAMEPERIODLASTYEAR() + DATESYTD()

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
alessiob82
Messaggi: 10 | Topic creati
Iscritto il: lun 15 gen 2024, 9:08

report confronto fatturato mese con quello dell'anno precedente

Messaggio da alessiob82 »

Grazie @Andrea90

sono riuscito a calcolare il mese e l'anno precedente.

non riesco, però, calcolare il totale del fatturato dell'anno precedente prendendo in considerazione solo i valori validi per l'anno in corso. ad esempio nel 2022 ho i fatturati di tutti i mesi, invece per il 2023 ho solo quelli di Gen, Feb, Mar, April e maggio. vorrei calcolare il totale degli stessi mesi del 2022 quindi escludendo gli altri.

come posso fare?
Grazie
Alessio
Avatar utente

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

report confronto fatturato mese con quello dell'anno precedente

Messaggio da Andrea90 »

@alessiob82

La modalità con cui calcolarlo te l’ho spiegata nel precedente messaggio.

Per un aiuto in più devi allegare un file demo con le misure che sei riuscito a realizzare fino ad ora.

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
alessiob82
Messaggi: 10 | Topic creati
Iscritto il: lun 15 gen 2024, 9:08

report confronto fatturato mese con quello dell'anno precedente

Messaggio da alessiob82 »

buongiorno @Andrea90

grazie per la disponibilità.

provo ad allegare un file prova con alcune misure che ho calcolato.
grazie ancora
Alessio
Allegati
fatturato.xlsx
(14.67 KiB) Scaricato 4 volte
prova.pbix
(84.43 KiB) Scaricato 3 volte
Avatar utente

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

report confronto fatturato mese con quello dell'anno precedente

Messaggio da Andrea90 »

Buona domenica @alessiob82,

Creati una misura che utilizzi 3 variabili:

1) Var1 --> esegue il calcolo del LASTDATE() della tabella Calendario, e lo inserisci dentro la funzione STARTOFYEAR() ed infine metti il tutto dentro SAMEPERIODLASTYEAR()

2) Var2 --> Uguale al punto 1, ma senza la necessità di utilizzare la STARTOFYEAR(). Inoltre la data su cui calcoli il LASTDATE() non è quella presa dal campo Calendario, ma dalla tabella con il fatturato.

3) Var3 --> Utilizzi la formula DATESBETWEEN() con il campo data della tabella Calendario.

In questo modo se tu selezioni l'anno 2023 i valori delle tre variabili saranno:

Var1 = 01/01/2022
Var2 = 01/08/2022
Var3 = Tutte le date della tabella calendario comprese tra Var1 e Var2.

La Var3 la utilizzi dentro alla stessa misura con

Codice: Seleziona tutto

RETURN CALCULATE([totale fatturato], Var3)
P.s. Il tutto funziona se rivedi la tua tabella fatturato.... ci sono delle righe con importo null... Se non correggi questo la Var2 ti riporterà il valore di dicembre 2023.

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
alessiob82
Messaggi: 10 | Topic creati
Iscritto il: lun 15 gen 2024, 9:08

report confronto fatturato mese con quello dell'anno precedente

Messaggio da alessiob82 »

grazie @Andrea90

se ho capito bene ho scritto la formula cosi:

Codice: Seleziona tutto

test = 
VAR var1= SAMEPERIODLASTYEAR(STARTOFYEAR(LASTDATE(Calendario3[Date])))
VAR var2= SAMEPERIODLASTYEAR(LASTDATE(fatturato[data Competenza]))
VAR var3= DATESBETWEEN(Calendario3[Date],BLANK(),MAX(fatturato[data Competenza]))
RETURN CALCULATE([fatturato totale], var3)
ma devo aver sbagliato qualcosa perchè il risultato che mi da è il totale del fatturato di tutti gli anni
dove ho sbagliato?
grazie
Alessio
Allegati
prova.pbix
(85.59 KiB) Scaricato 3 volte
fatturato.xlsx
(14.58 KiB) Scaricato 1 volta
Avatar utente

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

report confronto fatturato mese con quello dell'anno precedente

Messaggio da Andrea90 »

@alessiob82,

Il codice che alleghi nei messaggi va inserito nei tag code, per questa volta ho fatto io, la prossima dovrai cominciare a farlo tu. Se non sai come si fa leggi gli annunci di staff.

Quel DATESBETWEEN che hai scritto, spiega a voce la logica che hai applicato inserendo quei parametri che vedo.

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
alessiob82
Messaggi: 10 | Topic creati
Iscritto il: lun 15 gen 2024, 9:08

report confronto fatturato mese con quello dell'anno precedente

Messaggio da alessiob82 »

grazie @Andrea90


scusa se non l'ho inserito nei tag code. proverò a leggere gli annuncia staf capire come si fa in modo da farlo la prossima volta. grazie per averlo fatto tu.

rispetto al codice non ho capito cosa c'è di errato, potresti aiutarmi?

grazie
Alessio

ne approfitto per fare una prova

Codice: Seleziona tutto

test = 
VAR var1= SAMEPERIODLASTYEAR(STARTOFYEAR(LASTDATE(Calendario3[Date])))
VAR var2= SAMEPERIODLASTYEAR(LASTDATE(fatturato[data Competenza]))
VAR var3= DATESBETWEEN(Calendario3[Date],BLANK(),MAX(fatturato[data Competenza]))
RETURN CALCULATE([fatturato totale], var3)
Avatar utente

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

report confronto fatturato mese con quello dell'anno precedente

Messaggio da Andrea90 »

@alessiob82,
Andrea90 ha scritto: dom 28 gen 2024, 15:41 Quel DATESBETWEEN che hai scritto, spiega a voce la logica che hai applicato inserendo quei parametri che vedo.
Ti ho chiesto di spiegarmi come hai costruito quel DATESBETWEEN, perché hai messo quei 3 argomenti?
Come tutte le funzioni necessita di parametri per poter funzionare, e se non conoscevi DATESBETWEEN immagino l'avrai cercata su internet, esempio qui:
https://learn.microsoft.com/en-us/dax/d ... nction-dax

Quindi torno a chiedere, cosa rappresentano quei 3 parametri che hai scelto?

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
Rispondi