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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Anonymous
Not applicable

Expression.Error: We cannot apply operator - to types Function and DateTime.

This is really really weird. All the below is performed in the Transform Data section of Power BI

 

Simply the below statement causes an expression error (on around 1,000 rows or 69,000)

 

AGE(Days) if [DateCleared] = null then DateTime.LocalNow - [DateCreated] else [DateCleared] - [DateCreated]

 

This produces this Expression Error on some rows,

Out of 69,000 only around 1,000 are failing. Of those rows failingthey are all nulls in Date Cleared 

 

Expression.Error: We cannot apply operator - to types Function and DateTime.

Details:

    Operator=-

    Left=[Function]

    Right=15/10/2020 12:11:54

 

Assumptions 

Well yes it can perform that operation as it has done so in the past (without errors) as hightlighted below (yes its much shorter than the IF statement but shows the operation can be performed) 

 

AGE = DateTime.LocalNow() - [DateCreated]

 

The above operation was made through the Transform Data UI  Add Column>> From Date & Time >> Age and then going to Duration >> Days. This compeleted without errors

 

Yet when i try and hard code the above as a test using Custom Column just now it failed with Expression error  We cannot apply operator - to types Function and DateTime. But it did it using the UI 

 

Question (s)

1. How is it that i can achieve the result using the GUI but not hard coding it under Custom Column 

2. What is wrong with the IF statement 

1 ACCEPTED SOLUTION
watkinnc
Super User
Super User

Use Date.From(DateTime.LocalNow())

 

 Now it's date-date. 
--Nate


I’m usually answering from my phone, which means the results are visualized only in my mind. You’ll need to use my answer to know that it works—but it will work!!

View solution in original post

1 REPLY 1
watkinnc
Super User
Super User

Use Date.From(DateTime.LocalNow())

 

 Now it's date-date. 
--Nate


I’m usually answering from my phone, which means the results are visualized only in my mind. You’ll need to use my answer to know that it works—but it will work!!

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors
Top Kudoed Authors