Forum Discussion
period table creation
hi
i was looking for dax to create a period table
from where i can pick a period like rolling 6 months, last quarter etc...
i have listed time period l am looking to create
- Anonymous5 years ago
Hi Anonymous ,
Indeed, it will be a little troublesome to use dax.
1.Create a calendar table and a category table.
Table = CALENDAR(DATE(2020,1,1),DATE(2021,12,31))2.Create a relationship between calendar table and main table.
3.Create the measure
FilteredValue = SWITCH ( SELECTEDVALUE ( 'Table (2)'[Category] ), "Today", CALCULATE ( SUM ( MainTable[Value] ), FILTER ( 'Table', [Date] = TODAY () ) ), "Yesterday", CALCULATE ( SUM ( MainTable[Value] ), FILTER ( 'Table', [Date] = TODAY () - 1 ) ), "Month to Date", CALCULATE ( SUM ( MainTable[Value] ), DATESINPERIOD ( 'Table'[Date], TODAY (), -1, MONTH ) ), "Rolling 7 days", CALCULATE ( SUM ( MainTable[Value] ), FILTER ( 'Table', [Date] <= TODAY () && [Date] >= TODAY () - 6 ) ) )You can check more details from here.
Best Regards,
Stephen Tao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
3 Replies
- PaulDBrownCommunity Champion
Anonymous
Probably simpler to create the table in Excel and import it, no?
- manikumar34Solution Sage
It is better to create in Excel or SQL.
Regards,
Manikumar
- AnonymousNot applicable
Hi Anonymous ,
Indeed, it will be a little troublesome to use dax.
1.Create a calendar table and a category table.
Table = CALENDAR(DATE(2020,1,1),DATE(2021,12,31))2.Create a relationship between calendar table and main table.
3.Create the measure
FilteredValue = SWITCH ( SELECTEDVALUE ( 'Table (2)'[Category] ), "Today", CALCULATE ( SUM ( MainTable[Value] ), FILTER ( 'Table', [Date] = TODAY () ) ), "Yesterday", CALCULATE ( SUM ( MainTable[Value] ), FILTER ( 'Table', [Date] = TODAY () - 1 ) ), "Month to Date", CALCULATE ( SUM ( MainTable[Value] ), DATESINPERIOD ( 'Table'[Date], TODAY (), -1, MONTH ) ), "Rolling 7 days", CALCULATE ( SUM ( MainTable[Value] ), FILTER ( 'Table', [Date] <= TODAY () && [Date] >= TODAY () - 6 ) ) )You can check more details from here.
Best Regards,
Stephen Tao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.