Skip to main content

Notifications

Announcements

No record found.

Community site session details

Community site session details

Session Id :

Microsoft Flow vs Microsoft Dynamics CRM Workflow

Varun Singh Profile Picture Varun Singh 941

Microsoft future vision is making it easier for every business to transform how people work in their Office 365 Ecosystem. Microsoft Flow is one of the services which will help businesses to get more productivity across various online services and platform.

These days while creation of Dynamics CRM Workflow, you might have noticed the below Notification from MS: "We recommend using Microsoft Flow instead of background workflows"

        0647.pastedimage1577659352798v1.png

What does it mean?

In future we might have to take approach of a MS Flow as a first design. That is, any new asynchronous transaction with D365 CRM ?we have to approach the solution with Flow first, and if it doesn't fit, we need to fall back to Workflow.

In future MS Flow might be a vital component of Dynamics CRM Solution. So, thought of to write a blog which can tell us when to go for Dynamics 365 Workflow and Microsoft Flow.

A Dynamics CRM consultant knows what Microsoft Workflow is (both Asynchronous and Synchronous). However, still only few of us are using Microsoft Flow applications with Dynamics CRM.

Microsoft Flow is Microsoft’s online service that automates workflows across multiple web-based services platform. These services include Microsoft services like Dynamics 365 CRM, SharePoint, OneDrive, OneNote, Office 365 (Excel Online) and others, as well as many third-party services, like Twilio Messaging, Google Drive, WordPress, SurveyMonkey, third party email services (Gmail, Outlook.com etc), and even Facebook, LinkedIn social media platforms. The applications of MS Flow is infinite :-) , however, for your business process before selecting MS Flow or Dynamics CRM traditional workflow there are some key points which I will try to cover below.

In short, Microsoft Flow lets us create specific actions based on trigger events.

Technical reasons to use MS Flow:

  1. Dynamics Workflow can be synchronous (real-time) or asynchronous (background). Use Dynamics CRM workflow if your business process requires immediate action. Flows are quick, but not as quick as workflow. Meaning is that it's good for running the process in Background where some delay is ok, i.e. Good for asynchronous process.
  2. Microsoft Flow can be a better option for CRM system performance than Dynamics workflow. The more workflow instances & other system jobs that are executing, the heavier load that this Dynamics services will bear.
  3. Recurring Scheduled MS Flow Jobs instead of using "Timeout" and "Wait" conditions in Dynamics CRM. These jobs carry a performance overhead and carry a risk that if system jobs are waiting for long time periods and just think about the scenario when the system will wait for more than 10,000 system jobs & these are long running jobs which will be keep waiting for their resources, which can impact Dynamics CRM performance heavenly.
  4. If the job starts and ends within Dynamics 365, MS Dynamics Workflow is probably the best option to use, however, if the process touch-down other systems or services or would benefit from options offered by MS Flow that are not in Dynamics 365 Workflow, Flow should be considered for the job.

 

Some of the applications of MS Flow:

  1. Notifications:

         1.1) Push notifications: If you install the Flow app on your mobile device, you can create flows that give you a mobile push notification when a Dynamics 365 events happen and that is assigned to you. This you can use for approval process.

        1.2) SMS Text Notification using Twilio connector

        1.3) Email Notifications

  1. Approvals: The April update to Flow introduced a streamlined approval Flow that provides an elegant way to do approvals in Dynamics 365. While you could do an email Workflow in CRM, the process was not very elegant. It requires the person providing approval to be a Dynamics CRM user, and they have to log-in into CRM to make an approval. Using Microsoft Flow’s approval feature, the approver can approve via email, push notification, or from the Flow app. The other pleasant thing about using Microsoft Flow for approvals is all approval requests are handled the same way, so if the approver needs to approve a change to a Quote, Opportunity, Email template, a Dynamics 365 order, and approvals from other systems, the approval will happen in a uniform manner, and all pending approval requests will be visible from the Flow approvals centre. Once the approver approves the request, MS Flow can update the record to approved status in Dynamics 365, just we used to do via Workflow.

 

  1. Scheduled jobs: while Dynamics 365 includes some options in Workflow to delay a job for a specific time period (using a timeout or wait condition), there is no idea of a scheduled job. Until now. Microsoft Flow can be your job scheduler. Using the Recurrence option when you create your Flow, you can schedule recurring jobs to happen at virtually whatever time interval you want. This opens-up a world of possibilities for scheduled system automation.

            Think in this way you can expose a Dynamics CRM Action which other system can consume through WebAPI call and this Action you can schedule in recurring manner to process bulk data records in System.

                      7652.pastedimage1577659604621v3.png

  1. Extend the Microsoft Office integration: Using MS Flow and Office documents stored in One Drive for Business, Drop-Box, SharePoint etc. you can automate the integration between Dynamics 365 and Microsoft office. For example, if you want to have an excel spreadsheet that includes all the CRM records that meet a Dynamic criteria, but you don’t want to use export to Excel OOB feature of CRM on regular basis, for this you can Create a MS Flow to update an Excel spreadsheet in your Drobox or One Drive whenever a record is create/ updated in CRM. You can also do Excel integration with Dynamics CRM. Whenever you add a record in Excel it will create the same record in CRM.
  2. Lightweight integration options: Want the creation of a customer in Dynamics 365 for Operation (AX) to   trigger the creation of the same customer in Dynamics 365 Customer Engagement (CRM)? Flow presents the option to integrate and synchronize between business systems without writing an integration in SSIS.

          "Basically, Flow helps to talk between two systems easily and the applications are infinite"

Disadvantage (Over usage of MS Flow):

  1. However, on the other hand, the more MS Flows you have hitting your Dynamics system, the bigger impact that may have on system performance. A flow operation is similar to the performance footprint of a user executing the operation. Think if you have tons of Flow jobs hitting Dynamics simultaneously, there is potential risk of CRM performance impact.
  2. Flows are owned by a user, while workflows can be set to any owner.
  3. Flows require syntax knowledge in order to accomplish the same action in a comparatively simple approach using dropdown selections.

I am sure Microsoft will improve Flow and many more future will be added to this platform. I will be keep updating this blog based on MS changes.

Kindly give you comments and feedback so that I can improve this blog.

Comments

*This post is locked for comments

  • KDundon Profile Picture KDundon
    Posted at
    Hi Varun, Interesting article, thanks. I'm very interested in this question. Would you have any further information around the functionality of both Dynamics workflow and Flow? Do they have the same features for example? What about SLA tracking and management? Does Flow allow integration such that the workflow dialogs work in Dynamics? For example in Dynamics when workflow is used it shows a progress bar indicating the steps, how does this work when using Flow? Thanks /Kieran
  • Community Member Profile Picture Community Member Microsoft Employee
    Posted at
    In this week's Dynamics 365 CRM blog roundup: Microsoft Flow vs. Dynamics CRM workflow Enhanced
  • Linn Zaw Win Profile Picture Linn Zaw Win 3,403
    Posted at
    Regarding Disadvantage no.2, I guess it's the best practice to use a Service Principal with the CDS Connector for system automation flows. blog.davidyack.com/.../