Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Hola a todos,
Tengo un problema con el cálculo de la suma de promedios pero, por más que he buscado, no he encontrado nada que me lo solucione.
Quiero sacar unos datos de salarios, que en el nivel más bajo de la jerarquía salga el valor promedio de los empleados pero a medida que suba en la jerarquía, me sume esos valores y no me dé el promedio de los que están debajo.
Es decir, en el nivel mas bajo de la jerarquia Tipo Retribución, quiero que me muestre los promedios (he usado una medida average del valor) pero, hacia arriba de la jerarquía, quiero tener la suma de esos promedios. Lo he intentado con una medida condicionada pero no sé con qué función sacar que me sume los datos a partir del promedio.
En mi ejemplo, los datos objetivos que necesitaría son los que he marcado en verde (en amarillo lo que me da que no es correcto):
Espero haberme explicado bien y muchas gracias por leeros este mensaje.
Saludos,
Berta
Solved! Go to Solution.
@Syndicate_Admin , No muy claro.
Pero si lo necesita, avg por encima del empleado y la suma antes de eso
luego AverageX(Values(Employee[Employee]), [Sum Measure])
O bien, puede utilizar ISINSCOPE para cambiar de medida
https://www.kasperonbi.com/use-isinscope-to-get-the-right-hierarchy-level-in-dax/
Puede crear diferentes medidas para obtener resultados correctos para cada jerarquía. A continuación, utilice la función ISINSCOPE() o ISFILTERED() para devolver una medida diferente para la jerarquía correspondiente.
Por ejemplo:
Measure =
VAR avg1 =
AVERAGEX ( ALLEXCEPT ( 'table', 'table'[hierarchy1] ), 'table'[value] )
VAR avg2 =
AVERAGEX ( ALLEXCEPT ( 'table', 'table'[hierarchy2] ), 'table'[value] )
VAR avg3 =
AVERAGEX ( ALLEXCEPT ( 'table', 'table'[hierarchy3] ), 'table'[value] )
RETURN
SWITCH (
TRUE (),
ISFILTERED ( 'table'[hierarchy1] ), avg1,
ISFILTERED ( 'table'[hierarchy2] ), avg2,
ISFILTERED ( 'table'[hierarchy3] ), avg3
)
Saludos
Arrendajo
Buenos días,
He probado con la solución que me has pasado, pero creo que hago algo mal porque no me reconoce la función ISFILTERED. No sé si es que no tengo bien creada la jerarquía o no hago referencia a ella correctamente. (estoy probando con la mediana pero con el averagex me ocurre lo mismo)
Gracias!!
En primer lugar, disculpa por haber tardado tanto en contestar. Soy bastante torpe en el foro.
Muchas gracias por la respuesta.
Funciona también para las medianas? Con Medianx?
Saludos y muchas gracias de nuevo.
@Syndicate_Admin , No muy claro.
Pero si lo necesita, avg por encima del empleado y la suma antes de eso
luego AverageX(Values(Employee[Employee]), [Sum Measure])
O bien, puede utilizar ISINSCOPE para cambiar de medida
https://www.kasperonbi.com/use-isinscope-to-get-the-right-hierarchy-level-in-dax/