cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
crisher
Frequent Visitor

Count Rows for Previous Quarter

Hello, I have tried multiple ways to calculate the number of records in this table from the previous quarter:

 

Registrations Prev Qtr = CALCULATE(COUNTROWS(Registration), PREVIOUSQUARTER(Registration[Registration_Date__c]))

Registrations Prev Qtr = CALCULATE(COUNTROWS(Registration), PREVIOUSQUARTER(DimDate[Date]))

Registrations Prev Qtr = CALCULATE(COUNT(Registration[Id]), PREVIOUSQUARTER(DimDate[Date]))
--These two come back as (Blank) results. And, the DimDate table is marked as the Date Table in the model.

Registrations Prev Qtr = CALCULATE(COUNTROWS(Registration), DATEADD(DimDate[Date], -1, QUARTER))

Registrations Prev Qtr = CALCULATE(COUNT(Registration[Id]), DATEADD(DimDate[Date], -1, QUARTER))
--These one comes back with a much higher number than expected.

I have made this video to show what I am seeing: https://easierway-my.sharepoint.com/:v:/g/personal/crisher_1path_com/ETqUQgMzMO5EggdP5rT03KIBKQi_NYM...

I have reviewed this post as well. But, that solution didn't seem to help.

1 ACCEPTED SOLUTION
PaulOlding
Super User
Super User

I think it's because the PREVIOUSQUARTER function doesn't mean previous to today's date, it's the previous quarter to the earliest date in the current filter context.

You have the measure in a card, with no filter on date applied.  So, PREVIOUSQUARTER is going to be returning the dates in the quarter before the earliest date in your DimDate table.  Hopefully that's a period where there's no data in your fact table (otherwise you've got an issue with your date table) and is why the measure returns blank.

 

What happens if you apply a filter to the card visual only, setting DimDate[Date] to today's date?

View solution in original post

3 REPLIES 3
PaulOlding
Super User
Super User

I think it's because the PREVIOUSQUARTER function doesn't mean previous to today's date, it's the previous quarter to the earliest date in the current filter context.

You have the measure in a card, with no filter on date applied.  So, PREVIOUSQUARTER is going to be returning the dates in the quarter before the earliest date in your DimDate table.  Hopefully that's a period where there's no data in your fact table (otherwise you've got an issue with your date table) and is why the measure returns blank.

 

What happens if you apply a filter to the card visual only, setting DimDate[Date] to today's date?

View solution in original post

So, that worked. The only issue then is applying that filter context within the DAX measure as I am using that measure in another measure to calculate a ratio. I suppose I need to open a different thread about that.

If you want the measure to always return the previous quarter to today you could have something like

 

PREVIOUSQUARTER(

CALCULATETABLE(ALL(DimDate), DimDate[Date] = TODAY()))

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Power BI October Update 2021.jpg

Power BI Release

Click here to read more about the October 2021 Release!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

Teds Dev Camp Oct. 2021 768x460.jpg

Power BI Dev Camp - October 28th, 2021

Mark your calendars and join us for our next Power BI Dev Camp!

Top Solution Authors