Power BI is turning 10, and we’re marking the occasion with a special community challenge. Use your creativity to tell a story, uncover trends, or highlight something unexpected.
Get startedJoin us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.
Hi, I have a sales table (see below) of all sales. I would like to figure out for each customer the next month they ordered but only for orders that have an order status of either 'processing' or 'complete', so for example in row 2, customer 2 next order is Apr 21 rather than Dec 20 because the Dec 20 order failed. If there is no new order, I'd like to leave it blank. See column I for what I am looking for. Many thanks!
Solved! Go to Solution.
@Anonymous add a new column using following DAX code:
Next Order Date =
VAR __table = FILTER ( ALLEXCEPT( 'Order', 'Order'[Customer ID] ), 'Order'[Order Status] IN { "Processing", "Complete" } )
VAR __currentDate = 'Order'[Order Date]
VAR __nextOrderDate = CALCULATE ( FIRSTDATE ( 'Order'[Order Date] ), __table, 'Order'[Order Date] > __currentDate )
RETURN __nextOrderDate
✨ Follow us on LinkedIn
Check my latest blog post The Power of Using Calculation Groups with Inactive Relationships (Part 1) (perytus.com) I would ❤ Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos to whoever helped to solve your problem. It is a token of appreciation!
⚡ Visit us at https://perytus.com, your one-stop-shop for Power BI-related projects/training/consultancy.⚡
Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!
Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo
If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤
Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.
@Anonymous add a new column using following DAX code:
Next Order Date =
VAR __table = FILTER ( ALLEXCEPT( 'Order', 'Order'[Customer ID] ), 'Order'[Order Status] IN { "Processing", "Complete" } )
VAR __currentDate = 'Order'[Order Date]
VAR __nextOrderDate = CALCULATE ( FIRSTDATE ( 'Order'[Order Date] ), __table, 'Order'[Order Date] > __currentDate )
RETURN __nextOrderDate
✨ Follow us on LinkedIn
Check my latest blog post The Power of Using Calculation Groups with Inactive Relationships (Part 1) (perytus.com) I would ❤ Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos to whoever helped to solve your problem. It is a token of appreciation!
⚡ Visit us at https://perytus.com, your one-stop-shop for Power BI-related projects/training/consultancy.⚡
Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!
Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo
If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤
Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.
Thanks, had to make a slight tweak but it worked (the IN function wasn't working for some reason or other so I used
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Check out the June 2025 Power BI update to learn about new features.
User | Count |
---|---|
61 | |
56 | |
55 | |
36 | |
34 |
User | Count |
---|---|
77 | |
73 | |
45 | |
45 | |
43 |