Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
Syndicate_Admin
Administrator
Administrator

Target no se actualiza en función del período que selecciono

Tengo 3 tablas:

1) equipo

2) objetivos

3) empresa

4) calendario

sally28_0-1655364790342.png sally28_2-1655364828155.png sally28_4-1655365837325.png

Cada equipo pertenece a una empresa específica y tiene un tamaño relativo.

Cada tamaño tiene un objetivo mensual fijo.

Cada empresa tiene ventas mensuales entre enero y marzo '22.

En la vista de informes, quiero agregar una segmentación de datos y filtrarla-- > es decir, último 1 mes, últimos 2 meses o últimos 3 meses

Al cambiar el período, quiero visualizar si las ventas de la empresa alcanzan su objetivo acumulativo (basado en el tamaño del equipo y q-ty que tiene)

Por ejemplo, la empresa A tiene un total de ventas de $ 230 en los últimos 3 meses y un objetivo acumulado de 3 meses de $ 240 (ya que posee 1 equipo mediano y 2 grandes). Significa que no logró el objetivo.

No sé cómo conectar correctamente estas tablas, ya que mis objetivos no se aplican a una fecha específica, sino que se fijan mensualmente. 😞

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

He intentado usar columnas calculadas:

Objetivo = RELACIONADO(Objetivo[Objetivo mensual])
Objetivo acumulativo = CALCULATE(SUM(Equipment[Target]), FILTER(Equipment, Equipment[Company] = earlier(Equipment[Company])), FILTER(Equipment, Equipment[Target] <= anterior (Equipment[Target])), FILTER(Equipment, Equipment[Equipment ID] <= anterior(Equipment[Equipment ID])))
Funciona para la empresa A, pero para la empresa C calcula incorrectamente (el equipo 9 debe ser 20 porque es un objetivo más pequeño, el equipo 5 debe ser 50.
No sé cómo hacer que se calcule correctamente usando la medida también. 😞

sally28_0-1655796477404.pngsally28_1-1655796562159.png

Syndicate_Admin
Administrator
Administrator

@sally28 ,

Creo una muestra para tener una prueba.

Modelo de datos:

RicoZhou_0-1655714267243.png

La tabla de período es una tabla dax no relacionada para la segmentación de datos.

Period = 
DATATABLE (
    "Period", STRING,
    "Last Month", INTEGER,
    {
        { "Last 1 month", 1 },
        { "Last 2 months", 2 },
        { "Last 3 months", 3 }
    }
)

Medir:

Achieve Target or not = 
VAR _Last_Month = SELECTEDVALUE(Period[Last Month])
VAR _Sales_IN_Last_Months = CALCULATE(SUM(Company[Sales ($)]),FILTER(Company,Company[Month] >= EOMONTH(MAX(Company[Month]),-_Last_Month)+1))
VAR _ADD = ADDCOLUMNS(Equipment,"Target",RELATED(Targets[Monthly target]))
VAR _SUMMARIZE = SUMMARIZE(_ADD,[Company],"Target",SUMX(FILTER( _ADD,[Company] = EARLIER([Company])),[Target]))
VAR _Target_IN_Last_Months = SUMX(_ADD,[Target]) * _Last_Month
RETURN
IF(_Sales_IN_Last_Months >= _Target_IN_Last_Months,"Yes","No")

El resultado es el siguiente.

RicoZhou_1-1655714321989.png

Saludos
Rico Zhou

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

@RicoZhou ,

¡Muchas gracias por la solución! Es exactamente lo que necesitaba 🙂

¿Podría ayudarme también a calcular la siguiente medida?

Necesito calcular qué equipo alcanzó su objetivo acumulado en función de las ventas de la empresa a la que pertenece.

Por ejemplo, en el último 1 mes la empresa B tiene 75$ de ventas. Cuenta con 3 equipos. El objetivo acumulado del Equipo 1 es 10, el Equipo 4 es 30 (10+20), el Equipo 8 es 60 (10+20+30).

sally28_1-1655720663602.png

En el último 1 mes, el equipo 1 logró su objetivo acumulado (10 vs 75), el equipo 4 logró (30 vs 75), el equipo 8 logró (60 vs 75).

En otro ejemplo, en el último mes la empresa A tiene 80$ de ventas. Cuenta con 3 equipos. El objetivo acumulado del Equipo 2 es 20, el Equipo 3 es 50 (20+30), el Equipo 10 es 80 (20+30+30). En el último 1 mes, los tres han alcanzado sus objetivos acumulados (20 vs 80, 50 vs 80, 80 vs 80).

sally28_2-1655721209846.png

Para la lógica de destino acumulativo, debe verificar si los equipos pertenecen a la misma empresa, siempre comienza con el objetivo fijo del equipo más pequeño y el equipo # y se suma como objetivos y # aumenta. Entonces, si la compañía X tiene 3 equipos pequeños, agregará la aplicación de menor a mayor. #

Equipo 1 = 10

Equipo 2 = 20 (10+10)

Equipo 3 = 30 (10+10+10)

¡Gracias una vez más!

He intentado usar columnas calculadas:

Objetivo = RELACIONADO(Objetivo[Objetivo mensual])
Objetivo acumulativo = CALCULATE(SUM(Equipment[Target]), FILTER(Equipment, Equipment[Company] = earlier(Equipment[Company])), FILTER(Equipment, Equipment[Target] <= anterior (Equipment[Target])), FILTER(Equipment, Equipment[Equipment ID] <= anterior(Equipment[Equipment ID])))
Funciona para la empresa A, pero para la empresa C calcula incorrectamente (el equipo 9 debe ser 20 porque es un objetivo más pequeño, el equipo 5 debe ser 50.
No sé cómo hacer que se calcule correctamente usando la medida también. sally28_0-1655797677333.png

sally28_1-1655797677897.png

sally28_2-1655797678243.png

Helpful resources

Announcements
July PBI25 Carousel

Power BI Monthly Update - July 2025

Check out the July 2025 Power BI update to learn about new features.

Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors