Advance your Data & AI career with 50 days of live learning, dataviz contests, hands-on challenges, study groups & certifications and more!
Get registeredGet Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Learn more
Hi - I'm relatively new to DAX, and I have the following issue that I cannot get passed.
I have a table with invoices, and an related table (they share InvoiceID) with all ledger postings related to these invoices.
I want to create a custom column in the Invoice table with payment days (using DAX) based on the following rationale:
Hopeful someone can help.
/LarsM
Invoice and Postings table extract.
Invoice table extract
Postings table extract
[Payment Days] = // calc column
VAR __maxAmount =
MAXX(
RELATEDTABLE( Postings ),
Postings[Amount]
)
var __minAmount =
MINX(
RELATEDTABLE( Postings ),
Postings[Amount]
)
var __amountsAreCorrect =
__maxAmount > 0
&& ( __maxAmount + __minAmount = 0 )
var __dayOfMaxAmount =
CALCULATE(
VALUES( Postings[Date] ),
Postings[Amount] = __maxAmount
)
var __dayOfMinAmount =
CALCULATE(
VALUES( Postings[Date] ),
Postings[Amount] = __minAmount
)
var __onlyOnePairOfDatesFound =
COUNTROWS( __dayOfMinAmount ) = 1
&&
1 = COUNTROWS( __dayOfMaxAmount )
var __shouldCalculate =
__amountsAreCorrect && __onlyOnePairOfDatesFound
RETURN
if( __shouldCalculate, int(__dayOfMaxAmount - __dayOfMinAmount) )
This should cover all the problems you might have in the Postings table. For instance, there could not be a matching negative amount.. and the likes.
Best
D
Hi @larsm11
Try this
Column =
VAR __amounts =
CALCULATETABLE(
{
MIN( Postings[Amount] ),
MIN( Postings[Amount] )
}
)
RETURN
CALCULATE(
DATEDIFF( MIN( Postings[Date] ), MAX( Postings[Date] ), DAY ),
TREATAS( __amounts, Postings[Amount] )
)
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!
Check out the October 2025 Power BI update to learn about new features.
| User | Count |
|---|---|
| 9 | |
| 5 | |
| 4 | |
| 3 | |
| 3 |
| User | Count |
|---|---|
| 23 | |
| 12 | |
| 11 | |
| 9 | |
| 8 |