Análisis de la evolución de las ventas con una ventana de 14 días

En este escenario partimos de una tabla de ventas (Sales) en la que se indica, entre otros campos, la fecha y el importe de venta (SalesAmount). La medida [Sales] suma este última columna.

El objetivo es llevar a una gráfica de líneas las ventas acumuladas durante las dos semanas previas para todas las fechas del calendario. Lo que necesitamos es calcular la medida Sales para el período de dos semanas de duración que termina en la fecha que se esté considerando en cada momento, es decir, en pseudo-código sería:

Fortnight sales = CALCULATE(

    [Sales];

    Período-de-dos-semanas-terminando-en-la-fecha-actual

)

Como puede verse, utilizaremos la función CALCULATE para evaluar la medida Sales en el período de interés.

Para el cálculo del período de dos semanas que terminan en la fecha siendo considerada utilizaremos la función DATESINPERIOD, función que nos permite especificar la fecha de inicio de cálculo, el intervalo a añadir o restar (días en nuestro caso) y el número de intervalos a añadir o restar (14 en nuestro caso). Podríamos describir el período de interés de la siguiente forma:

Período-de-dos-semanas-terminando-en-la-fecha-actual = 

DATESINPERIOD(

    'Calendar'[Date];

    LASTDATE('Calendar'[Date]);

    -14;

DAY)

En nuestro ejemplo, la fecha de partida será la última del contexto (o la primera, pues se determinará según el contexto de fila ya que vamos a realizar nuestro cálculo para cada uno de los días por separado).

Podemos, por lo tanto, definir la medida de la siguiente forma:

Fortnight sales = CALCULATE(

    [Sales];

    DATESINPERIOD(

        'Calendar'[Date];

        FIRSTDATE('Calendar'[Date]);

        -14;

        DAY

    )

)

Si llevamos a una tabla la columna del calendario conteniendo las fechas ('Calendar'[Date]) y la recién creada medida, obtenemos el siguiente resultado:

Tabla mostrando las ventas acumuladas en ventas de 2 semanas

Puede comprobarse como, lógicamente, los 13 primeros días muestran acumulados parciales al no existir fechas anteriores al 1 de julio de 2001.

Si llevamos estos mismos campos a un gráfico de líneas, el resultado es el siguiente:

Gráfico mostrando el acumulado de ventas en ventanas de 2 semanas
Funciones DAX involucradas
Enviado por admin el Vie, 04/01/2019 - 15:04