Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.
Sign up nowGet Fabric certified for FREE! Don't miss your chance! Learn more
Hi There,
I'm looking for a more elegant way sum based on a prior business day calculation. The following *does work* but will get a little more cumbersome when doing MTD or YTD calculations:
Prior Day Invoiced = CALCULATE(sum('Sales Ledger Transactions'[Net Sales]),'Sales Ledger Transactions'[Fact Attributes.Source Sale Type Code] = "INVOICED",
'Sales Ledger Transactions'[Date.Date] = (if(weekday(today(),1)=1,today() - 2,
if(WEEKDAY(today(),1)=2,today()-3, today()-1))))
What I'd like to do (see below) blows up with the error "A function 'CALCULATE' has been used in a True/False expression that is used as a table filter expression. This is not allowed.". This seems pretty simple but I can't seem to make it work:
Prior Day Invoiced = CALCULATE(sum('Sales Ledger Transactions'[Net Sales]),'Sales Ledger Transactions'[Fact Attributes.Source Sale Type Code] = "INVOICED", 'Sales Ledger Transactions'[Date.Date] = [Priorbusinessday])
Priorbusinessday = if(weekday(today(),1)=1,today() - 2, if(WEEKDAY(today(),1)=2,today()-3, today()-1))
Is there a more elegant way to use the Priorbusinessday measure or will I have to use the first method?
Thanks in Advance.
Solved! Go to Solution.
Try this one
Prior Day Invoiced =
VAR PreviousBusinessDay = [Priorbusinessday]
RETURN
CALCULATE (
SUM ( 'Sales Ledger Transactions'[Net Sales] ),
'Sales Ledger Transactions'[Fact Attributes.Source Sale Type Code] = "INVOICED",
'Sales Ledger Transactions'[Date.Date] = PreviousBusinessDay
)
Try this one
Prior Day Invoiced =
VAR PreviousBusinessDay = [Priorbusinessday]
RETURN
CALCULATE (
SUM ( 'Sales Ledger Transactions'[Net Sales] ),
'Sales Ledger Transactions'[Fact Attributes.Source Sale Type Code] = "INVOICED",
'Sales Ledger Transactions'[Date.Date] = PreviousBusinessDay
)
Worked for hours on this problem before I found this solution. Thank you @Zubair_Muhammad !
Any help explaining why it wouldn't work without creating the variable? I still don't understand the error fully.
rq
Same here.
Any elaboration is appreciated.
@Zubair_Muhammad Nice solution setting the measure equal to a variable first. Works around Calculate not accepting a true/false expression as a filter very nicely
Thank you!
Thanks for your help Zubair - it worked well!
If you love stickers, then you will definitely want to check out our Community Sticker Challenge!
Check out the January 2026 Power BI update to learn about new features.
| User | Count |
|---|---|
| 64 | |
| 63 | |
| 49 | |
| 21 | |
| 18 |
| User | Count |
|---|---|
| 121 | |
| 118 | |
| 38 | |
| 36 | |
| 29 |