Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get certified in Microsoft Fabric—for free! For a limited time, the Microsoft Fabric Community team will be offering free DP-600 exam vouchers. Prepare now

Reply
jhuici
Frequent Visitor

Problema sin resolver con RANKX en DAX, valores repetidos sin resultado requerido

Buenas gente! 
Necesito una ayuda con lo siguiente en DAX. Tengo la tabla presentada a continuación con los datos de montos de cada crédito y sus correspondientes datos de Montos y Fechas de Liquidación y Otorgamiento.

 

jhuici_2-1685542262010.png

 

Como lo visualizan la medida RankX (  = RANKX(ALLSELECTED('Créditos'),[Montos],,DESC,skip)  ) es correcta pero busco distinguir aquellos con mismos montos de igual manera. 

Como podría utilizar las fechas para realizarlo?
Yo intenté de la siguiente manera sin resultado:
Rank =

VAR Montos = [Montos]
VAR MaxLiqFilter = FORMAT(CALCULATE(MAX('Créditos'[Fecha Liquidacion]),REMOVEFILTERS()),"#,####0")/10000
VAR MaxOtorgFilter = FORMAT(CALCULATE(MAX('Créditos'[Fecha Otorgamiento]),REMOVEFILTERS()),"#,####0")/10000
VAR MaxLiq = FORMAT(CALCULATE(MAX('Créditos'[Fecha Liquidacion])),"#,####0")/10
VAR MAxLiqP = IF(MaxLiq<0,0,MaxLiq) //Al tener fechas anteriores a 1900 por error da negativos
VAR MaxOtorg = FORMAT(CALCULATE(MAX('Créditos'[Fecha Otorgamiento])),"#,####0")/10
VAR MaxOtorgP = IF(MaxOtorg<0,0,MaxOtorg)  //Al tener fechas anteriores a 1900 por error da negativos
VAR _table =
    ADDCOLUMNS( ALLSELECTED('Créditos'),
        "@Rank Value",(Montos*MaxLiqFilter + MAxLiqP )*MaxOtorgFilter+ MaxOtorgP)
VAR ValorActual = (Montos*MaxLiqFilter + MAxLiqP )*MaxOtorgFilter+ MaxOtorgP
VAR resultado = RANKX(_table,[@Rank Value],ValorActual)
return
resultado

jhuici_3-1685542309181.png

 


Como ven ahora logre que RankX 2 Valor me distinguiera tanto montos y valores de fechas, pero al utilizar RANKX para esos valores no me resuelve correctamente. 

En fin, busco ver el error que estoy cometiendo y como solucionarlo de alguna otra manera.
Desde ya, muchas gracias



1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

La nueva función RANK le permite utilizar múltiples criterios para la clasificación, por ejemplo:

Rank measure =
RANK (
    SKIP,
    ALLSELECTED ( 'Credits' ),
    ORDERBY ( [AmountsDiv1000], DESC, 'Credits'[Fecha Liquidation], DESC )
)

View solution in original post

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

La nueva función RANK le permite utilizar múltiples criterios para la clasificación, por ejemplo:

Rank measure =
RANK (
    SKIP,
    ALLSELECTED ( 'Credits' ),
    ORDERBY ( [AmountsDiv1000], DESC, 'Credits'[Fecha Liquidation], DESC )
)

Muchas gracias!! Hace 48hs estaba intentandolo sin resolución

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.

Nov PBI Update Carousel

Power BI Monthly Update - November 2024

Check out the November 2024 Power BI update to learn about new features.

October NL Carousel

Fabric Community Update - October 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors