Supplies are limited. Contact info@espc.tech right away to save your spot before the conference sells out.
Get your discountScore big with last-minute savings on the final tickets to FabCon Vienna. Secure your discount
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] )
)
User | Count |
---|---|
13 | |
10 | |
8 | |
7 | |
5 |
User | Count |
---|---|
24 | |
16 | |
15 | |
10 | |
7 |