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

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
Syndicate_Admin
Administrator
Administrator

Dax para definir el rango en función de 2 condiciones

Hola a todos,

Tengo un requisito en el que necesito clasificar al empleado en función del total de tareas y los días mínimos tomados.

A continuación se muestran los datos:

EmpleadoTarea totalDías mínimos tomados
John3220
Bethany2032
Johnny2520
Claire3015

El resultado es el siguiente:

EmpleadoTarea totalDías mínimos tomadosRango
John32201
Bethany20324
Johnny25203
Claire30152

La clasificación debe basarse en las siguientes condiciones:

1. Busque el valor más alto en la columna de tareas totales

2.Compruebe el número mínimo de días tomados en la columna Días mínimos tomados

Sobre la base de estas condiciones, el rango se definirá como se indica anteriormente. Si la condición es verdadera, 1er rango y así sucesivamente para todos los registros de la tabla, dando rango en secuencia en función de la condición definida.

Por favor, ayuda.

Gracias

15 REPLIES 15
Natalie_iTalent
Administrator
Administrator

This response was in Spam Quarantine and is a duplicate false positive.

Syndicate_Admin
Administrator
Administrator

ThxAlot_0-1705742430301.pngThxAlot_1-1705742505887.png

Segundo dax que da error Wheeras ratio Rango DAX Clasificación más baja como 1 y más alta como 4

me está dando el empleado más bajo tiene el rango más alto.

Syndicate_Admin
Administrator
Administrator

¿Por qué John es el primero y Claire el segundo? Porque la media me muestra a Claire en primera posición

Gracias por lo destacado. Fue por error. El resultado debería ser el siguiente:

EmpleadoTarea totalDías mínimos tomadosRango
John32202
Bethany20324
Johnny25203
Claire30151

Sin embargo, no consideraremos la tarea promedio, sino la proporción: días mínimos tomados.

Pruebe esto:

  1. Cree una medida nem con el siguiente código:
    Promedio = PROMEDIOX(Datos,DIVIDIR(Datos[Días mínimos tomados],Datos[Tarea total]))
  2. Cree otra medida con el siguiente código:
    Rango = RANKX(TODOS SELECCIONADOS(Datos[Empleado]),[Promedio],,ASC)
  3. Cree una tabla de matriz y use employee para las filas y la medida Rank para los valores

Bibiano_Geraldo_0-1705742954499.png

Nota: Reemplace "Datos" con el nombre de su tabla

Me da el mismo promedio para todos los empleados que 2.

Los datos reales son los que se muestran a continuación y el rango debe definirse en consecuencia.

EmpleadoTarea totalDías mínimos tomadosRango
John32201
Bethany20325
Johnny7207
Claire24354
Tiffany24323
Policía17586
Arrendajo28202

@sizi

Pruebe esta medida:

Rank Emp = 
IF(
    ISINSCOPE( Table29[Employee] ),
    RANKX( 
        ALLSELECTED( Table29[Employee] ) ,
        DIVIDE(
            CALCULATE( SUM( Table29[Total Task] ) ),
            CALCULATE( SUM( Table29[Min Days Taken] ) )
        )
    )
)

Fowmy_0-1705751166356.png



Perfecto. Funcionó. Muchas gracias. 👍

@sizi

¡Me alegro de que funcione!
Por favor, acepte mi respuesta como la solución para que sea beneficiosa para otros con las mismas preguntas



algo que hiciste mal, muéstrame tus medidas para asegurarte de que son correctas. Acabo de actualizar la tabla como se puede ver a continuación

Bibiano_Geraldo_0-1705744492998.png

Hola, tengo otro escenario en el que necesito obtener el promedio de la columna de 2 rangos y definir el rango general con un valor bajo como el más alto.

A continuación se muestran los datos:

EmpleadoRango de demandaSLARankRango BA
Claire423
Chris444
Roca264
Bella634.5
Harry714
Stefanie153

El resultado será:

EmpleadoRango de demandaSLARankDemanda media+SLAClasificación general
John232.51
Claire4232
Chris4443
Roca2643
Bella634.54
Harry7143
Stefanie1532

RangoPromedio = RANKX( ALL('Tabla'[Empleado]), [Rango BA], , ASC ) ,,

Probé varios DAX, pero este estuvo cerca, sin embargo, todavía se salta la secuencia de clasificación del 1 al 10.

Por favor, ayuda.

Gracias

Funcionó. Hice algo mal. Sin embargo, quiero excluir al empleado 134 de la tabla y la clasificación debe definirse en consecuencia.

Actualmente el resultado es el siguiente:

EmpleadoTarea totalDías mínimos tomadosRango
John32202
Bethany20326
Johnny7208
Claire24355
Tiffany24324
Policía17587
Arrendajo28203
1342 1

¿Podría ayudar a filtrar al empleado y actualizar la clasificación en consecuencia?

Gracias. Agradezco su ayuda. 👍

Hola. Sí, funcionó. Muchas gracias. Sin embargo, quiero excluir al empleado 134 de la clasificación, ya que los datos a continuación lo clasifican en el 1º.

EmpleadoTarea totalDías mínimos tomadosRango
John32202
Bethany20326
Johnny7208
Claire24355
Tiffany24324
Policía17587
Arrendajo28203
1342 1

Agradezco toda su ayuda. Probé varios dax pero fallé.

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!

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.

Top Solution Authors
Top Kudoed Authors