Pagina 2 di 2

Rank secondo e terzo prodotto

Inviato: dom 4 dic 2022, 9:14
da Andrea90
mariri,

Un esempio di come ottenere il colore al secondo posto (per il terzo devi semplicemente creare un'altra misura identica a questa cambiando solo il numero che vuoi visualizzare nel report, 3 invece che 2).

Codice: Seleziona tutto

=
VAR Tbl_Tot_Val =
    ADDCOLUMNS (
        SUMMARIZE ( Tabella1, Calendario[Anno], Tabella1[Color] ),
        "@TotVal", [Tot_Value]
    )
VAR Tbl_Calc_Rank =
    ADDCOLUMNS ( Tbl_Tot_Val, "@Rank", RANKX ( Tbl_Tot_Val, [@TotVal],,, DENSE ) )
VAR Result =
    SELECTCOLUMNS (
        FILTER ( Tbl_Calc_Rank, [@Rank] = 2 ),
        "Color", Tabella1[Color]
    )
RETURN
    Result
Andrea

Rank secondo e terzo prodotto

Inviato: dom 4 dic 2022, 10:00
da mariri
Grazie Andrea90, sei molto gentile.

Proporrò la tua candidatura a patrimonio UNESCO :lol:

Ciao.

Rank secondo e terzo prodotto

Inviato: dom 4 dic 2022, 11:52
da Andrea90
mariri,

Quello che ti ho fornito è solo un esempio a scopo “didattico”, in una misura che deve andare in produzione ci sono anche altri aspetti da tenere a mente (e che lascio approfondire a te), come ad esempio … cosa succederebbe se due colori diversi registrassero lo stesso rank (esempio Rosso e Blu in rank 2).

Andrea

Rank secondo e terzo prodotto

Inviato: lun 5 dic 2022, 18:18
da mariri
Grazie Andrea90 per la precisazione.

Vedrò di approfondire bene quello che mi ha indicato, facendo attenzione a cosa succede in caso di valori identici di rank.

Ciao.

Rank secondo e terzo prodotto

Inviato: lun 5 dic 2022, 21:14
da mariri
Ciao Andrea90

Penso di aver risolto, modificando la tua misura in questo modo:

Codice: Seleziona tutto

=
VAR Tbl_Tot_Val =
    ADDCOLUMNS (
        SUMMARIZE ( Tabella1; Calendario[Anno]; Tabella1[Color] );
        "@TotVal"; [Tot_Value]
    )
VAR Tbl_Calc_Rank =
    ADDCOLUMNS ( Tbl_Tot_Val; "@Rank"; RANKX ( Tbl_Tot_Val; [@TotVal];;; DENSE ) )
VAR Result =
    IF (
        HASONEVALUE ( Tabella1[Color] );
        SELECTCOLUMNS (
            FILTER ( Tbl_Calc_Rank; [@Rank] = 2 );
            "Color"; Tabella1[Color]
        );
        CONCATENATEX ( FILTER ( Tbl_Calc_Rank; [@Rank] = 2 ); Tabella1[Color]; ", " )
    )
RETURN
    Result
Che ne dici, può andare?

Grazie.

Rank secondo e terzo prodotto

Inviato: lun 5 dic 2022, 22:12
da Andrea90
mariri,

La logica utilizzata mi piace :clap: avrei usato anche io CONCATENATEX(), poi penso si possa ottimizzare in termini di sintassi (mi sembra che ci sia qualche passaggio di troppo che può essere eliminato), ma comunque per essere appena agli inizi hai dimostrato un buon impegno bravo 👏🏻

Andrea

Rank secondo e terzo prodotto

Inviato: mar 6 dic 2022, 8:18
da mariri
Ciao Andrea90

Grazie per l'incoraggiamento e soprattutto per il contributo che dai/date in questo forum, fonte di ispirazione e di conoscenza :thumbup:

Alla prossima!