Forum Discussion
Calculating active users based on the last 6 months
- 7 years ago
Hi DusterD
Here try this.Past 6 months active = CALCULATE( INT( DISTINCTCOUNT( Table1[CASE_ID] ) >= 3 ), DATESINPERIOD( Table1[DATE_SUBMITED].[Date], MAX( Table1[DATE_SUBMITED].[Date] ), -6, MONTH ) )- DISTINCTCOUNT will count distinct Case ID, if no duplicates you can replace it with COUNTROWS( Table1 )
- >= 3 will convert the count to true \ false
- INT() will convert it to 1/0, so 1 is for active customer with 3 and over
Best Regards,
Mariusz
If this post helps, then please consider Accepting it as the solution.
Please feel free to connect with me. - 7 years ago
Hi DusterD
The below will count the active users
Past 6 months active = VAR _users = CALCULATETABLE( GROUPBY( Table1, Table1[USER_ID], "CaseCount", COUNTX( CURRENTGROUP(), Table1[CASE_ID] ) ), DATESINPERIOD( Table1[DATE_SUBMITED].[Date], MAX( Table1[DATE_SUBMITED].[Date] ), -6, MONTH ) ) RETURN COUNTROWS( FILTER( _users, [CaseCount] > 2 ) )Best Regards,
Mariusz
If this post helps, then please consider Accepting it as the solution.
Please feel free to connect with me.
Hi DusterD
Please see the below.
data used for this scenario.
CASE_IDUSER_IDDATE_SUBMITED
| 1 | 1 | 03/06/2019 00:14:00 |
| 2 | 1 | 03/07/2019 00:14:00 |
| 3 | 1 | 04/04/2019 00:14:00 |
| 4 | 1 | 02/06/2019 00:14:00 |
| 5 | 1 | 01/06/2019 00:14:00 |
| 6 | 1 | 03/06/2019 00:14:00 |
| 7 | 1 | 03/06/2019 00:14:00 |
| 8 | 3 | 03/06/2019 00:14:00 |
| 9 | 3 | 01/06/2019 00:14:00 |
| 10 | 2 | 04/06/2019 00:14:00 |
| 11 | 2 | 05/06/2019 00:14:00 |
| 12 | 2 | 03/01/2019 00:14:00 |
| 13 | 2 | 03/01/2019 00:14:00 |
| 14 | 2 | 03/01/2019 00:14:00 |
| 15 | 2 | 03/01/2019 00:14:00 |
| 16 | 2 | 03/01/2019 00:14:00 |
Please see the below screenshot.
Based on the sample above, in Jun 2019, user 1 and 2 were active because they have raised 3 or more cases with in 6 months Jan to June
Mariusz
If this post helps, then please consider Accepting it as the solution.
Please feel free to connect with me.
Hi Mariusz
This works, however I'm getting a number that's too high. Could this be caused by the fact that this report islooking at December to May? Since it's changing from 2018 to 2019?
- Mariusz7 years ago
Community Champion
Hi DusterD
The below will count the active users
Past 6 months active = VAR _users = CALCULATETABLE( GROUPBY( Table1, Table1[USER_ID], "CaseCount", COUNTX( CURRENTGROUP(), Table1[CASE_ID] ) ), DATESINPERIOD( Table1[DATE_SUBMITED].[Date], MAX( Table1[DATE_SUBMITED].[Date] ), -6, MONTH ) ) RETURN COUNTROWS( FILTER( _users, [CaseCount] > 2 ) )Best Regards,
Mariusz
If this post helps, then please consider Accepting it as the solution.
Please feel free to connect with me. - DusterD7 years agoFrequent Visitor
Hi Mariusz
Digging deeper, I created measure to get a distinctcount user IDs and when I select the 6 months in the slicer the number is exactly what I'm looking for. My end goal here is to be able to have a count of active users per month that I can graph. Thanks so much for your help!
Correct number with 6 months selectedToo low when latest month selectedToo high when all months selected