March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
Hi all,
I'm new to Power BI, but know my way around in SQL.
I'm trying to create a calculated column / measure with an if statement.
What I want to achieve is this:
if maxdate is larger than today - 3 months, then value 1 else value 0.
This should be very easy to do in my opnion
Column = if(Query1[maxdate]>dateadd(TODAY(),-3,MONTH),"1","0")
But I get the error: The first argument to DATEADD must specify a column.
Why isn't it possible to use today() ?
And how should I solve this?
(I tried it as a measure as well, but again to no avail.)
Could someone please help me?
I know I can solve it easily in my SQL query, but I want to understand why this doesn't work or how to solve this?
Solved! Go to Solution.
Table.Addcolumn needs a table parameter where you want to add the column. In my case the table is called '"Changed Type" which is the name of my last transformation step before Table.AddColumn.
Your approach was just by using the button "custom column" So there you just write
if [EndDate]<Date.AddMonths(Date.From(DateTime.LocalNow()),-3) then 1 else 0)
The rest will be added by Query Editor itself.
So when you click on the word error he will show you some details about it.
However
You say that your date column is in datetime format? Could you please write Date.From([lastLD]) instead of [lastLD]
Brackets are ok as far as i see
hi @WillemC
unfortunately it is different from sql language. In your case I would prefer Power Query to do the job.
You can add a userdefined column
okay, help me out a little bit.
Where do I put this power query?
I'm in the Query editor, under Add Column I see different types.
Do I need a Custom Column or Conditional Column? Or something else?
The query itself is clear to me.
custom column
all other options are in fact custom columns as well. But they help you to get your wishes without writing code.
(conditional e.g. is the click variant of if then else)
Thank you.
Just one small question, what does the #"Changed Type" mean?
Since it's throwing me an error.
Quick Google search didn't give me an answer right away.
edit:
seems that's the table name on which you want to add the column.
Table.Addcolumn needs a table parameter where you want to add the column. In my case the table is called '"Changed Type" which is the name of my last transformation step before Table.AddColumn.
Your approach was just by using the button "custom column" So there you just write
if [EndDate]<Date.AddMonths(Date.From(DateTime.LocalNow()),-3) then 1 else 0)
The rest will be added by Query Editor itself.
still not working
I've altered it to:
= if [lastLD]>Date.AddMonths(Date.From(DateTime.LocalNow()),-3) then 1 else 0
The column gets created but only contains Error.
If I add an ) on the end, I get a Token Eof expected error, which seems valid to me, since that one doesn't belong to anything.
de lastLD is formatted in d-m-yyyy h:mm:ss
So when you click on the word error he will show you some details about it.
However
You say that your date column is in datetime format? Could you please write Date.From([lastLD]) instead of [lastLD]
Brackets are ok as far as i see
Superb, it working now.
Thank you very much.
The expression is giving me the following error:
Expression.Error: Evaluation resulted in a stack overflow and cannot continue.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.
Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.
User | Count |
---|---|
134 | |
91 | |
89 | |
64 | |
58 |
User | Count |
---|---|
201 | |
137 | |
107 | |
72 | |
68 |