Una de las grandes ventajas de Power Bi es que tiene funciones para comparar los datos por periodos de tiempo. Por ejemplo: ventas entre años, lo que llevamos vendido del año, la Tendencia Anual Móvil, etc…
Pero para que esto funcione es necesario disponer de un intervalo continuo de fechas, y lo más normal es que en nuestras tablas de datos no haya ventas todos los días.
Así que aprenderemos como crear una tabla de fechas, un calendario, como relacionarlo con nuestras ventas y como sacar partido de las funciones de inteligencia de tiempo
Tabla Calendario
Vamos a datos, modelado, e indicamos nueva tabla

Dato que tenemos ventas desde el 2013 hasta el 2015, ponemos
Calendario = CALENDAR(«1-1-2013″;»31-12-2015»)
Y esto nos crea una nueva tabla que tiene todas las fechas en ese intervalo

Pero en realidad nuestras ventas son dinámicas, y hoy tenemos estos periodos y mañana podemos tener otros, así que estaría bien tener una tabla dinámica, que coja desde la primera fecha de la que hay ventas, hasta la última fecha en la que hay ventas.
Así que cambiemos la definición de la tabla y pongamos
Calendario = CALENDAR(MIN(‘Facturas Ventas'[Fecha]); MAX(‘Facturas Ventas'[Fecha]))
O sea desde el día mínimo hasta el día máximo
Ahora vemos como el calendario empieza el 5-1-13, el primer día que hay ventas

Y termina el 22-12-15

Pero en realidad lo que nos interesa es desde el 1-1 del primer año que hay ventas, hasta el 31-12 del último año que hay ventas, para así poder comparar periodos completos, años, trimestres, etc…
Para ello aprovecharemos la función DATE que permite indicar un año, un mes y un día, y a partir de esos tres parámetros construye una fecha
Sustituyamos pues nuestra definición de la tabla por
Calendario = CALENDAR(DATE(YEAR(MIN(‘Facturas Ventas'[Fecha]));1;1); DATE(YEAR(MAX(‘Facturas Ventas'[Fecha]));12;31))
Ahora sí, tenemos del 1-1-13 al 31-12-15
Y lo veremos más claro si le damos formato fecha con dd-mm-yyyy

Nos queda un último paso importante, vincular la fecha de nuestras ventas con este calendario. Para ello vamos a Relaciones

Y arrastramos la Fecha de Facturas ventas a la Date de Calendario. Power Bi establece una relación y nos la muestra.
Esta es una de las grandes ventajas de Power BI, podemos relacionar datos de distintas tablas y luego usarlas en nuestros informes.

Para empezar a aprovechar las funciones de inteligencia de tiempo, vamos a crear una medida que nos permita comprar las ventas de un periodo con las ventas del mismo período del año anterior.
Volvemos a Datos, seleccionamos la tabla facturas ventas, modelado y creamos una nueva medida
Importe Anterior = CALCULATE([Importe];SAMEPERIODLASTYEAR(Calendario[Date]))
Y le ponemos formato con separador de miles y dos decimales.
Hemos usado la función CALCULATE, que tiene varios parámetros. El primero es una expresión, en este caso hemos usado una medida que ya tenemos definida, el Importe. Igualmente hubiésemos podido poner SUM(NETO), pero esa es la ventaja de definir la medida, nos olvidamos de arrastrar su fórmula. Y los siguientes parámetros son filtros, en este caso usamos la función SAMEPERIODLASTYEAR donde le indicamos que busque la fecha en el Calendario, NO en Facturas ventas, dado que necesita un intervalo continuo de fechas.
Para verificarlo, creamos una nueva página, ponemos una tabla con los campos Date, del Calendario, e Importe e Importe anterior de facturas ventas.
Veremos que al poner date se nos desglosa en Año, trimestre, mes y día. Quitemos el mes y el día, quedando

Si observamos bien la tabla veremos que a partir del 2014, en la columna importe anterior aparecen las ventas del mismo trimestre del año anterior

Vemos que en el tercer trimestre de 2015 no hay ventas, pero si nos muestra a su derecha las el tercer trimestre de 2014
Por supuesto si activamos los meses, pasara lo mismo.
Y si queremos saber el incremento de un periodo respecto a otro, basta con crear una medida que relacione las dos que ya tenemos
% Importe s/Anterior = [Importe]/[Importe Anterior]
A la que podemos poner formato porcentaje, y añadirla a nuestra tabla

Obteniendo así el aumento de un trimestre respecto a al mismo del año anterior.
Otra función muy útil es la YearToDate, que nos permite saber valores acumulados hasta una fecha
Creemos una nueva medida y ponemos
Importe Acumulado = TOTALYTD([Importe];Calendario[Date])
Con formato separador de miles y dos decimales, y la añadimos a la tabla

Vemos que el 2013 empieza a sumar, y cada trimestre es la suma de sí mismo con el anterior. Y que al cambiar de año, empieza a sumar de nuevo.
Le propongo crear una tabla que nos muestre los meses, y tres columnas con los años que tenemos datos, y los acumulados de los meses, así cuando miremos un mes, no vemos sus ventas, sino lo que llevamos de acumulado y es más fácil saber si vamos bien o mal, pues eso compensa si un mes hay más o menos ventas que los anteriores.
En la misma página podemos hacer más pequeña la fuente, y más estrecha la tabla para dejar espacio debajo

Y añadimos una Matriz, con en Valores, el importe acumulado, en filas el mes, en columnas el año

Y obtenemos una tabla con las ventas acumuladas mes a mes.

Guardemos la pagina como Inteligencia de tiempo
Me gusta esto:
Me gusta Cargando...