Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!
Hola
Necesita a continuación en Power Query solamente, por favor:
Usando el mes actual como referencia, quiero crear 12 consultas en blanco que se usarán como parámetros, que muestran la fecha del primer viernes de cada mes. 12 consultas serán de los últimos 12 meses.
Gracias de antemano
Solved! Go to Solution.
@mb0307 mi mal, ¡no entendí tu pregunta correctamente! Puede agregar una columna personalizada basada en su columna Fecha y obtener el primer viernes de cada mes para su tabla de calendario:
Date.StartOfWeek(#date(Date.Year([Date_Key]),Date.Month([Date_Key]),7),Day.Friday)
o bien, puede crear una tabla con los últimos 12 meses y agregar una columna personalizada para obtener el primer viernes correspondiente del mes:
let
Dates = Table.FromList(
List.Generate(
()=> [Month Start = Date.StartOfMonth(Date.AddMonths(DateTime.LocalNow(),-12)), idx = 11],
each [idx] >= 0,
each [Month Start = Date.StartOfMonth(Date.AddMonths(DateTime.LocalNow(),-[idx])), idx = [idx]-1],
each [Month Start]),
Splitter.SplitByNothing(),{"Month Start"}),
dateType = Table.TransformColumnTypes(Dates,{"Month Start", Date.Type}),
#"Added Custom" = Table.AddColumn(dateType, "First Friday", each Date.StartOfWeek(#date(Date.Year([Month Start]),Date.Month([Month Start]),7),Day.Friday))
in
#"Added Custom"
¡Espero que esta respuesta resuelva su problema!
Si necesita ayuda adicional, por favor @ me en su respuesta.
Si mi respuesta le proporcionó una solución, considere marcarla como una solución ✔️ o darle un kudoe 👍
¡Gracias!
¡También puedes echar un vistazo a mi LinkedIn!
Saludos
Gonçalo Geraldes
@mb0307 oye! ¡No hay problema en absoluto! El código es bastante similar en realidad:
let
Dates = Table.FromList(
List.Generate(
()=> [Month End = Date.EndOfMonth(Date.AddMonths(DateTime.LocalNow(),-12)), idx = 11],
each [idx] >= 0,
each [Month End = Date.EndOfMonth(Date.AddMonths(DateTime.LocalNow(),-[idx])), idx = [idx]-1],
each [Month End]),
Splitter.SplitByNothing(),{"Month End"}),
dateType = Table.TransformColumnTypes(Dates,{"Month End", Date.Type}),
#"Added Custom" = Table.AddColumn(dateType, "Last Friday", each Date.AddDays([Month End], -Date.DayOfWeek([Month End],Day.Friday)))
in
#"Added Custom"
Para obtener ayuda adicional, por favor @ me en su respuesta!
¡También puedes echar un vistazo a mi LinkedIn!
Saludos
Gonçalo Geraldes
¡Hola @mb0307! Puede lograrlo con lo siguiente:
Date.AddMonths(Date.StartOfMonth(DateTime.LocalNow()), -12)
¡Espero que esta respuesta resuelva su problema!
Si necesita ayuda adicional, por favor @ me en su respuesta.
Si mi respuesta le proporcionó una solución, considere marcarla como una solución ✔️ o darle un kudoe 👍
¡Gracias!
¡También puedes echar un vistazo a mi LinkedIn!
Saludos
Gonçalo Geraldes
@goncalogeraldes gracias por la respuesta, pero esto no me está dando el primer viernes del mes como se muestra en la imagen de mi publicación.
Su consulta solo devuelve Inicio de mes.
@mb0307 mi mal, ¡no entendí tu pregunta correctamente! Puede agregar una columna personalizada basada en su columna Fecha y obtener el primer viernes de cada mes para su tabla de calendario:
Date.StartOfWeek(#date(Date.Year([Date_Key]),Date.Month([Date_Key]),7),Day.Friday)
o bien, puede crear una tabla con los últimos 12 meses y agregar una columna personalizada para obtener el primer viernes correspondiente del mes:
let
Dates = Table.FromList(
List.Generate(
()=> [Month Start = Date.StartOfMonth(Date.AddMonths(DateTime.LocalNow(),-12)), idx = 11],
each [idx] >= 0,
each [Month Start = Date.StartOfMonth(Date.AddMonths(DateTime.LocalNow(),-[idx])), idx = [idx]-1],
each [Month Start]),
Splitter.SplitByNothing(),{"Month Start"}),
dateType = Table.TransformColumnTypes(Dates,{"Month Start", Date.Type}),
#"Added Custom" = Table.AddColumn(dateType, "First Friday", each Date.StartOfWeek(#date(Date.Year([Month Start]),Date.Month([Month Start]),7),Day.Friday))
in
#"Added Custom"
¡Espero que esta respuesta resuelva su problema!
Si necesita ayuda adicional, por favor @ me en su respuesta.
Si mi respuesta le proporcionó una solución, considere marcarla como una solución ✔️ o darle un kudoe 👍
¡Gracias!
¡También puedes echar un vistazo a mi LinkedIn!
Saludos
Gonçalo Geraldes
funcionó perfectamente.
Espero que no te importe que te etiquete para mis futuras consultas.
¡Gracias de nuevo!
@goncalogeraldes siento preguntar de nuevo, ¿qué pasa si quiero extraer los datos del ÚLTIMO viernes del mes, por favor? mi requisito cambió a Último viernes del mes. gracias de antemano si puedes ayudar.
@mb0307 oye! ¡No hay problema en absoluto! El código es bastante similar en realidad:
let
Dates = Table.FromList(
List.Generate(
()=> [Month End = Date.EndOfMonth(Date.AddMonths(DateTime.LocalNow(),-12)), idx = 11],
each [idx] >= 0,
each [Month End = Date.EndOfMonth(Date.AddMonths(DateTime.LocalNow(),-[idx])), idx = [idx]-1],
each [Month End]),
Splitter.SplitByNothing(),{"Month End"}),
dateType = Table.TransformColumnTypes(Dates,{"Month End", Date.Type}),
#"Added Custom" = Table.AddColumn(dateType, "Last Friday", each Date.AddDays([Month End], -Date.DayOfWeek([Month End],Day.Friday)))
in
#"Added Custom"
Para obtener ayuda adicional, por favor @ me en su respuesta!
¡También puedes echar un vistazo a mi LinkedIn!
Saludos
Gonçalo Geraldes