Todos los usuarios de Power BI, sabemos que la Tabla Dimensión FECHA, es la más común e importante en prácticamente la totalidad de los informes analíticos en Power BI.
La forma más habitual, es crear esta tabla dimensión, calculada con DAX.
Se pueden utilizar dos funciones para crear nuestra tabla calculada CALENDARIO, estas son:
CALENDAR
CALENDARAUTO
Pero en esta ocasión, no quiero hablar de calcularla a través de funciones DAX, si no, que quiero hablar de crear esta Tabla Dimensión desde Power QUERY, que pocas veces se habla de ella, y se ha convertido en mi forma habitual de crearla.
Ana Mª Bisbé, la menciona en su libro CURSO DE POWER BI, creándola a partir de una consulta en blanco, con una función escrita en lenguaje M, os quiero mostrar como trabajo yo.
Necesito crear una Tabla dimensión FECHA de los años 2023 y 2024.
En nuestro informe de Power BI, nos vamos a Inicio > Transformar datos , para abrir Power QUERY.
Una vez aquí, vamos a crear una consulta en blanco, Inicio > Nuevo origen > Consulta en blanco .
Y ahora nos vamos a Inicio > Editor avanzado ,
Una vez abierto el Editor avanzado, escribimos, en lenguaje M, nuestro código.
Comenzamos con let, para definir las variables. Las dos primeras son StartDate nuestra primera fecha, o fecha inicial, en este caso 01-01-2023 y con EndDate, la fecha final, de nuestra Tabla dimensión Fecha, que es el 31-12-2024.
La siguiente variable, es el número de filas que debe crear, y esto lo haremos con DayCount lo que pedimos es que nos cuente el numero de días que hay entre la fecha final y la fecha inicial, y le sume uno.
A continuación creamos ListadoFechas con List.Dates, para crear la lista de fechas, que empezará en StartDate (fecha inicial), que es el primer parámetro, creará el total de filas con DayCount, que es el segundo parámetro, y en el último parámetro #duration, nos pide los días, las horas, los minutos y los segundos, que va a tener cada intervalo, es por esto que en días pondremos 1, porque nos avanzará un día cada fila, desde el inicio hasta el fin por el total de DayCount que le hemos dicho, y como va a ser una tabla fecha, no necesitamos ni horas, minutos y segundos, y es por esto, que le ponemos 0, en cada uno de esos parámetros.
Por último, TablaFechas, aquí le diremos que convierta esa lista creada (ListadoFechas), en una tabla, para ello usaremos Table.FromList, que en su primer parámetro le indicamos la lista a convertir, en el segundo parámetro, Splitter.SplitByNothing(), para indicarle que no realice divisiones y que nos devuelva su argumento como una lista de un solo elemento, y por último parámetro, y entre comillas, el nombre que le asignaremos a la columna dentro de nuestra Tabla Dimensional Fecha, por consiguiente “Fecha”, y Aceptar.
Y ya nos ha creado la consulta, ahora solo tenemos que darle formato a la columna, como Fecha,
Ya tenemos nuestra primera columna Fecha, y si queremos le cambiamos el nombre a la consulta, aconsejable, por el nombre que tendrá en nuestro Power BI, nuestra Tabla dimensión, yo le pongo siempre CALENDARIO.
Llegados aquí, ahora solo hay que añadir las columnas que necesitemos en nuestra Tabla Dimensión Fecha, y para ello tan solo debemos de ir a Agregar columnas > Fecha , y elegir del desplegable aquellas columnas que queramos añadir, yo en mi caso voy a añadir, “Año”, “Mes”, “Nombre del mes” y “Trimestre”.
Y así quedaría nuestra tabla.
Para agregar las columnas, hay que tener presente que siempre tendremos marcada la columna “Fecha”.
Una vez llegados hasta aquí, podemos hacer algunos cambios, como me pasa a mí, que es el caso que el nombre del mes me gusta que sea la primera letra en mayúsculas, para ello nos posicionamos sobre la columna Nombre del mes, botón derecho.
Y si llegados hasta aquí, ya tenemos todas nuestra Tabla Dimensión Fecha, con las necesidades que tenemos para continuar con nuestro informe analítico, tan solo vamos a Inicio > Cerrar y aplicar.
Ahora ya con nuestra tabla CALENDARIO, en Power BI, otro paso importante es marcar la tabla CALENDARIO, como tabla de fechas, para ello iremos a Herramientas de tablas > Marcar como tabla de fechas .
Y activaremos el Marcar como tabla de fechas, para posteriormente elegir una columna de fecha, que en nuestro caso es la columna Fecha, y aceptar, y ya la tendríamos.
0 comentarios