Problema con la sintaxis de la expresión

Un usuario Pregunto ✅

escalas

Hola a todos,

Soy nuevo en Power BI y quiero hacer una nueva medida, pero las expresiones que probé no funcionan. Quiero contar y luego sumar los resultados de diferentes filtros. Como en el siguiente ejemplo de Qlik Sense, quiero contar los valores en ActivityCode1 aplicando los dos filtros de las otras dos columnas y luego agregarlo a la otra expresión.

contar({[ActivityType1]={‘Reparación de campo’,’Tabla de ayuda’,’Actividad de soluciones’},
[ActivityCode1]={‘Cliente’, ‘Emergencia’, ‘Soporte en el sitio’,’Repetir llamada’}>}[ActivityCode1]) +

contar({[ActivityStatus1]={‘Cancelado’},
[SRType1]={‘Servicio’},[SRProductName1]={‘3R56′,’3R57′,’416898’}>}[SRProductName1])

Gracias por adelantado.

laurentcouarou

En respuesta a escalas

Estabas lo suficientemente cerca. Pruebe lo siguiente.

CALCULATE(COUNT(printingmensual[ActivityStatus1])
       ;printingmensual[ActivityStatus1]="Done" 
       ;printingmensual[ActivityCode1]="Call Open" 
) 

La razón por la que tu intento falló es que:

CALCULATE(COUNT(printingmensual[ActivityStatus1])
       ;printingmensual[ActivityStatus1]="Done" 
) 

es un atajo para la siguiente expresión.

CALCULATE(COUNT(printingmensual[ActivityStatus1])
       ;FILTER( ALL(printingmensual[ActivityStatus1])
                     ; [ActivityStatus1]="Done" 
       )
)

Sin embargo, no existe tal atajo para los casos en los que se usan 2 o más columnas en una expresión de filtro.

Hola @escalas,

Como no estamos familiarizados con Qlik Sense, sería mejor si pudiera compartir la tabla de datos de muestra y los resultados esperados para que pensemos en DAX.

Atentamente,
qiuyun yu

esputo

la primera parte por lo que puedo ver seria

CALCULATE(COUNT([activitytype1],[activitytype1]="Field Repair"|| [activitytype1]="Help Desk"||[activitytype1]="Solutions Activity")

esto es algo así como una función countif. Configure el Conteo en la primera parte y los filtros por columna en la segunda.

Lamentablemente no entendí tu segunda pregunta. Pero tal vez esto te ayude un poco.

escalas

En respuesta a esputo

Gracias por tu respuesta @spuder,

Eso es más o menos lo que estaba buscando pero quiero filtrar diferentes columnas y hacer el conteo en una de ellas. Algo como esto:

TotalVa = CALCULAR(CONTAR(imprimiendomensual[ActivityStatus1]);impresiónmensual[ActivityStatus1]=»Terminado» && imprimiendomensual[ActivityCode1]=»Llamada abierta» )

Pero aparece el error ‘solo se puede usar una sola columna en una expresión verdadera/falsa’. ¿Alguna idea de cómo puedo filtrar diferentes columnas en un COUNT?

laurentcouarou

En respuesta a escalas

Estabas lo suficientemente cerca. Pruebe lo siguiente.

CALCULATE(COUNT(printingmensual[ActivityStatus1])
       ;printingmensual[ActivityStatus1]="Done" 
       ;printingmensual[ActivityCode1]="Call Open" 
) 

La razón por la que tu intento falló es que:

CALCULATE(COUNT(printingmensual[ActivityStatus1])
       ;printingmensual[ActivityStatus1]="Done" 
) 

es un atajo para la siguiente expresión.

CALCULATE(COUNT(printingmensual[ActivityStatus1])
       ;FILTER( ALL(printingmensual[ActivityStatus1])
                     ; [ActivityStatus1]="Done" 
       )
)

Sin embargo, no existe tal atajo para los casos en los que se usan 2 o más columnas en una expresión de filtro.

Deja un comentario

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