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

Don't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.

Reply
Syndicate_Admin
Administrator
Administrator

RANKX Por agrupación para un período de fecha determinado

Tengo tres tablas:

DateDimension

Empleado

Asentamiento

La tabla Employee tiene una columna con la etiqueta TrainingClass

Estoy intentando crear un rango que se actualizará dinámicamente en función del intervalo de fechas seleccionado por BilledContributions en la tabla Liquidación.

Tengo una medida llamada TotalBilledContributions:

TotalBilledContributions =
DÓNDE _StartDate = MIN(DateDimension[Fecha])
DÓNDE _EndDate = ..MAX(DateDimension[Fecha])
DEVOLUCIÓN
SUMX(
FILTRO(Asentamiento,Asentamiento[Fecha de lote] >= _StartDate && Asentamiento[Fecha de lote] <= _EndDate),
Asentamiento[Contribuciones facturadas]
)

Y tengo una columna calculada llamada RankbyTrainingClass:

RankbyTrainingClass =
DÓNDE _StartDate = MIN(DateDimension[Fecha])
DÓNDE _EndDate = ..MAX(DateDimension[Fecha])
DEVOLUCIÓN
RANKX(
FILTRO(
TODO(Empleado),
Empleado[Clase de entrenamiento] = ANTERIOR(Empleado[Clase de entrenamiento])
),
CALCULAR([TotalBilledContributions],Asentamiento[Fecha de lote] >= _StartDate && Asentamiento[Fecha de lote] <= _EndDate),
,
DESC,
Denso
)
Enlace al archivo .pbix en Google Drive: archivo PBIX
Esperaba que la clasificación se basara en la medida TotalBilledContributions decending, pero no lo estoy obteniendo como resultado. Cualquier ayuda es muy apreciada. Obtengo resultados inesperados de la siguiente manera:
EmployeeName (Nombre del empleado)TotalBilledContributions (Contribuciones Facturadas Totales)RankbyTrainingClass
Ryan K1,581.69

1

Brandon S109.52

2

Lionel R397.60

3

Will C30.60

4

Nathan H30.06

5

1 REPLY 1
Syndicate_Admin
Administrator
Administrator

Cambié la clasificación a una medida en lugar de una columna calculada y modifiqué el DAX a:

Rango =
DÓNDE _StartDate = MIN(DateDimension[Fecha])
DÓNDE _EndDate = ..MAX(DateDimension[Fecha])
DEVOLUCIÓN
CALCULAR(
RANKX(
FILTRO(
TODO(Empleado),
Empleado[Clase de entrenamiento] = SELECTEDVALUE(Empleado[Clase de entrenamiento])
),
CALCULAR([TotalBilledContributions],Asentamiento[Fecha de lote] >= _StartDate && Asentamiento[Fecha de lote] <= _EndDate),
,
DESC,
Denso
),
TODOS SELECCIONADOS(Empleado[Clase de entrenamiento])
)
Esto parece estar funcionando como se desea. Si ves algún problema, házmelo saber.

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! Prices go up Feb. 11th.

Jan25PBI_Carousel

Power BI Monthly Update - January 2025

Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.

Jan NL Carousel

Fabric Community Update - January 2025

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

Top Solution Authors