Forum Discussion
Question on relative time
Please try a column expression like this (DAX column, not a query column)
Invoice Status =
VAR vMonthsOld =
DATEDIFF (
Table[InvoiceDate],
TODAY (),
MONTH
)
VAR vResult =
SWITCH (
TRUE (),
vMonthsOld <= 4, "Active",
vMonthsOld <= 8, "Active A",
vMonthsOld <= 12, "Active B",
"Inactive"
)
RETURN
vResultPat
Yes. I think you could replace the vMonthsOld variable with
vMonthsOld = CALCULATE(MAX('P21&IBS Data'[Date]), ALLEXCEPT('P21&IBS Data', 'P21&IBS Data'[CustomerName]))
If not, please share some representative mock data for a modified solution.
Pat
4 Replies
- mahoneypatMicrosoft Employee
Please try a column expression like this (DAX column, not a query column)
Invoice Status =
VAR vMonthsOld =
DATEDIFF (
Table[InvoiceDate],
TODAY (),
MONTH
)
VAR vResult =
SWITCH (
TRUE (),
vMonthsOld <= 4, "Active",
vMonthsOld <= 8, "Active A",
vMonthsOld <= 12, "Active B",
"Inactive"
)
RETURN
vResultPat
- jwisraelFrequent Visitor
Thank you! This worked great, however, because my data goes line by line with invoices, this just bases it on where the date falls with that specific invoice. Is there a way to highlight the relative time from last invoice date by customer name within the expression you sent? I tried adding this into the expression,
Last Customer Invoice Date = CALCULATE(LASTDATE('P21&IBS Data'[Date]), ALLEXCEPT('P21&IBS Data','P21&IBS Data'[CustomerName])).
- mahoneypatMicrosoft Employee
Yes. I think you could replace the vMonthsOld variable with
vMonthsOld = CALCULATE(MAX('P21&IBS Data'[Date]), ALLEXCEPT('P21&IBS Data', 'P21&IBS Data'[CustomerName]))
If not, please share some representative mock data for a modified solution.
Pat
- jwisraelFrequent Visitor
I eneded up creating another date column for last invocie date and using that in the model you provided. Worked great, plus I can have a column that tells me their exact last invoice dat. I appreciate your help, thank you.
JW