Pagina 1 di 1

Filtrare In Base all'ultima data disponibile

Inviato: ven 18 giu 2021, 14:03
da domemarti93
Buongiorno,
vorrei effettuare il confronto tra vendite 2021 e 2020, filtrando le vendite 2020 in base all'ultima data disponibile delle vendite 2021.
Ad esempio se le vendite di giugno 2021 sono disponibili dal 01/06/2021 al 15/06/2021, vorrei che le vendite 2020 venissero calcolate fino al 15/06/2020.
Allego un file di esempio.
Grazie a tutti

Filtrare In Base all'ultima data disponibile

Inviato: ven 18 giu 2021, 15:12
da Enrico Galli
Ciao. La tua situazione non è ottimale per questo genere di operazioni, e sicuramente si può fare meglio di quello che ho "accrocchiato" io qui sotto, comunque una possibile formula che, affiancata alle tue "vendite 2021" dà il risultato atteso, è:

Codice: Seleziona tutto

=
VAR maxdata =
    CALCULATE (
        MAX ( 'Intervallo'[Data] );
        ALL ( 'Intervallo' )
    )
VAR maxdataannoprec =
    DATE ( YEAR ( maxdata ) - 1; MONTH ( maxdata ); DAY ( maxdata ) )
VAR mindata =
    MIN ( 'Intervallo'[Data] )
VAR mindataannoprec =
    DATE ( YEAR ( mindata ); MONTH ( mindata ); DAY ( mindata ) )
VAR Result =
    CALCULATE (
        SUM ( 'Intervallo'[Vendite] );
        'Intervallo'[Data] <= maxdataannoprec;
        'Intervallo'[Data] >= mindataannoprec
    )
RETURN
    Result

Filtrare In Base all'ultima data disponibile

Inviato: ven 18 giu 2021, 15:25
da domemarti93
Ciao Enrico, ti ringrazio per la risposta. Hai qualche suggerimento per rendere la situazione ottimale? Magari con qualche esempio potrei ottimizzare il modello. Grazie

Filtrare In Base all'ultima data disponibile

Inviato: ven 18 giu 2021, 15:30
da Andrea90
Ciao domemarti93,

Hai provato a dare un’occhiata a questa discussione, per vedere come impostare il modello, il calcolo che devi fare mi sembra simile a quello richiesto?

viewtopic.php?f=9&t=434

Andrea

Filtrare In Base all'ultima data disponibile

Inviato: ven 18 giu 2021, 16:27
da domemarti93
Ciao Andrea,
ho provato ad adattare al mio caso quanto riportato nella discussione segnalata.
Ho utilizzato le funzioni SAMEPERIODLASTYEAR e DATESBETWEEN.
Purtroppo in questo modo non riesco a raggiungere ancora il risultato desiderato.

Filtrare In Base all'ultima data disponibile

Inviato: ven 18 giu 2021, 16:33
da Andrea90
Ciao domemarti93,

Hai creato la tabella calendar come da esempio ?

Andrea

Filtrare In Base all'ultima data disponibile

Inviato: ven 18 giu 2021, 17:17
da domemarti93
Ciao Andrea,
purtroppo ho sempre lo stesso risultato. Non so dove sbaglio.

Filtrare In Base all'ultima data disponibile

Inviato: ven 18 giu 2021, 17:57
da Andrea90
Ciao domemarti93,

Senza il file di esempio si fa fatica, anche perché nelle formule che hai girato c'è il riferimento alla tabella Intervallo, che non è la tabella Calendario che ti serve per poter operare con le TimeIntelligence functions.

Una formula che proverei è una simile a questa:

Codice: Seleziona tutto

=
VAR MaxDate =
    MAXX ( ALL ( Dati[Data] ); Dati[Data] )
VAR CurrDate =
    LASTDATE ( 'Calendar'[Data] )
VAR LastYearDate =
    DATEADD ( CurrDate; -1; YEAR )
VAR Result =
    IF ( CurrDate <= MaxDate; CALCULATE ( [#TotVal]; LastYearDate ) )
RETURN
    Result
A presto,
Andrea