Función para crear una tabla calendario con Power Query

let
Origen = f_Tickets[Fecha],
FechaMin = #date( Date.Year(List.Min(Origen)), 01, 01),
FechaMax = #date( Date.Year(List.Max(Origen)), 12, 31),
Personalizado1 = {Number.From(FechaMin)..Number.From(FechaMax)},
#"Convertida en tabla" = Table.FromList(Personalizado1, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Tipo cambiado" = Table.TransformColumnTypes(#"Convertida en tabla",{{"Column1", type date}}),
#"Columnas con nombre cambiado" = Table.RenameColumns(#"Tipo cambiado",{{"Column1", "Fecha"}}),
#"Año insertado" = Table.AddColumn(#"Columnas con nombre cambiado", "Año", each Date.Year([Fecha]), Int64.Type),
#"Mes insertado" = Table.AddColumn(#"Año insertado", "Mes", each Date.Month([Fecha]), Int64.Type),
#"Nombre del mes insertado" = Table.AddColumn(#"Mes insertado", "Nombre del mes", each Date.MonthName([Fecha]), type text),
#"Trimestre insertado" = Table.AddColumn(#"Nombre del mes insertado", "Trimestre", each Date.QuarterOfYear([Fecha]), Int64.Type),
#"Semana del año insertada" = Table.AddColumn(#"Trimestre insertado", "Semana del año", each Date.WeekOfYear([Fecha]), Int64.Type),
#"Semana del mes insertada" = Table.AddColumn(#"Semana del año insertada", "Semana del mes", each Date.WeekOfMonth([Fecha]), Int64.Type),
#"Día insertado" = Table.AddColumn(#"Semana del mes insertada", "Día", each Date.Day([Fecha]), Int64.Type),
#"Día de la semana insertado" = Table.AddColumn(#"Día insertado", "Día de la semana", each (Date.DayOfWeek( [Fecha], Day.Monday  )+1), Int64.Type),
#"Día del año insertado" = Table.AddColumn(#"Día de la semana insertado", "Día del año", each Date.DayOfYear([Fecha]), Int64.Type),
#"Nombre del día insertado" = Table.AddColumn(#"Día del año insertado", "Nombre del día", each Date.DayOfWeekName([Fecha]), type text),
#"Primeros caracteres insertados" = Table.AddColumn(#"Nombre del día insertado", "Primeros caracteres", each Text.Start([Nombre del mes], 3), type text),
#"Primeros caracteres insertados1" = Table.AddColumn(#"Primeros caracteres insertados", "Primeros caracteres.1", each Text.Start([Nombre del día], 3), type text),
#"Columna condicional agregada" = Table.AddColumn(#"Primeros caracteres insertados1", "Semestre", each if [Mes] <= 6 then 1 else if [Mes] <= 12 then 2 else null),
#"Columna condicional agregada1" = Table.AddColumn(#"Columna condicional agregada", "Día Laboral", each if [Día de la semana] <= 5 then "Día Laboral" else if [Día de la semana] <= 7 then "Fin de Semana" else null),
#"Columnas con nombre cambiado1" = Table.RenameColumns(#"Columna condicional agregada1",{{"Año", "#Año"}, {"Mes", "#Mes"}, {"Nombre del mes", "Mes"}, {"Trimestre", "#Trimestre"}, {"Semana del año", "#SemanaAño"}, {"Semana del mes", "#SemanaMes"}, {"Día", "#Día"}, {"Día de la semana", "#DíaSemana"}, {"Día del año", "#DíaAño"}, {"Nombre del día", "Día"}, {"Primeros caracteres", "Mes Corto"}, {"Primeros caracteres.1", "Día Corto"}})
in
#"Columnas con nombre cambiado1"

Deja una respuesta

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