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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
josevaras
Employee
Employee

Cambiar el final de la semana mediante la consulta de fecha

Hola, tengo la consulta de fechas pre-hechas a continuación que uso en mis informes. Lo necesito para que el último día de la semana sea un viernes, no un sábado como lo tiene ahora. ¿Cómo lo hago? ¿Puedo editar lo siguiente o tendré que hacer algo más? Tia

let fnDateTable (StartDate as date, EndDate as date, FYStartMonth as number) como tabla ?>
Dejar
DayCount ? Duration.Days(Duration.From(EndDate - StartDate)),
Origen: List.Dates(StartDate,DayCount,#duration(1,0,0,0)),
TableFromList ? Table.FromList(Source, Splitter.SplitByNothing()),
ChangedType á Table.TransformColumnTypes(TableFromList,-"Column1", tipo date-),
RenamedColumns ? Table.RenameColumns(ChangedType,'Column1", "Date" ? )
InsertYear ? Table.AddColumn(RenamedColumns, "Year", each Date.Year([Date]),type text),
InsertYearNumber ? Table.AddColumn(RenamedColumns, "YearNumber", each Date.Year([Date])),
InsertQuarter á Table.AddColumn(InsertYear, "QuarterOfYear", each Date.QuarterOfYear([Date])),
InsertMonth á Table.AddColumn(InsertQuarter, "MonthOfYear", each Date.Month([Date]), escriba texto),
InsertDay ? Table.AddColumn(InsertMonth, "DayOfMonth", each Date.Day([Date])),
InsertDayInt ? Table.AddColumn(InsertDay, "DateInt", cada [Año] * 10000 + [MonthOfYear] * 100 + [DayOfMonth]),
InsertMonthName ? Table.AddColumn(InsertDayInt, "MonthName", each Date.ToText([Date], "MMMM"), escriba texto), escriba texto),
InsertCalendarMonth á Table.AddColumn(InsertMonthName, "MonthInCalendar", cada uno (try(Text.Range([MonthName],0,3)) de lo contrario [MonthName]) & " " & Number.ToText([Year])),
InsertCalendarQtr á Table.AddColumn(InsertCalendarMonth, "QuarterInCalendar", cada "Q" & Number.ToText([QuarterOfYear]) & " " & Number.ToText([Year])),
InsertDayWeek ? Table.AddColumn(InsertCalendarQtr, "DayInWeek", each Date.DayOfWeek([Date])),
InsertDayName ? Table.AddColumn(InsertDayWeek, "DayOfWeekName", each Date.ToText([Date], "dddd"), escriba texto), escriba texto),
InsertWeekEnding ? Table.AddColumn(InsertDayName, "WeekEnding", each Date.EndOfWeek([Date]), tipo date),
InsertWeekNumberTM Table.AddColumn(InsertWeekEnding, "Week Number", each Date.WeekOfYear([Date])),
InsertMonthnYear á Table.AddColumn(InsertWeekNumber,"MonthnYear", cada [Año] * 10000 + [MonthOfYear] * 100),
InsertQuarternYear á Table.AddColumn(InsertMonthnYear,"QuarternYear", each [Year] * 10000 + [QuarterOfYear] * 100),
ChangedType1 ? Table.TransformColumnTypes(InsertQuarternYear,'QuarternYear", Int64.Type','Número de semana', Int64.Type','Año', escriba text','MonthnYear', Int64.Type, "DateInt", Int64.Type, "DayOfMonth", Int64.Type, "MonthOfYear", Int64.Type, "QuarterOfYear", Int64.Type, "MonthInCalendar", escriba text, "QuarterInCalendar", escriba text, "DayInWeek", Int64.Type,),
InsertShortYear á Table.AddColumn(ChangedType1, "ShortYear", each Text.End(Text.From([Year]), 2), texto de tipo),
AddFY - Table.AddColumn(InsertShortYear, "FY", cada "FY"&(if [MonthOfYear]>-FYStartMonth then Text.From(Number.From([ShortYear])+1) else [ShortYear]))
En
AddFY
En
fnDateTable

1 ACCEPTED SOLUTION
Fowmy
Super User
Super User

@josevaras

En la función, agregue un parámetro Day.Saturday en las tres funciones que mostré a continuación, puede agregar la semana a partir del sábado para obtener el viernes como fin de semana.

InsertDayWeek = Table.AddColumn(InsertCalendarQtr, "DayInWeek", each Date.DayOfWeek([Date],Day.Saturday)),
InsertWeekEnding = Table.AddColumn(InsertDayName, "WeekEnding", each Date.EndOfWeek([Date],Day.Saturday), type date),
InsertWeekNumber= Table.AddColumn(InsertWeekEnding, "Week Number", each Date.WeekOfYear([Date],Day.Saturday)),

________________________

¿He respondido a tu pregunta? Marque este post como una solución, esto ayudará a otros!.

Haga clic en el icono Thumbs-Up si le gusta esta respuesta 🙂

Youtube Linkedin

Did I answer your question? Mark my post as a solution! and hit thumbs up


Subscribe and learn Power BI from these videos

Website LinkedIn PBI User Group

View solution in original post

4 REPLIES 4
Fowmy
Super User
Super User

@josevaras

En la función, agregue un parámetro Day.Saturday en las tres funciones que mostré a continuación, puede agregar la semana a partir del sábado para obtener el viernes como fin de semana.

InsertDayWeek = Table.AddColumn(InsertCalendarQtr, "DayInWeek", each Date.DayOfWeek([Date],Day.Saturday)),
InsertWeekEnding = Table.AddColumn(InsertDayName, "WeekEnding", each Date.EndOfWeek([Date],Day.Saturday), type date),
InsertWeekNumber= Table.AddColumn(InsertWeekEnding, "Week Number", each Date.WeekOfYear([Date],Day.Saturday)),

________________________

¿He respondido a tu pregunta? Marque este post como una solución, esto ayudará a otros!.

Haga clic en el icono Thumbs-Up si le gusta esta respuesta 🙂

Youtube Linkedin

Did I answer your question? Mark my post as a solution! and hit thumbs up


Subscribe and learn Power BI from these videos

Website LinkedIn PBI User Group

@Fowmy  muchas gracias caballero. trabajo de maravilla 🙂

¡Gracias!

¿Esperamos que pueda aceptarlo como una solución si funciona para usted?

________________________

¿He respondido a tu pregunta? Marque este post como una solución, esto ayudará a otros!.

Haga clic en el icono Thumbs-Up si le gusta esta respuesta 🙂

Youtube Linkedin

Did I answer your question? Mark my post as a solution! and hit thumbs up


Subscribe and learn Power BI from these videos

Website LinkedIn PBI User Group

amitchandak
Super User
Super User

@josevaras ,

En M tienes Date.DayOfWeek ,Date.DayOfWeek . Inténtalo como

Date.AddDays([Date] +6- Date.DayOfWeek([Date], Day.Saturday))

Tengo blog dax con lógica donde tienes un calendario para cada día de la semana

refer - tratar de convertir la lógica a M

Cualquier semana de día de la semana -
https://community.powerbi.com/t5/Community-Blog/Any-Weekday-Week-Decoding-Date-and-Calendar-2-5-Powe...

En M tienes Date.DayOfWeek ,Date.DayOfWeek . Inténtalo como

Date.AddDays([Date] +6- Date.DayOfWeek([Date], Day.Saturday))

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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