Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Solved! Go to Solution.
It would be helpful next time (or if this doesn't work) to include some sample data to work with.
The order matters with these statements, so try this instead.
Status Approval =
SWITCH (
TRUE (),
ISBLANK ('Execution Status'[Approved Date].[Date])
&& ('Execution Status'[Due Date].[Date]) < TODAY (), "Overdue",
ISBLANK ( 'Execution Status'[Approved Date].[Date] ), "In Process",
'Execution Status'[Approved Date].[Date] < 'Execution Status' [Due Date].[Date], "On Time",
"Completed Late"
)
| Have I solved your problem? Please click Accept as Solution so I don't keep coming back to this post, oh yeah, others may find it useful also ;). |
Hi,
Try this calculated column formula
Status Approval = IF(ISBLANK([Approved Date]),IF(TODAY()>[Due date],"Overdue","In Process"),IF([Approved Date]>[Due Date],"Late","On Time"))
Hope this helps.
If I understand you correctly, maybe something like this...
Status Approval =
SWITCH (
TRUE (),
ISBLANK ( '[Approved Date].[Date]' )
&& '[Due Due].[Date]'
> TODAY (), "Overdue",
'[Approved Date].[Date]' > '[Due Date].[Date]', "Late",
ISBLANK ( '[Approved Date].[Date]' ), "In Process",
"On Time"
)
| Have I solved your problem? Please click Accept as Solution so I don't keep coming back to this post, oh yeah, others may find it useful also ;). |
PowerBI doesn't like that
Try removing the single quotes maybe?
| Have I solved your problem? Please click Accept as Solution so I don't keep coming back to this post, oh yeah, others may find it useful also ;). |
Had to do that and add the table name. Not throwing an error anymore, but still not populating the field correctly.
Overdue seems to be working correctly, but the filed is populating with On Time when the Approved date field is blank. That should be "In Process". The "Completed late" calcuation appears to be correct as well.
Status Approval =
SWITCH (
TRUE (),
ISBLANK ('Execution Status'[Approved Date].[Date])
&& ('Execution Status'[Due Date].[Date]) < TODAY (), "Overdue",
'Execution Status'[Approved Date].[Date] < 'Execution Status' [Due Date].[Date], "On Time",
ISBLANK ( 'Execution Status'[Approved Date].[Date] ), "In Process","Completed Late"
)
It would be helpful next time (or if this doesn't work) to include some sample data to work with.
The order matters with these statements, so try this instead.
Status Approval =
SWITCH (
TRUE (),
ISBLANK ('Execution Status'[Approved Date].[Date])
&& ('Execution Status'[Due Date].[Date]) < TODAY (), "Overdue",
ISBLANK ( 'Execution Status'[Approved Date].[Date] ), "In Process",
'Execution Status'[Approved Date].[Date] < 'Execution Status' [Due Date].[Date], "On Time",
"Completed Late"
)
| Have I solved your problem? Please click Accept as Solution so I don't keep coming back to this post, oh yeah, others may find it useful also ;). |
That did the trick. Thank you so much for your help. Still trying to learn all of this.
Happy to help.
| Have I solved your problem? Please click Accept as Solution so I don't keep coming back to this post, oh yeah, others may find it useful also ;). |
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
| User | Count |
|---|---|
| 37 | |
| 37 | |
| 33 | |
| 32 | |
| 29 |
| User | Count |
|---|---|
| 130 | |
| 88 | |
| 82 | |
| 68 | |
| 64 |