¿Cómo puedo filtrar usando la salida de un VAR en DAX?

Un usuario Pregunto ✅

TomEnns

Tengo tres campos de datos

  • Projecto ID
  • ActualHours
  • BudgetHours

Estoy tratando de escribir una medida que devuelva el recuento distinto de ProjectID cuando SUM (BillableHours) – SUM (NonBillableHours) es mayor que 0.

Intenté poner el cálculo de la diferencia en una medida propia y traté de usar esa medida como filtro en otra medida, pero parece que no puedo usar una medida como filtro. O al menos no puedo hacer que funcione. También probé esto:

# Projects Over Budget = 
VAR HrsVar = (SUM(Phase[ActualHrs]) - SUM(Phase[BudgetHours]) > 0 )
RETURN
CALCULATE(DISTINCTCOUNT(Project[ProjectID]),HrsVar > 0)

Pero obtengo un error de expresión Verdadero / Falso.

Cualquier idea sería útil.

Gracias,

mwegener

Hola @TomEnns,

prueba esto.

La función SUMX itera sobre cada proyecto único de la tabla de proyectos y luego suma los proyectos por encima del presupuesto.

# Projects Over Budget =
SUMX (
    Project,
    IF (
        CALCULATE ( SUM ( Phase[ActualHours] ) - SUM ( Phase[BudgetHours] ) ) > 0,
        1,
        BLANK ()
    )
)

mwegener

Hola @TomEnns,

prueba esto.

La función SUMX itera sobre cada proyecto único de la tabla de proyectos y luego suma los proyectos por encima del presupuesto.

# Projects Over Budget =
SUMX (
    Project,
    IF (
        CALCULATE ( SUM ( Phase[ActualHours] ) - SUM ( Phase[BudgetHours] ) ) > 0,
        1,
        BLANK ()
    )
)

TomEnns

En respuesta a mwegener

Hola, gracias por la respuesta, parece que hago lo que quiero, sin embargo, ahora veo fallas en mis datos. El valor recuperado de la medida es «27», sin embargo, como puede ver en mi imagen a continuación, solo tengo 20 proyectos en los que esto parece ser cierto. La columna HrsVar es una medida calculada de la siguiente manera:

HrsVar = (SUM(Phase[ActualHrs]) - SUM(Phase[BudgetHours])

2021-07-20 15_21_57-Project KPIs - Power BI Desktop.png

¿Alguna idea sobre qué podría estar causando esto?

mwegener

En respuesta a TomEnns

Hola @TomEnns,

por favor tome una captura de pantalla con además la medida «# Proyectos por encima del presupuesto» en las columnas de la matriz para ver qué proyectos se cuentan.

TomEnns

En respuesta a mwegener

Ok, estás en algo, parece que para cada fase que tiene un excedente, también cuenta como un proyecto que tiene un excedente, aunque cuando sumas el total del proyecto, el excedente es negativo como total. EN el siguiente caso, el HrsVar total para PPS-PH1 es actualmente -44, sin embargo, hay fases individuales dentro de las que se superó. Espero contar el proyecto solo cuando haya un presupuesto excesivo en general, ignorando si algunas fases dentro del presupuesto superaron el presupuesto.

2021-07-20 15_48_24-Project KPIs - Power BI Desktop.png

mwegener

En respuesta a TomEnns

Hola @TomEnns,

en total, solo se debe contar el proyecto; si el proyecto se divide más a nivel de fila, la medida se calcula para cada fila con el filtro adicional.

¿Qué 27 proyectos se cuentan?

TomEnns

En respuesta a mwegener

Aquí está la lista de los proyectos contados. Se espera que los que están resaltados en rojo sean contados, los que no están en rojo no deben contarse. Los que no están en rojo tienen fases dentro de ellos son sobrepresupuesto, pero el total general no lo es. Parece que si no hay fases de sobrepresupuesto, la medida funciona correctamente como se ve en los 5 proyectos en la parte inferior de la matriz.

2021-07-20 16_05_20-Project KPIs - Power BI Desktop.png

mwegener

En respuesta a TomEnns

Hola @TomEnns,

¿Cuál es la columna clave de la tabla de proyectos?

TomEnns

En respuesta a mwegener

Projecto ID

mwegener

En respuesta a TomEnns

Hola @TomEnns,

¿Puedes compartir una captura de pantalla de la vista de tu modelo?

TomEnns

En respuesta a mwegener

sí, soy nuevo en powerBI, así que es probable que haya hecho algo mal aquí.

2021-07-20 16_22_37-KPI del proyecto - Power BI Desktop.png

mwegener

En respuesta a TomEnns

¿Puede comprobar si las dos medidas realmente utilizan las mismas columnas para el cálculo?

TomEnns

En respuesta a mwegener

Bueno, ese es el boleto, estaba usando un campo diferente para la primera medida. Ese es el problema con la etiqueta similar; los campos ed, supongo. Me disculpo por tomarse todo su tiempo en esto. Marcaré tu primera publicación como la solución. Muchísimas gracias por la ayuda.

Deja un comentario

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