Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.
Check it out now!Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers. Get Fabric certified for FREE! Learn more
Hello,
Can you unlock me on a Dax measure?
I would like to have a monthly bar chart with a calculation of overdue orders each month.
Example:
The customer requests a delivery for the 02/01/2021 (DELIVERY REQUESTED DATE)
Delivery is delivered late on 03/15/2021 (DELIVERY DATE)
My histogram should look like this

Thank you so much !
Hello @DGTL ,
One of the options to achieve your result:
1. Create a calendar table with months (first day of each month). This table will be used for your X axis. No relations are needed.
Example:
[Date] (month/day/year)
5/1/2020 |
6/1/2020 |
7/1/2020 |
8/1/2020 |
9/1/2020 |
etc |
2. Create a measure:
Overdue orders =
VAR currentDate = EOMONTH(SELECTEDVALUE('Calendar'[Date]), 0)
VAR result =
CALCULATE(
COUNTROWS(Overdue_orders),
FILTER(Overdue_orders,
currentDate >= Overdue_orders[Requested date] &&
currentDate <= EOMONTH(Overdue_orders[Delivered date], 0) &&
Overdue_orders[Requested date] <> Overdue_orders[Delivered date]
)
)
Return
IF(ISBLANK(result),0,result)
Did I answer your question? Mark my post as a solution!
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly. Appreciate your Kudos.
Check out my latest demo report in the data story gallery.
Stand with Ukraine!
Here are official ways you can support Ukraine financially (accounts with multiple currencies):
1) Support the Armed Forces of Ukraine: https://bank.gov.ua/ua/about/support-the-armed-forces
2) Come Back Alive foundation: https://www.comebackalive.in.ua/
Thank you!
Hi ERD, thank you so much for your answer ! But not working... 😥
View the attachment .pbix :
Another option upon Table Dates:
overdueOrders2 =
var currentDate2 = SELECTEDVALUE('Table Dates'[Date])
var RES2 =
CALCULATE(
COUNTROWS(Overdue_orders),
FILTER(
Overdue_orders,
currentDate2 >= Overdue_orders[Requested date] &&
currentDate2 <= Overdue_orders[Delivered date]))
Return
IF(ISBLANK(RES2),0,RES2)
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly. Appreciate your Kudos.
Check out my latest demo report in the data story gallery.
Stand with Ukraine!
Here are official ways you can support Ukraine financially (accounts with multiple currencies):
1) Support the Armed Forces of Ukraine: https://bank.gov.ua/ua/about/support-the-armed-forces
2) Come Back Alive foundation: https://www.comebackalive.in.ua/
Thank you!
!
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly. Appreciate your Kudos.
Check out my latest demo report in the data story gallery.
Stand with Ukraine!
Here are official ways you can support Ukraine financially (accounts with multiple currencies):
1) Support the Armed Forces of Ukraine: https://bank.gov.ua/ua/about/support-the-armed-forces
2) Come Back Alive foundation: https://www.comebackalive.in.ua/
Thank you!
up please 🙂
Hi,
you can create 2 new columns to solve your problem. First create a column with Overdue, like this:
OVERDUE = IF('Table'[DELIVERY DATE].[Date] > 'Table'[DELIVERY REQUESTED DATE].[Date],1,0)
and then the month form the table you want to call "late", I used the actual delivery date for mine:
MONTH = MONTH('Table'[DELIVERY DATE].[Date])
After that you can simply create the histogram with the sum of OVERUDE on Y axis and MONTH on X axis.
Thanks Ascarim,
But not working... if the delivery date have several months late, I would not see it in this case. It must be represented on each late month. Like in the first picture
User | Count |
---|---|
12 | |
12 | |
11 | |
10 | |
9 |
User | Count |
---|---|
29 | |
16 | |
15 | |
13 | |
12 |