Migration Strategy: Process Builder & WFRs to Flows

Hi,

As you may all know, with the upcoming release Spring ’22, Salesforce is introducing ‘Migrate to Flow’ tool (in beta) to help you migrate your existing workflow rules to Flows. And Process Builder Migration tool is also on the roadmap for Summer ’22 (safe harbor).

Even with the given set of tools, migrating all the existing WFRs and Processes can be a real challenge. You’ve to be extra cautious and make sure that you don’t end up breaking the org automation.

So here are few things you can consider to make your migration process a little more smoother.

1. Impact analysis per object

The very first logic step would be to categorize all the existing automations based on the object and gauge the overall complexity of the automations.

2. Backup your metadata

Before you actually start migrating stuff, make sure to create a fresh Sandbox to have a backup of all your Production metadata.

3. Start small: Pick an object

Step 1 should give you a good overall idea of all the automation in your org. To begin with, I’d recommend picking the object that has the least amount of WFRs and Processes associated with it.

Advantage being, by the end of migration process, you’ll have a good understanding about things to do and more importantly things not to do. Also, if something fails (hopefully not), it’ll be easier to fix and you take those learnings with you.

4. Prioritize which WFRs and Processes to migrate first

It’s very common that businesses do not want their teams working on technical debt, especially on the something that’s already working fine. So, the amount of time you’ll be allocated for migration will be (most likely) quite limited. So the question of what should be migrate first and what can be migrated later becomes very relevant? Ideally, you’d want to migrate the ones that speeds up the records updates and takes less time and effort to migrate.

So to answer that question, let’s take a look at the technical aspects of WFR and Process Builder. So the first step of the process is to check what kind of updates(same object or cross object updates) are being made by those WFRs and Processes.

Let’s first discuss Process Builder.

Here I’ve discussed why Before save flows are faster than PB. So, to deliver more efficiency you should prioritize the ‘actions’ where you’re making updates to the same record.

NOTE: Flows are definitely faster than PB for cross updates as well however, the difference is not as huge as 10x.

Second, Workflow Rules.

Other than for creating tasks and sending emails, WFRs are mostly used to make updates to same record. So you may say that you should migrate all WFRs to before save flows as WFRs updates are very slow(for the same reason as PB), right?

Well, no. And that’s because you cannot move every update (to same record) in before save context. For example, any logic that is based on fields like Id or Auto-number type, the logic has to happen in after save context because these fields are null in before save context.

And when it comes to making updates to same record in after-save context, WFRs are known to be more efficient than both Flows and PB.

Conclusion: All in all, the point here is you should prioritize to migrate the logic which can be moved to before save flows to speed up your org.

5. Stop building on existing Processes or WFRs

Stop building on top of your existing WFRs and Processes ASAP! The more you create of it, the more you’ll have to migrate in the future.

6. Communicate

Goes without saying but often missed! So make sure to communicate internally as much as possible and create migration strategies based on your org’s development lifecycle.

7. If it’s not broken, don’t fix it(optional and easy)

Not everything has to be/should be rebuilt. And quite frankly, you’ll not have the time and resources to do so. So, IMHO, you should not stress on migrating everything to Flows. Your existing WFRs and PB will continue to exist and work as they were.

Hope you find this one useful! I’ll catch you in the next one. ✌
Thank you for being an awesome reader! Subscribe to this blog for receiving all the latest updates straight to your inbox. 🙂

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.