Forum Discussion
Anonymous
1 year agoNot applicable
Filter Relative date
Hello, I need to filter my visuals using Filter type `Relative date` for the previous week. I want to set week as starting on Monday and ending on Sunday. Despite having set `Local for import` f...
- 1 year ago
Hi Anonymous
This is actually a long standing bug - https://community.fabric.microsoft.com/t5/Issues/There-is-a-bug-in-the-relative-date-slicer-incorrect-calendar/idi-p/1651800
Alternatively, you can create a calculated column that returns a week number relative to today's date and use this calculated column to filter your visuals.
Week Number from Today = VAR PreviousSunday = VAR CurrentDate = TODAY () -- Get the current date VAR DayOfWeek = WEEKDAY ( CurrentDate, 2 ) -- Determine the day of the week (1 = Monday, 7 = Sunday) VAR Result = IF ( DayOfWeek = 7, -- If today is Sunday, return today CurrentDate, -- Otherwise, subtract the day of the week to get the last Sunday CurrentDate - DayOfWeek ) RETURN Result VAR _DIFF = DATEDIFF ( CalendarTable[Date], PreviousSunday, DAY ) + 1 -- Calculate the difference in days between the given date and the last Sunday VAR _ROUNDEDUP = ROUNDUP ( DIVIDE ( _DIFF, 7 ), 0 ) -- Convert the day difference into weeks, rounding up to the nearest whole number RETURN IF ( _ROUNDEDUP >= 1, _ROUNDEDUP, 0 ) -- Ensure the result is at least 1; otherwise, return 0
danextian
1 year agoSuper User
Hi Anonymous
This is actually a long standing bug - https://community.fabric.microsoft.com/t5/Issues/There-is-a-bug-in-the-relative-date-slicer-incorrect-calendar/idi-p/1651800
Alternatively, you can create a calculated column that returns a week number relative to today's date and use this calculated column to filter your visuals.
Week Number from Today =
VAR PreviousSunday =
VAR CurrentDate = TODAY () -- Get the current date
VAR DayOfWeek = WEEKDAY ( CurrentDate, 2 ) -- Determine the day of the week (1 = Monday, 7 = Sunday)
VAR Result =
IF (
DayOfWeek = 7,
-- If today is Sunday, return today
CurrentDate,
-- Otherwise, subtract the day of the week to get the last Sunday
CurrentDate - DayOfWeek
)
RETURN Result
VAR _DIFF =
DATEDIFF ( CalendarTable[Date], PreviousSunday, DAY ) + 1
-- Calculate the difference in days between the given date and the last Sunday
VAR _ROUNDEDUP =
ROUNDUP ( DIVIDE ( _DIFF, 7 ), 0 )
-- Convert the day difference into weeks, rounding up to the nearest whole number
RETURN
IF ( _ROUNDEDUP >= 1, _ROUNDEDUP, 0 )
-- Ensure the result is at least 1; otherwise, return 0
Anonymous
1 year agoNot applicable
Hello, thank you for an answer! 🙂