Remove Business Process Flows in Dynamics 365
Remove Business Process Flows in Dynamics 365 8.2 and Above With version 8.2 of Dynamics 365 Customer Engagement (CRM), Business Process Flows became an entity unto themselves. There’s are lots of articles out there on how to remove Business Process Flows from existing Lead or Opportunity records. The main reason people may want to remove the Business Process Flows is that they have a really simple process and don’t want to sacrifice the screen real estate at the top of the form for a Business Process Flow that they don’t use. And, from what I’ve found browsing around at the various blog articles on how to remove the Business Process Flows, they don’t address one of the most obvious scenarios. Let’s say you have been using CRM for a while, and you have several thousand Lead records, and they are all using the “out-of-the-box” Lead to Opportunity Business Process Flow. The instructions I’ve seen say to copy the Business Process Flow to make a “backup copy” in case you ever need it again. Then, the instructions say to delete the original Business Process Flow that is associated with the Lead records. Well, this doesn’t work if the Business Process Flow is part of a managed solution, which the out-of-the-box Business Process Flows are. Also, this is an “all or nothing approach.” Suppose I want to keep the Lead-to-Opportunity Business Process Flows active for Open Opportunities, but remove for Open Leads? Another solution is to write some JavaScript to hide the Business Process Flow. But this is also an all-or-nothing approach, unless you want to code the JavaScript with conditional logic, to hide certain Business Process Flows, but not others. Going back a minute, the idea of deleting the Business Process Flow entity itself means that you’re going to delete all the records for that entity. Again, great, if that’s what you want to do, and the entity is not part of a managed solution, which are stubborn to delete. Not great if you want to keep some of the Business Process Flow records and remove others. So, let’s say you tried deactivating the Business Process Flow in question; the one that’s associated with most, if not all, of your Leads. Now you still have the Business Process Flow taking up the real estate on your form, and you now also have a warning message that the business process flow for this record has been deactivated. So, I found the simplest way for me to remove these Business Process Flow records from some or all of your Lead records is to delete the individual Business Process Flow records, themselves. Note, I didn’t say delete the Business Process Flow entity (the “Lead to Opportunity Business Process Flow entity”) – but the Lead-to-Opportunity BPF records. How do you do this? Where can you find these records to delete the ones you want to delete? At first, I reverted to my data analyst mode, and fired-up my SSIS environment to do the work, then I realized we can just use Advanced Find in CRM directly. Just do an Advanced Find of the Business Process Flow of interest; in this case the “Lead to Opportunity Business Process Flow” entity. Then you can apply a filter, and say you want to delete just the “Lead to Opportunity Business Process Flow” records associated with a certain Open Lead, or some Open Leads, or All Leads, or both all Leads and all Opportunities — just apply the Advanced Filter accordingly. Then, you can add some columns to the results view of the Advanced Find from either the Lead or the Opportunity. When you’re done filtering, sorting, and analyzing to determine the records you want to delete – then just highlight the records and hit the delete button. Pretty simple, after all, I would have to say.