MP_123
Hola,
Sé que las medidas calculadas están cambiando con respecto a su contexto.
Estoy usando una medida calculada de tipo ‘Texto’ para filtrar otra medida calculada.
Dado que su valor no es estable, el filtro con medida calculada no me da el resultado correcto.
por ejemplo; Medidas= ‘ab’
calcular (suma (x), filtro (y, columna = ‘ab’) no es lo mismo que calcular (suma (x), filtro (y, columna = Medidas)
¿Sabes por qué?
¿Cómo puedo filtrar con filtro dinámico?
¡Gracias!
v-ljerr-msft
@ MP_123
¿Cómo puedo filtrar con filtro dinámico?
Has probado el VAR función que mencioné en su hilo anterior? En este escenario, la fórmula debería ser similar a la siguiente.
=
VAR m = Measures
RETURN
CALCULATE ( SUM ( 'x' ), FILTER ( 'y', column = m ) )
Si el resultado aún no es correcto, ¿podría publicar la estructura de su tabla y las medidas que usa, y algunos datos de muestra en su caso?
Saludos
v-ljerr-msft
@ MP_123
¿Cómo puedo filtrar con filtro dinámico?
Has probado el VAR función que mencioné en su hilo anterior? En este escenario, la fórmula debería ser similar a la siguiente.
=
VAR m = Measures
RETURN
CALCULATE ( SUM ( 'x' ), FILTER ( 'y', column = m ) )
Si el resultado aún no es correcto, ¿podría publicar la estructura de su tabla y las medidas que usa, y algunos datos de muestra en su caso?
Saludos
MS_1234
En respuesta a v-ljerr-msft
Hola,
Tengo una tabla con 3 columnas
Nombre del informe | Gerente | Estado
El estado contiene valores: Pasa, No pasa, NA
Quiero calcular el% aprobado para cada gerente. NA debe calcularse en% del cálculo.
Creé una medida para calcular el total de aprobados y reprobados. e intenté crear otra medida solo para «Aprobar». Pero su mismo valor porcentual para cada gerente.
Estoy mostrando estos datos en Matrix. Por favor guíe. ¡Gracias!
tinkinc
En respuesta a v-ljerr-msft
¿Alguien puede decirme por qué funciona esto?
=
VAR m = Measures
RETURN
CALCULATE ( SUM ( 'x' ), FILTER ( 'y', column = m ) )
y esto no:
CALCULATE ( SUM ( table1[x] ), FILTER ( table1, table1[y] = measure ) )
Tenía una muestra de Excel donde funcionó bien, pero tuve que implementar su método VAR para mi modelo SSAS y powerpivot …
DesireeMaya22
En respuesta a v-ljerr-msft
Hola
Intenté lo mismo con un filtro que puede elegir en el informe (un filtro visual)
Viajes de Cir – Dest 2 = IF ([Base Ajustada Origen]= «HID», CALCULAR (COUNTROWS (Circuitos), ‘Circuitos'[MAPA DESTINO]= «HID»), 4)
Measure = Base Ajustada Origen, el valor que genera es HID
Pero no reconoce la medida como un texto. El mensaje decía que no puedo usar una medida con un visual dinámico.
¿usted me podría ayudar?
MP_123
En respuesta a v-ljerr-msft
@ v-ljerr-msft¡gracias! eres impresionante!
amalhotr
En respuesta a MP_123
VAR m = [Measure]
REGRESO
CALCULATABLE (‘Tabla 2’, ‘Tabla 2′[QUARTER]= m) No funciona con la función DAX calculada
Michiel
En respuesta a amalhotr
¿Cuál es el error que obtienes? No puede usar esto directamente en una medida, pero eso se debe a que una medida debe devolver un valor escalar, no una tabla (que es lo que devuelve CALCULATEDTABLE). Entonces, al menos debería estar envuelto en una función de agregación de tabla.
Michiel
Con la definición simple de su medida de Medidas, las dos fórmulas dan el mismo resultado.
Con CALCULATE, puede usar filtros simples directamente, como
CALCULATE(SUM(y[x]), y[column]="ab")
que es equivalente a
CALCULATE(SUM(y[x]), FILTER(ALL(y[column]), y[column]="ab"))
La diferencia entre FILTRO (y, y[column]= «ab») y FILTRO (y, y[column]=[Measures]) se reduce al contexto. En el primero, «ab» se evalúa en un contexto de fila creado iterando sobre la tabla y. En este último, la referencia a una medida introduce implícitamente un CALCULATE. Una de las cosas que hace CALCULATE es crear un contexto de filtro. En otras palabras, el contexto de fila dentro de FILTER se reemplaza por un contexto de filtro. Muchas funciones de DAX tienen un comportamiento diferente en el contexto de la fila y el contexto del filtro, como SUM: en el contexto de la fila, SUM suma todas las filas de la tabla, no solo la fila actual; pero en el contexto del filtro, SUM suma solo las filas en el contexto del filtro (y dentro de FILTER esto es solo una fila).
La creación de un filtro dinámico se realiza mediante una medida que da un resultado basado en el contexto establecido a través de la fila actual dentro de FILTER.