Get certified for free when you join Fabric Data Days 2026 and dive into Fabric, Power BI, SQL, AI, and other essential data skills.
Join nowData Days is here! Join us now for 60+ days of learning, challenges, and connection. Learn more
Hi there,
I have a simplified data model with three tables.
1. account
---------
=======
2. opp( closedate dd/mm/yyyy)
----------
===========
3. and a date table Calendar.
=======
relationship:
account[accountid] ---> opp[accountid]
Calendar[Date] ---> opp[closedate]
======
the problematic measure:
----------
test4:=
VAR k =
ADDCOLUMNS( account,
"date", MAXX( FILTER( opp,
opp[accountid] = account[accountid]
&& opp[closedate] >= MIN( 'Calendar'[Date])
&& opp[closedate] <= MAX( 'Calendar'[Date])),
opp[closedate]))
RETURN
CALCULATE( COUNTROWS(k),
FILTER( k,
[date]>= MIN( 'Calendar'[Date])
&& [date] <= MAX('Calendar'[Date])))======
expected result:
---------
however the result is:
--------
====
I can get the correct result by modifying the measure, but I would like to know what was going wrong with the problematic measure and what the different was between test4 and test2 below. Thank you.
test2:=
VAR k = ADDCOLUMNS( account,
"date", MAXX( FILTER( opp,
opp[accountid] = account[accountid]
&& opp[closedate] >= MIN( 'Calendar'[Date])
&& opp[closedate] <= MAX( 'Calendar'[Date])),
opp[closedate]))
RETURN
COUNTROWS(FILTER( k,
[date]>= MIN( 'Calendar'[Date])
&& [date] <= MAX('Calendar'[Date])))
Hi Frank,
Can you shed some light on my above questions? Thank you. 🙂
Hi @Anonymous ,
As I know CALCULATE function evaluates an expression in a context that is modified by the specified filters. Here the table k is not a fact table, so the issue occur.
Regards,
Frank
Hi @Anonymous ,
Does that make sense? If so, kindly mark my answer as the solution to close the case please. Thanks in advance.
Regards,
Frank
Hi Frank,
Thanks for your reply and the follow-up. I just got another question, kindly take a look at the expression below.
If the account table is used inside COUNTROWS instead of k, I can also get the correct result. As I read it from the some other posts, the original table has nothing to do with the table generated by ADDCOLUMNS. Is that true? If so, why the account table can be filtered?
RETURN
CALCULATE( COUNTROWS(account),
FILTER( k,
[date]>= MIN( 'Calendar'[Date])
&& [date] <= MAX('Calendar'[Date])))
Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.
Check out the May 2026 Power BI update to learn about new features.
| User | Count |
|---|---|
| 23 | |
| 23 | |
| 20 | |
| 18 | |
| 14 |
| User | Count |
|---|---|
| 58 | |
| 51 | |
| 41 | |
| 30 | |
| 24 |