Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Anonymous
Not applicable

Return Max Date if Value Is 0 Per ID

I would like a DAX statement that returns the MAX(Date) for each ID only if the Amount=0 for the record with the MAX(Date) value.

 

End Date = CALCULATE(MAX(SampleData[Date],ALLEXCEPT(SampleData, SampleData[ID])

 

gets the MAX(Date) for each ID, but obviously doesn't account for the Amount being 0. I am not sure whether I need an IF statement or a FILTER (or both).

 

Thank you!

 

SampleData

IDDateAmountEnd Date
12/1/2020500.00 
13/12/20200.003/12/2020
21/11/2020300.00 
31/4/2020255.00 
32/15/20200 
33/22/202014.00 
41/21/202051.00 
42/16/20200 
43/17/202003/17/2020
1 ACCEPTED SOLUTION
camargos88
Community Champion
Community Champion

Hi @Anonymous ,

 

Try this code for calculated column:

 

End Date =
VAR _lastDate = CALCULATE(MAX('Table'[Date]); ALLEXCEPT('Table'; 'Table'[ID]))
RETURN IF('Table'[Amount] = 0 && 'Table'[Date] = _lastDate; _lastDate ; BLANK())
 

If you consider it as a solution, please mark as a solution and kudos.

Ricardo

 


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



View solution in original post

1 REPLY 1
camargos88
Community Champion
Community Champion

Hi @Anonymous ,

 

Try this code for calculated column:

 

End Date =
VAR _lastDate = CALCULATE(MAX('Table'[Date]); ALLEXCEPT('Table'; 'Table'[ID]))
RETURN IF('Table'[Amount] = 0 && 'Table'[Date] = _lastDate; _lastDate ; BLANK())
 

If you consider it as a solution, please mark as a solution and kudos.

Ricardo

 


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.