Step into the Power Platform kitchen, where the aroma of innovation blends with the essence of tradition. In my Power Platform adventures, I still infuse the classic ingredients into my recipes, and using classic workflows is one of them.
For me, it is not just a battle of classic workflow versus Power Automate. For me, there is enough room to use a mixture of both.
In this article below, I would like to share with you a few of my thoughts about workflows.
Firstly, why do I think that the workflows are not going anywhere, or at least not anywhere soon? Secondly, why do I still use workflows and when?
First Flows
According to Wikipedia, Microsoft Flow was released on 1st November 2016. Then 3 years later it was re-branded to its current name, Power Automate. I have not started using it though till about mid-year of 2020. I remember it well; it was the pandemic, and we had this one week of summer in Scotland. I was working in my kitchen, looking outside wanting to be in my sunny garden, but instead, I was painfully learning how to populate a lookup field… What about you, do you remember your first flow?
Anyway, I was advised at the time that I needed to embrace this new way of creating automation as the classic workflows would soon be deprecated.
However, almost 4 years later, I have not seen a single indication from Microsoft on when and if that will be actually happening, have you? Do not get me wrong, I love creating Power Automate – from simple flows to using them for system integrations. Nevertheless, I am what I have described in my previous blog a “D365 traditionalist” and I still do frequently use the classic workflows.
Let’s have another quick history lesson.
Migration tools
Have you ever worked with the classic automatic record creation rules and service-level agreements in the D365 Customer Service? They were both deprecated in favour of using the Unified Interface.
However, how did Microsoft go about it? They have released a migration tool to assist with this deprecation, haven't they?
Similarly, with the deprecation of the Microsoft Dataverse (legacy) connector. On the announcement of its depreciation, Microsoft also released a migration assistant to support the change. More likely there are some other examples of the migration tools and assistants, but you got the idea.
I am not a gambler, but if I would need to bet, I would bet that if this day were to come when the workflows would be deprecated, Microsoft would need to release something to help with this big transition.
Complexity
I also don’t have fully extensive technical knowledge of this, but I can imagine that the complexity of this potential tool is immersive. I have worked on some complex workflows before and when I think about them, I have my doubts that there will be a straightforward way to replace all the branching with conditions or switches. I am sure is doable, but even with the greatest migration assistant, I would still want to verify that the logic is the same in every single of the migrated workflows.
What about connection references? Do you think there will be an option to automatically use the existing Service Account by default? And will we be able to easily migrate the workflows that call a plugin step or an action?
Thinking about that doesn’t cause me sleepless nights, but I do wonder if Microsoft is secretly working on something so complex to address the multiple aspects of this potential migration tool. Or will there be a Copilot to help with the migration? Obviously, all of that is just my speculation and only time will show what will happen.
In the meantime, let’s run through some facts.
Customer Impact
Creating a migration tool is one thing, but what about the actual execution of the migration? And funding of it? I worked on some big projects with customers having hundreds of workflows in use. Today, looking through the lenses of Power Platform capabilities, you would probably label them as a “legacy” system with some outdated functionality.
However, these legacy systems built using classic workflows are used by some non-profit organisations. For some of them, it was a big stretch to implement a new system. Because of that, somehow, I struggle to see them securing enough funding to easily move the automation to Power Automate. And something like that cannot be done without proper end-to-end testing – again, more time and resources would be needed to support that.
Of course, change and progress is part of the technological evolution. However, I also believe that Microsoft is aware of the reality of the situation, and I do not think that they are in a hurry to push this agenda. As of now, Microsoft does recommend using Power Automate instead of workflows. But it's just a recommendation.
Power Automate limitations
Looking at the Power Platform itself and the use of workflows versus Power Automate, there are also some limitations.
The first one is with the business process flows. As of now, you can add a Power Automate to your business process flow. However, the feature is still only available in preview.
The same for Power Pages. For basic forms, you can add a workflow execution on form submission, but there is no option to call Power Automate, is it?
How about running a simple validation and showing an error to a user? Of course, you can do it with JavaScript, PowerFX or somehow with business rules. However, for a functional consultant like me, a classic workflow validation is the easiest and quickest to use.
Therefore, that takes me to another conclusion that Microsoft needs to introduce a new feature to Power Pages and hopefully give us something new to replace that pop-up message before they start thinking about workflow deprecation.
I haven’t mentioned the obvious yet – the “real-time” workflows. I did not forget about it; I just think that maybe the low-code plugin can fill that gap. Perhaps, but they are still only in preview and it’s too early for me to make that judgment call, so I won’t dive into that subject at all for now.
So, this brings me to the end of my list of reasons why I don’t think Microsoft will deprecate the classic workflows anytime soon. I would also like to share a few reasons why I still use the classic workflows.
Why workflows?
First one? Classic workflows are so much faster to create and test for any simple logic. One of my first mentors taught me that for some tables (e.g. intersect), there will not be a proper use of the primary field, i.e. name. So, when creating intersect tables, I would also create a workflow to update the name field. Otherwise, it would show as a blank column:
Of course, I can do it with Power Automate, but I do like to put a date to the name, etc. It is just much quicker to do it with workflows instead of introducing dates and applying formatting.
Also, when I want to show a validation error to a user, I would use a classic workflow. If you do not want to add too many mandatory fields to a form, but you want to make sure that the user populates certain fields before e.g. resolving a case, you can do the same.
There are other ways of achieving the same result, but this is my go-to method.
Additionally, as I mentioned before, when I need to call out for automation on portals or via business process flow, I would use the classic workflow as it’s the only option for the time being.
What is more, we have more control over the order of executing the workflows. If certain automation needs to be kept separate and needs to be executed in a specific order, the workflows are also the better solution to use. Why? XrmToolBox has the “synchronous events execution order editor” that allows to change the order of the workflow execution.
Last, but not least, workflows do not have any API or licence restrictions. Personally, that hasn’t caused me any issues yet. However, that is also something to keep in mind before ruling the workflows out.
Final words
On the other hand, workflows also have their limitations as well. As you probably know, when you need to apply loops, use environment variables, or trigger automation from a Canvas App, Power Automate is the only answer. Therefore, I will always be a big fan of Power Automate. I just struggle to say a hard “goodbye” to the workflows for now. What about you?
I agree