Pagina 1 di 1

Come usare RANKX

Inviato: mar 8 feb 2022, 13:21
da alex77
Buongiorno a tutti,
vorrei usare la funzione RANKX, ma risulta molto lenta nell'elaborazione, presumo perchè è un iteratore e le righe della fact table sono "molte", però volevo una conferma da chi ha più esperienza ed eventualmente consigli sull'utilizzo "corretto", se sto prendendo qualche cantonata. Il modello dati è questo:
Dimensioni:
Articoli (65k righe)
Fornitori (2.7k righe)

Fatti:
IngressiMateriali (700k righe), composto da: articolo, fornitore, data, qta, valore

Voglio fare il ranking in base al fatturato, come somma di "valore"

Codice: Seleziona tutto

 Fatturato = sum(IngressiMateriali[valore])
e uso questa formula DAX per il ranking degli articoli:

Codice: Seleziona tutto

Ranking Articoli su Fatturato = 
VAR vRank = RANKX(ALL(dimArticoli[Articolo] ),[Fatturato])

VAR vResult = IF('Misure DAX'[Fatturato]<> BLANK(),vRank)

RETURN
vResult
al momento inserisco il ranking in una matrice con in riga Fornitore e articolo. Evidenzio che, in particolare nella dimensione Articoli, ci sono codici articolo che non sono presenti nella tabella fatti (sono codici di produzione interna, ma non ho sistemi "sicuri" per escluderli, anche perchè in alcuni casi possono passare da interni ad acquisto, in periodi diversi).
Il ranking lo volevo usare per creare poi un abc degli articoli... ma se già al primo step la (non) velocità è questa... mi tocca fermarmi.

Grazie per un eventuale aiuto