Pagina 2 di 2

Filtri separati in una pagina descrizione comando

Inviato: gio 18 apr 2024, 9:21
da Andrea90
@Capo79,

Una tabella Calendario va poi utilizzata ....

Questa è la tua formula:

Codice: Seleziona tutto

Prova =
CALCULATE (
    SUMX ( 'Ultimi 10 FY', 'Ultimi 10 FY'[€ Tot] ),
    FILTER (
        'Ultimi 10 FY',
        'Ultimi 10 FY'[Anno_FY] = MIN ( 'Ultimi 10 FY'[Anno_FY] )
    ),
    REMOVEFILTERS ( 'Ultimi 10 FY'[Data Vendita] )
)
Stai rimuovendo il filtro utilizzando la [Data Vendita] che è un campo della tabella dei fatti, quando invece il filtro è attivato dal campo [Mese] della tabella Calendario.

Seconda cosa (non risolverai mettendo il REMOVEFILTERS() del campo [Mese] della tabella Calendario). Mi spieghi perché applichi quel FILTER() sempre sulla tabella dei fatti e non sulla tabella Calendario? Visto che è lei che ha i riferimenti temporali.

Andrea

Filtri separati in una pagina descrizione comando

Inviato: gio 18 apr 2024, 9:42
da Capo79

Codice: Seleziona tutto

rova = 
CALCULATE(
 SUMX(
     'Ultimi 10 FY','Ultimi 10 FY'[€ Tot]),
         FILTER(Calendario,Calendario[Colonna] =MIN('Ultimi 10 FY'[Anno_FY])),
         REMOVEFILTERS('Calendario'[Mese])
                 
 )
Ho provato a modificarla cosi, ma il filtro mese non viene disattivato.....

Filtri separati in una pagina descrizione comando

Inviato: gio 18 apr 2024, 9:59
da Andrea90
@Capo79,

1) Comincia ad utilizzare le variabili. Non scrivere FILTER.... = MIN(...)
tanto quel valore che tu riscontri per min è lo stesso ad ogni iterazione --> FILTER() è un iteratore e dunque ti sta leggendo la tabella Calendario (attiva nel contesto filtro analizzato) riga per riga. Quindi salvati il valore di MIN dentro una variabile ad uno step precedente e poi usa questa variabile per testare la tua condizione.

2) Tutto quel SUMX() lo salverei in realtà in una misura ad hoc e poi la richiamerei in questa che stai creando così da ridurre la lunghezza del codice.

3) Quel MIN() perché lo guardi ANCORA sulla tabella dei fatti ??? Ti ho pur scritto di considerare la tabella Calendario... le tabelle dei fatti dovrebbero contenere solo i campi che aggreghi (quelli numerici), tutto ciò che riguarda le dimensioni andrebbe preso dalle tabelle dimensionali che sono quelle che si occupano di filtrare i dati.

4) Al punto 1 ti ho sottolineato "attivo nel contesto filtro analizzato" ... c'è un motivo importantissimo ovvero quando tu selezioni un Mese da quell'oggetto filtro che hai creato, la formula che hai scritto: FILTER(Calendario,Calendario[Colonna], .... ) che cosa sta considerando come records?

Andrea