Calcular el pronóstico de ventas basado en las ventas actuales

Un usuario Pregunto ✅

Anónimo

En mi tablero, estoy tratando de mostrar cuáles son las ventas proyectadas para este año en función de las ventas reales y el pronóstico restante. Por ejemplo, para cualquier actividad hasta abril de 2017, sumaría el pronóstico de mayo de 2017 a diciembre de 2017 y luego agregaría las ventas reales de enero de 2017 a abril de 2017.

Usando una tabla de fechas estándar, un extracto de ventas y una hoja de pronóstico en Excel, creé las siguientes fórmulas:

1) Obtenga el último día en que ocurrió la venta este año para obtener una fecha actual con la que trabajar:

CurrentDate = CALCULATE (max (autoCalendar[Date]), filtro (ventas, ventas[Total_Sales]> 0))

2) Obtenga el pronóstico de ventas de los 8 meses restantes

Balance de previsión = CALCULAR (suma (Previsión[Forecast]), FILTRO (Previsión, Previsión[Forecast_Date]> [CurrentDate]))

3) Sume los dos para obtener las ventas proyectadas.

Ventas de proyectos = [This Year Sales]+[Forecast Balance]

Estoy seguro de que los 3 pasos se pueden realizar en 1. El problema que tengo es que el saldo del pronóstico está recuperando el pronóstico para enero de 2017.

Los números correctos serían: Balance de pronóstico = 25500 y obtengo 26600

¿Qué hay de malo en la fórmula del paso 2? ¡Se agradece cualquier ayuda!

Pantalla para probar datosPantalla para probar datosArchivo de previsiónArchivo de previsión

Mattbrice

Esto podría funcionar:

Forecast Balance =
VAR CurrentDate =
    CALCULATE (
        LASTNONBLANK ( autoCalendar[Date], [Total Sales] ),
        ALL ( autoCalendar[Year-Month] )
    )
RETURN
    CALCULATE (
        SUM ( Forecast[Forecast] ),
        FILTER ( VALUES ( Forecast[Date] ), Forecast[Forecast_Date] > CurrentDate )
    )

This Year Sales =
VAR CurrentDate =
    CALCULATE (
        LASTNONBLANK ( autoCalendar[Date], [Total Sales] ),
        ALL ( autoCalendar[Year-Month] )
    )
RETURN
    TOTALYTD ( SUM ( sales[Total_Sales] ), CurrentDate )

entonces finalmente

Project sales = [This Year Sales]+[Forecast Balance]

EDITAR: Pensando en ello, dado que la única segmentación en la página parece ser el año, puede reducir CurrentDate VAR a solo:

CurrentDate = LASTNONBLANK ( autoCalenar[Date], [Total Sales] )

asumiendo

Total Sales = SUM ( sales[Total_Sales] )

MFelix

Hola @Anónimo,

Hice algunas pruebas y creo que su problema es con respecto a las fechas que tiene en el Calendario, Ventas y Pronóstico, ya que las fechas de pronóstico son solo el primer día de cada mes cuando calcula los valores basados ​​en la Fecha Actual que obtendrá usted los valores para el mes actual en el total de la previsión.

Hice un par de ajustes a sus fórmulas y obtuve el siguiente resultado:

1) Cambio CurrentDate por columna con esta fórmula

Current_Date = IF(
CALCULATE(MAX(AutoCalendar[Date]),
FILTER(Sales,Sales[Sales]>0))>=AutoCalendar[Date],AutoCalendar[Date],
BLANK())

Esto le permite hacer que todas las fechas muestren si están por debajo de la fecha actual

3) El valor previsto cambió al siguiente teniendo en cuenta la columna anterior.

Forecast Balance = CALCULATE(
sum(Forecast[Forecast]),
FILTER(AutoCalendar,ISBLANK(AutoCalendar[Current_Date])))

Esto devolverá todas las filas del pronóstico que tienen las filas en blanco que es lo que necesita sumar.

4) Ventas proyectadas con los nuevos cálculos

Projected Sales = [This Year Sales]+Forecast[Forecast Balance]

Vea la impresión a continuación si el resultado es el que necesita.

Project_sales.png

Espero que esto ayude

Saludos,

MFelix

Anónimo

En respuesta a MFelix

@MFelix Sí, los resultados en su salida coinciden con lo que estoy buscando. Y sí, también tiene razón en que la hoja de pronóstico solo tiene fechas únicas para el pronóstico mensual. Pensé que era un problema ya que el 1/1/2017 tiene un pronóstico, pero no se facturaron ventas ese día.

Recibo un error al intentar construir la fecha actual usando su fórmula: creo que está relacionado con comparar el resultado de max () con el calendario automático[date]. De hecho, las únicas opciones que surgieron al escribir autocalendar fueron las medidas que había creado. Creo que la expresión espera un valor único al hacer una comparación.

Aquí está el error:

«No se puede determinar un solo valor para la columna» fecha «en la tabla» calendario automático «. Esto puede suceder cuando una fórmula de medida hace referencia a una columna que contiene muchos valores sin especificar una agregación como mínimo, máximo, recuento o suma para obtener un solo resultado»

pbi_3.JPG

MFelix

En respuesta a Anónimo

@Anónimo,

¿Está creando una medida o una columna? Tiene que ser una columna.

Saludos

Anónimo

En respuesta a MFelix

@MFelix ah eso tiene sentido. Lo estaba creando como medida. Gracias por la aclaración.

Mattbrice

Esto podría funcionar:

Forecast Balance =
VAR CurrentDate =
    CALCULATE (
        LASTNONBLANK ( autoCalendar[Date], [Total Sales] ),
        ALL ( autoCalendar[Year-Month] )
    )
RETURN
    CALCULATE (
        SUM ( Forecast[Forecast] ),
        FILTER ( VALUES ( Forecast[Date] ), Forecast[Forecast_Date] > CurrentDate )
    )

This Year Sales =
VAR CurrentDate =
    CALCULATE (
        LASTNONBLANK ( autoCalendar[Date], [Total Sales] ),
        ALL ( autoCalendar[Year-Month] )
    )
RETURN
    TOTALYTD ( SUM ( sales[Total_Sales] ), CurrentDate )

entonces finalmente

Project sales = [This Year Sales]+[Forecast Balance]

EDITAR: Pensando en ello, dado que la única segmentación en la página parece ser el año, puede reducir CurrentDate VAR a solo:

CurrentDate = LASTNONBLANK ( autoCalenar[Date], [Total Sales] )

asumiendo

Total Sales = SUM ( sales[Total_Sales] )

Anónimo

En respuesta a Mattbrice

¡Eso funciono! El pronóstico ahora muestra los valores correctos. ¡Gracias!

Deja un comentario

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