Este escenario se resuelve calculando las ventas “actuales” (las del período que corresponda en cada caso sin modificar el contexto de filtro) y las ventas totales del año al que pertenezca el período en cuestión (y para esto sí hará falta modificar el contexto de filtro ampliando el período temporal visible a todo el año), y devolviendo el cociente entre ambas cifras.
El cálculo de las ventas del año es algo fácilmente resoluble usando la función PARALLELPERIOD. Recordemos que esta función va a añadir a las fechas visibles un cierto número de intervalos y va a ampliar el conjunto de fechas visibles a todo ese intervalo. Concretamente, si al período actual de que se trate le sumamos 0 años (con lo que no se modifica) y ampliamos el período actual a nivel de año, estaremos pasando de un mes, o de un trimestre (o del período actual de que se trate) a todo el año actual, que es exactamente lo que buscamos.
Nuestra medida quedaría del siguiente modo:
VAR __sales = [Sales]
VAR __annualSales =
CALCULATE(
[Sales],
PARALLELPERIOD(
'Calendar'[Date],
0,
YEAR
)
)
RETURN
DIVIDE(
__sales,
__annualSales
)
Lo único destacable en ella es la variable __annualSales en la que almacenamos la cifra de ventas tras modificar el período de cálculo usando la función PARALLELPERIOD tal y como se ha comentado.