Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Syndicate_Admin
Administrator
Administrator

Primer viernes de cada mes - Power Query

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.

Friday.jpg

Gracias de antemano

2 ACCEPTED SOLUTIONS

@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)

goncalogeraldes_0-1635419400441.png

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"

goncalogeraldes_1-1635419425551.png

¡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

View solution in original post

@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

View solution in original post

8 REPLIES 8
Syndicate_Admin
Administrator
Administrator

¡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)

goncalogeraldes_0-1635419400441.png

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"

goncalogeraldes_1-1635419425551.png

¡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

funcionó perfectamente.

Espero que no te importe que te etiquete para mis futuras consultas.

¡Gracias de nuevo!

@mb0307 ¡Claro que no! Ayudaré en todo lo que pueda 🙂

@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

@goncalogeraldes magnífico! resultado perfecto. MUCHAS GRACIAS 🙂

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors