Creating a rolling 6 week date range for use in graphs
Hello all, I am a noob to Power BI, so I apologize if this has been covered to death...
I have a Sales table with daily sales data. I have a separate Calendar table and created a relationship to the SalesDate column in my Sales table.
I need to create a graph showing sales trend for the last 6 weeks of sales. Currently, I have created a calculated column WeekEnding in the Calendar table that groups dates by Week, and used WeekEnding as my time axis, with a report level filter where I select only the last 6 weeks to show the trend. However, this is cumbersome having to go in every week and change selections, then repin the graph to the dashboard.
To automate the process, I created the following measures:
Now = today()
6WeeksBack = today()-42
Last6Weeks = datesbetween(Calendar[DateKey], Calendar[6WeeksBack], Calendar[Now])
However, a measure cannot be used as the time axis in the graph.
So I tried to create Last6Weeks as a calculated column instead, and I get the error "A table of multiple values was supplied where a single value was expected."
What am I doing wrong?? And is there an easier way to just pluck out the last 6 weeks of data to show in the graph?
Thanks!
Mur2za.
mur2za instead of putting the measures you used into the graph, use them in either the page level filter or the graph visual filter. Then for your axis put in a date column. The measures should filter the axis to what you want.
The other option is to create a custom column as follows:
Last 42 days = IF(AND(DateKey[Date]>=[Today]-42,DateKey[Date]<=[Today]),1,0)
[Today] is a measure : Today = DATE(YEAR(NOW()),MONTH(NOW()),DAY(NOW()))
Enter the last 42 days column in the page level or visual level filter and then select 1. Enter a date column in the axis of the graph. This will maintain a rolling 42 day axis.
Thanks,
Giles
mur2za adding a Page Level Filter will of course as the name suggests affect the remaining contents of your Page
Without Filter
With Page Level Filter