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

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

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
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.