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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Tlotly
Resolver II
Resolver II

Set calendar to start on a Sunday

Good day

 

I created  CalendarAuto and from there created Weekstart which looks right. Currently when I select WeekStart of 28 Feb 2022, the week starts from Monday to Sunday (28 Feb - 06 March) which I don't want. 

DAX for WeekStart:  = 'Calendar'[Date]- WEEKDAY('Calendar'[Date],2)+1

 

So what I want is if my Weekstart is 28 Feb 2022, I need the week to start from 27 Feb - 05 March, meaning Sunday to Monday. How do I achieve this?

 

Below is the DAX for the calendar:

Calendar =

--Inputs--
VAR WeekStartsOn = "Sun"
VAR FiscalStartMonth = 7

--NOTE: Calendar week starts from Sunday

--Calculation--
RETURN
ADDCOLUMNS (
CALENDARAUTO ( ),
"MIndex", MONTH ( [Date] ),
"FiscalMIndex", MONTH ( EDATE ( [Date], - FiscalStartMonth + 1 ) ),
"CalMonth", FORMAT ( [Date], "mmm" ),
"CalQtr", "Q"
& CEILING ( MONTH ( [Date] ), FiscalStartMonth - 1 ) / ( FiscalStartMonth - 1 ),
"CalYear", YEAR ( [Date] ),
"Fiscal Week",
VAR FiscalFirstDay =
IF (
MONTH ( [Date] ) < FiscalStartMonth,
DATE ( YEAR ( [Date] ) - 1, FiscalStartMonth, 1 ),
DATE ( YEAR ( [Date] ), FiscalStartMonth, 1 )
)
VAR FilteredTableCount =
COUNTROWS (
FILTER (
SELECTCOLUMNS ( GENERATESERIES ( FiscalFirstDay, [Date] ), "Dates", [Value] ),
FORMAT ( [Dates], "ddd" ) = WeekStartsOn
)
)
VAR WeekNos =
IF (
FORMAT ( FiscalFirstDay, "ddd" ) <> WeekStartsOn,
FilteredTableCount + 1,
FilteredTableCount
)
RETURN
"Week " & WeekNos,
"Fiscal Qtr", "Q"
& CEILING ( MONTH ( EDATE ( [Date], - FiscalStartMonth + 1 ) ), 3 ) / 3,
"Fiscal Trimester", "T"
&"" &CEILING ( MONTH ( EDATE ( [Date], - FiscalStartMonth + 1 ) ), 4 ) / 4,
"Fiscal Year",
VAR CY =
RIGHT ( YEAR ( [Date] ), 2 )
VAR NY =
RIGHT ( YEAR ( [Date] ) + 1, 2 )
VAR PY =
RIGHT ( YEAR ( [Date] ) - 1, 2 )
VAR FinYear =
IF ( MONTH ( [Date] ) > ( FiscalStartMonth - 1 ), YEAR ( [Date] )+1, YEAR ( [Date] ) )
RETURN
FinYear,
"Fiscal YearMonth",
VAR FinYearMonth =
IF ( MONTH ( [Date] ) > ( FiscalStartMonth - 1 ), ((YEAR ( [Date] )+1)* 100) + MONTH ( EDATE ( [Date], - FiscalStartMonth + 1 ) ),
((YEAR ( [Date])* 100)) + MONTH ( EDATE ( [Date], - FiscalStartMonth + 1 ) ))
RETURN
FinYearMonth,
"CalWeekNo", WEEKNUM ( [Date], 2 ),
"Weekend/Working", IF ( WEEKDAY ( [Date], 2 ) > 5, "Weekend", "Working" ),
"Day", FORMAT ( [Date], "ddd" ),
"CustomDate", FORMAT ( [Date], "d/mm" )
)

 

 

 

 

1 ACCEPTED SOLUTION
amitchandak
Super User
Super User

@Tlotly , I given here code for every week day as week start

 

Any Weekday Week - Start From Any day of Week
https://community.powerbi.com/t5/Community-Blog/Any-Weekday-Week-Decoding-Date-and-Calendar-2-5-Powe...

View solution in original post

2 REPLIES 2
Tlotly
Resolver II
Resolver II

@amitchandak super amazing. Thank you very much.

amitchandak
Super User
Super User

@Tlotly , I given here code for every week day as week start

 

Any Weekday Week - Start From Any day of Week
https://community.powerbi.com/t5/Community-Blog/Any-Weekday-Week-Decoding-Date-and-Calendar-2-5-Powe...

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

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.