¿Cómo usar el filtro con múltiples valores en DAX?

Un usuario Pregunto ✅

Anónimo

Hola chicos,

Estoy tratando de crear una medida TotalExaminationBacklog que cuenta todos los examinationsID con el estado WAI, VER, APP, HEL y SCH.

Pero parece que mi medida (ver imagen a continuación) no da ningún resultado. ¿alguna sugerencia?

Gracias !

2017-08-04 18_48_49-CapacityInsights - Power BI Desktop.png

En respuesta a Anónimo

Es culpa mía que tengas que usar llaves {…} en lugar de (…)

Saludos

Oye,

mi favorito actual para verificar si un valor está contenido en un conjunto de valores está usando el operador IN () más nuevo

Entonces puedes escribirlo así

COUNTX(
  'Yourtable'
  ,'Yourtable'[YourColumn] IN ("WAI", "VER", "APP","HEL", "SCH")
) 

Editado 2017-11-09 (inicio):

La declaración anterior no funcionará debido a un tipo, la declaración correcta usa llaves, por qué se explica en mi última publicación. La declaración correcta se verá así

COUNTX(
  'Yourtable'
  ,'Yourtable'[YourColumn] IN {"WAI", "VER", "APP","HEL", "SCH"}
)

Editado 2017-11-09 (final):

Suponiendo que el ESTADO proviene de una cortadora, esto también sería posible

COUNTX(
  'Yourtable'
  ,'Yourtable'[Yourcolumn] IN (ALLSELECTED('MaybeAnotherTable'[ColumnUsedInSlicer]))
)

Quizás esta idea te ayude a dar otra idea

Anónimo

En respuesta a TomMartens

¡¡Hola Tom!!

Gracias por todas sus contribuciones a este sitio. Me preguntaba si puedes ayudarme. Yo he tratado

TotalFires = COUNTX (Consulta1, Consulta1[INCIDENT_CATEGORY] EN {«Incendio accidental en viviendas»,
«Incendio accidental no doméstico»,
«Otro incendio primario accidental»,
«Incendio accidental de vehículos»,
«Pequeño incendio accidental»,
«Fuego de chimenea»,
«Fuego deliberado en la vivienda»,
«Incendio no doméstico deliberado»,
«Pequeño fuego deliberado»,
«Otro fuego primario deliberado»,
«Incendio deliberado de vehículos»})
y se devuelve el siguiente error cuando intento agregarlo a una visualización:
La función COUNTX no puede trabajar con valores de tipo booleano
No creo que mi columna INCIDENT_CATEGORY tenga ningún booleano. ¿Puedes ayudar?
Estoy tratando de obtener un conjunto / recuento filtrado de INCIDENT_CATEGORY donde INCIDENT_CATEGORY contiene los valores en mi expresión
¡Gracias!
Dan

En respuesta a Anónimo

Hola @Anónimo,

tal vez esta medida le proporcione lo que busca:

TotalFires = 
SUMX(Query1,
IF(Query1[INCIDENT_CATEGORY] IN 
{"Accidental Dwelling Fire",
"Accidental Non Domestic Fire",
"Accidental Other Primary Fire",
"Accidental Vehicle Fire",
"Accidental Small Fire",
"Chimney Fire",
"Deliberate Dwelling Fire",
"Deliberate Non Domestic Fire",
"Deliberate Small Fire",
"Deliberate Other Primary Fire",
"Deliberate Vehicle Fire"}
, 1 , BLANK())
)

Si esto no resuelve su problema, inicie una nueva pregunta.

El error se debe al hecho de que COUNTX no puede contar los BOOLEAN, la columna IN {…} devuelve un booleano

Saludos,
Tomás

Anónimo

En respuesta a TomMartens

@TomMartens

mculloa

En respuesta a TomMartens

Gracias por esta respuesta, específicamente relacionada con el uso de «en («valor», «valor», «valor»,…)«.

Estaba luchando por encontrar una alternativa al uso de || y «o»

Noté en mi consulta que necesitaba modificar la sintaxis usando un corchete porque el sistema no aceptaba los paréntesis:

4_Stage_Count = CALCULATE (COUNT (Oportunidades[AccountId]), Oportunidades[Stage] en {«Closed Won», «Closed Lost»})

Avísame si alguien sabe por qué () tuvo que ser reemplazado por el {}.

jkasavan

En respuesta a mculloa

@mculloa {} son necesarios para indicar que está creando una lista de artículos.

En respuesta a mculloa

Oye,

básicamente, mi primera publicación contiene un error tipográfico (he tenido prisa).

EN

búsquedas en tabla de columnas,

La forma más sencilla de definir una tabla con una sola columna es utilizar {«rizado», «llaves»}. Este pequeño ejemplo crea una tabla con una columna y dos filas. Tenga en cuenta que la tabla se define sin un nombre de tabla y sin un nombre para la columna.

Editaré mi publicación de inmediato.

Saludos

Tomás

Anónimo

En respuesta a TomMartens

solo tengo la solución para este caso ..

Medida 3 = CALCULAR ([TotalExaminations];
Exámenes[exa_StatusID] = «WAI» ||
Exámenes[exa_StatusID] = «VER» ||
Exámenes[exa_StatusID] = «APLICACIÓN» ||
Exámenes[exa_StatusID] = «HEL» ||
Exámenes[exa_StatusID] = «SCH»)

Gracias de todos modos chicos!

Anónimo

En respuesta a TomMartens

Hola @Anónimo,

Gracias por su respuesta.

lamentablemente las ideas dadas no funcionan 😞

por favor revise la imagen de abajo

2017-08-07 11_06_32-CapacityInsights - Power BI Desktop.png

En respuesta a Anónimo

Es culpa mía que tengas que usar llaves {…} en lugar de (…)

Saludos

nilimarodrigues

En respuesta a TomMartens

Resolvió mi problema :). ¡Gracias!

olesojg

Al filtrar por ID, intente lo siguiente:

O(

Explicaciones[StatusID] = «WAI»,
Explicaciones[StatusID] = «VER»,

Explicaciones[StatusID] = «APLICACIÓN», etc.

)

Creo que de la forma en que lo tiene, está concatenando todos los valores en 1 cadena, que no existe.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *