Crear dimensión de tiempo usando M en Power BI

Publicado por

Al momento de crear una dimensión de tiempo en Power BI lo podemos hacer de manera muy sencilla haciendo uso de la función “Calendar” o “Calendarauto” en DAX, sin embargo las tablas creadas en DAX no se ven reflejadas en el editor de consultas de Power BI.

Una manera de crear la dimensión de tiempo desde el editor de consultas de Power BI es agregando las siguientes lineas de código en un nuevo query:

let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlSKjQUA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Column1 = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", Int64.Type}}),
#"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each List.DateTimes(#datetime(2018, 01, 01, 23, 55, 0), 1500, #duration(1, 0, 0, 0))),
Custom = #"Added Custom"{0}[Custom],
#"Converted to Table" = Table.FromList(Custom, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Changed Type1" = Table.TransformColumnTypes(#"Converted to Table",{{"Column1", type datetime}})
in
#"Changed Type1"

alt

De esta manera se creará una dimensión de tiempo en donde las fechas inician desde enero de 2018 con incremento diario. En caso de que se requiera cambiar la fecha de inicio o el incremento de las fechas en días, meses etc, se debe editar el paso número 3 en donde se usa la función “List.DateTimes”; adjunto el link de la documentación oficial de esta función :

https://docs.microsoft.com/en-us/powerquery-m/list-datetimes

Saludos!

Un comentario

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *