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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

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
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

July 2024 Power BI Update

Power BI Monthly Update - July 2024

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

July Newsletter

Fabric Community Update - July 2024

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

Top Solution Authors
Top Kudoed Authors