Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Estoy tratando de contar filas de una columna de texto con 2 filtros que comprueban otras columnas de 2 int con valores que no son 0, pero se produce un error.
MSErrorsT = COUNTROWS(FILTER('datafsa list_sessions','datafsa list_sessions'[# Errores] <> "0" y 'datafsa list_sessions'[# Advertencias] <> "0"))
MdxScript(Model) (5, 84) Error de cálculo en la medida 'datafsa list_sessions'[MSErrorsT]: las operaciones de comparación DAX no admiten la comparación de valores de tipo Integer con valores de tipo Text. Considere la posibilidad de utilizar la función VALUE o FORMAT para convertir uno de los valores.
He tratado de hacerlo con tarjetas, pero si pondúo 2 filtros en la misma tarjeta, sólo uno funciona.
Si pongo los filtros por separado, funciona, pero cuando agrego el otro solo aplica el primero.
¿No es posible aplicar 2 filtros de columna en la misma tarjeta?
Solved! Go to Solution.
Allí, @mcflurry
De acuerdo con su descripción, puedo entender más o menos su requisito, parece que desea obtener el valor de suma del recuento de los errores y advertencias, ¿verdad?
Si es así, creo que definir las variables de la medida puede ayudar, puede intentar modificar la medida de esta manera:
MSErrorsT =
Var _Errors=
CALCULATE(
COUNTROWS( 'datafsa list_sessions' ),
FILTER(
'datafsa list_sessions',
'datafsa list_sessions'[# Errors] <> 0
)
)
Var _Warnings=
CALCULATE(
COUNTROWS( 'datafsa list_sessions' ),
FILTER(
'datafsa list_sessions',
'datafsa list_sessions'[# Warnings] <> 0
)
)
RETURN
_Errors+_Warnings
Y puedes comprobar si puedes conseguir lo que quieres.
Si no es así, puede publicar algunos datos de ejemplo (sin datos confidenciales) y el resultado esperado.
Cómo obtener respuestas rápidamente a su pregunta
¡Muchas gracias!
Saludos
Equipo de soporte comunitario _Robert Qin
Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Allí, @mcflurry
De acuerdo con su descripción, puedo entender más o menos su requisito, parece que desea obtener el valor de suma del recuento de los errores y advertencias, ¿verdad?
Si es así, creo que definir las variables de la medida puede ayudar, puede intentar modificar la medida de esta manera:
MSErrorsT =
Var _Errors=
CALCULATE(
COUNTROWS( 'datafsa list_sessions' ),
FILTER(
'datafsa list_sessions',
'datafsa list_sessions'[# Errors] <> 0
)
)
Var _Warnings=
CALCULATE(
COUNTROWS( 'datafsa list_sessions' ),
FILTER(
'datafsa list_sessions',
'datafsa list_sessions'[# Warnings] <> 0
)
)
RETURN
_Errors+_Warnings
Y puedes comprobar si puedes conseguir lo que quieres.
Si no es así, puede publicar algunos datos de ejemplo (sin datos confidenciales) y el resultado esperado.
Cómo obtener respuestas rápidamente a su pregunta
¡Muchas gracias!
Saludos
Equipo de soporte comunitario _Robert Qin
Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hey @mcflurry ,
tal vez intente filtrar para los números (<> 0 ) y no la cadena (<> "0"):
MSErrorsT = COUNTROWS(FILTER('datafsa list_sessions','datafsa list_sessions'[# Errors] <> 0 && 'datafsa list_sessions'[# Warnings] <> 0))
Hey @selimovd ,
Hace exactamente lo mismo que con los filtros de tarjeta.
El primer resultado del filtro es 8, y el segundo es 260, debe ser 268.
Pero el resultado es 8.
Hey @mcflurry ,
pero ya no se produce un error?
Creo que estaba demasiado centrado en el error y no en la medida 😉.
Pruebe la siguiente medida:
MSErrorsT =
CALCULATE(
COUNTROWS( 'datafsa list_sessions' ),
FILTER(
'datafsa list_sessions',
'datafsa list_sessions'[# Errors] <> 0 && 'datafsa list_sessions'[# Warnings] <> 0
)
)
Hey @selimovd ,
Sí, lo siento, sin las citas funcionó.
Pero todavía muestra sólo las alertas, no suma las advertencias. El resultado sigue siendo 8.
Funciona si creo 3 medidas.
1 para advertencias, resultado=260
1 para errores, result=8
1 para el error total +advertencias = 268
¿No es posible con 1 sola medida?