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
I have two date columns. I am calculating the business days between the two dates but it is returning 0 days even for fields that are null. Is there a way to ignore those that do not have two dates and leave it blank? I am using this to calculate business hours // fnWorkHours(WHStarts, WHEnds, Ticket Start Date/Time, Ticket End Date/Time, Holidays)/WHDuration)
Here is the calculated column from within power query
Days = if [Date_Picked] <> null then fnWorkHours(WHStarts, WHEnds,[Date_Picked], if [Date_Req] <> null then [Date_Req] else null, Holidays)/WHDuration else null
I would like "Days" to return blanks for top 6 that have missing dates. And if possible to show a negative amount when the Date Req is greater than Date Picked. Currently it is showing 0 as well
Hi @rachaelwalker ,
Is there a way to ignore those that do not have two dates and leave it blank?
You can try to define the null value first in the if statement when creating the custom column, like this:
= if [Date_Picked] = null or [Date_Req] = null then null else nWorkHours(WHStarts, WHEnds,[Date_Picked], if [Date_Req] <> null then [Date_Req] else null, Holidays)/WHDuration
if possible to show a negative amount when the Date Req is greater than Date Picked
If you also wants to show a negative amount, perhaps you can consider sharing your custom function fnWorkHours like @ jennratten mentioned.
Best Regards,
Community Support Team _ Yingjie Li
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hello - this is how you can evaluate the difference between the dates, returning null values for records without two dates and a negative value if the start date is greater than the end date. If this does not work for you pls post the script for your custom function fnWorkHours - that may need to be modified.
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMtc3MgAiI0MFQ0MrAwOFxFwlHSWlWJ1oJQt9Q1OojBFIpgAuY6lviCFhqA8yychIwcTKxFQhwBes0NAAYTohpYb6hliUGsKsQlaLVwLD8FgA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [StartDate = _t, EndDate = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"StartDate", type datetime}, {"EndDate", type datetime}}),
#"Inserted Date Subtraction" = Table.AddColumn(#"Changed Type", "Days", each Duration.Days([EndDate] - [StartDate]), type number)
in
#"Inserted Date Subtraction"
If this post helps to answer your questions, please consider marking it as a solution so others can find it more quickly when faced with a similar challenge.
Proud to be a Microsoft Fabric Super User
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.