Antes de todo, vemos que al cargar una tabla de hechos, Power BI detecta automáticamente la columna de fechas y crea una jerarquía de fechas (Year, Quarter, Month, Day).
¿Cuál es el problema con la detección automática de fechas?
Si necesitas analizar tus datos con un slicer “Fiscal Year” o “Semana” u otro tipo de fecha que no aparece en tu tabla de hechos. No podrás porque no tienes tal columna.
Esta detección automática crea varias tablas de fechas que están ocultas en el modelo y ocupan espacio. ¡¡Para cada campo de fechas se crea una tabla!! Eso puede bajar la velocidad o bloquear tu modelo si tienes muchas tablas.
–> Por estas razones, es importante crear sí o sí una tabla de calendario en tu modelo de datos. Ahora vemos cómo hacerlo, de la manera más simple a la más compleja.
Puede que ya cuentes con una arquitectura de datos en la cual tenes una tabla calendario ya construida, con vuestro año fiscal y otras necesidades para el negocio.
Ventaja: Muy simple, la importas y la utilizas como una dimensión (DimDate Table o Tabla de Fechas). Sin olvidar hacer las relaciones entre esta tabla y tu tabla de hechos.
Desventajas:
– A lo largo del tiempo en tu modelo ingresan nuevas fechas que no existen en la DimDate importada (los próximos años por ejemplo). Tendrás que añadir las nuevas fechas manualmente en este Excel (horrible…y no queremos esto!!)
– Quizás en esta tabla preparada te faltan columnas que necesitas para filtrar bien tu informe.
Afortunadamente DAX te va a salvar la vida! (como podrás ver en las siguientes formas de crear un calendario).
2- Crear una tabla calendario en Power BI con la Función CALENDARAUTO():
La función DAX CALENDARAUTO()crea una tabla de calendario que sabe la fecha de inicio y de fin de tu modelo de datos. ¿Cómo? Va a buscar en todas las columnas de tu modelo la fecha más antigua y la más reciente y así determina tu calendario entero.
Siempre empieza el 1 de enero y termina por defecto el 31 de diciembre. (Para que tengas en cuenta, no va a buscar las fechas que están en columnas calculadas y medidas calculadas).
Ejemplo: Digamos que en el modelo de datos las fechas van del 4 de agosto de 2019 y termina el 2 de diciembre de 2020. CALENDARAUTO() crea una columna de fechas desde el 1 de enero de 2019 hasta el 31 de diciembre de 2020.
Ventaja: Muy simple y rápido. Además, te permite indicar cuando es la fecha de fin de tu año fiscal (opcional). Es decir, el calendario va a buscar la fecha la más recién en el modelo y estirar el calendario hasta el fin del año fiscal. Siempre se adaptará a tu modelo. Por ejenplo, si en el modelo de datos las fechas van del 4 de agosto de 2019 y termina el 2 de diciembre de 2019,CALENDARAUTO(3) empieza el 1 de abril de 2019 y terminara el 31 de marzo de 2020.
Desventaja: Si tienes una columna de fecha de nacimiento de los clientes, tu calendario tendrá fechas que no serán relevantes (no hace falta empezar el calendario en 1959 pero la función CALENDARAUTO() toma en cuenta todas las columnas de fechas).
En práctica : En Power BI Desktop, ir a la pestaña “Data” –> Table tools –> New table
PRO TIPS :
Siempre suprimir las columnas que no necesitas (¡desde el Query Editor!).
Definir la tabla como tabla de fechas (Mark as Date Table) para beneficiar de la Time Intelligence de Power BI en esta tabla.
Pasemos a ver un ejemplo práctico en el siguiente vídeo :
3- Crear una tabla calendario en Power BI con la Función (fx) CALENDAR:
Es una función DAX que te permite crear una tabla de calendario indicando la fecha de inicio y la fecha de fin.
Ventaja: Super simple, solo tienes que indicar la fecha mínima y máxima.
Desventaja: Si un día cuentas con datos que sobrepasan la fecha máxima que has puesto, tendrás que cambiar eso. Si no lo haces, cuidado con los datos que vas a ver en tu informe (estarán filtrados; es decir que los datos posteriores a tu fecha de fin no saldrán en tu informe).
Ejemplo práctico: ¿Cómo crear una tabla calendario con la función CALENDAR?
Hacer click en la pestaña Data –> Table tools –> New table
Calendario = CALENDAR(DATE(2020;01;01);DATE(2020;01;31))
Añades las columnas que necesitas para tu análisis. Por ejemplo mes, num mes, etc.
PRO TIP :
Definir la tabla como tabla de fechas (Mark as Date Table) para beneficiar el Time Intelligence de Power BI en esta tabla.
No olvides crear la relación entre tu tabla calendario y la tabla de hechos. Cualquier duda que tengas puedes dejar un comentario.
Hay otras maneras de crear una tabla de calendario en Power BI (con Power Query o con la función GENERATE por ejemplo). ¿Como tu haces para trabajar con una tabla de fechas? ¿Una pregunta? Deja un comentario abajo. Y no olvides suscribirte para formar parte de nuestro Club BI.P !!! Te esperamos!!.
Descubre nuestros cursos Power BI
Cursos completos de DAX, Power Query, Visualisaciones, Relaciones, Modelados de datos, Administración e implementación, DA-100 y mucho más para aprender Power BI.
Los Power BI Calculation Group son una funcionalidad tan potente como desconocida. En este artículo repasamos qué son, cómo crearlos y cómo usarlos para hacer cosas de forma más eficiente o hacer cosas que no se pueden hacer de otra forma.
Este tutorial de BIIST Pro muestra el procedimiento paso a paso para descargar e instalar Microsoft Power BI Desktop desde Microsoft Store y desde el Centro de descarga de Microsoft. También veremos las diferencias fundamentales entre estas dos formas de instalar la herramienta.
2 comentarios
Carlos A. Ortega Rey · mayo 4, 2020 a las 22 h 06 min
Hola Dhania.
Pregunto si en Power BI puedo correr una macro en VBA?
Dhania · mayo 5, 2020 a las 18 h 31 min
Hola Carlos, las macros no están compatibles con Power BI. ¿Te puedo pedir que querías hacer? Quizás hay otra forma de hacerlo con PowerAutomate.