Legacy Workflow Customization vs Subflow Workflow Customization

What is the difference between Legacy Workflow Customization and Subflow Workflow Customization?

When should I use which type? Can I freely create new instances of either type as I please?

Official guidance much appreciated. Thanks!

For new customizations you only need to utilize subflows.

Legacy Customizations are no longer supported for creation. The system continues to honor legacy customizations that already exist. I do not know the exact date when this became enforced, but as of this post new legacy customizations can not be created in any release. Legacy customizations are expected to be sunset, but a timeframe for that is not set.

So unless you are maintaining legacy customizations you can safely focus on subflows as your solution for customizing Workflow.

Is there guideline in migrating the existing legacy workflow customization to the modern sub-flow workflow customization? Is there any limitation in converting a legacy workflow customization to sub-flow workflow customization?

The general approach is to use a combination of Subflows and Workflow Extensions as substitutes for what has been done in the legacy customization, or, rework the underlying business flow so that the legacy customization is no longer required. However some legacy customizations modify the base workflow in a way that is very divergent and moving off of the legacy customization isn’t possible while the existing functionality is maintained.

The very first step is understanding what exactly the legacy customization does that is different to the base workflow and documenting that. Do you have such available?

I’m happy to work with you further on these as required.

Hi Ian, thanks for helping me out in reviewing the legacy workflow customization. I realize that the workflow extension and subflow workflow customization won’t be able to support those customized workflows with extended workflow statuses, especially when the “To State” of the transition is one of those extended workflow statuses; i.e. the “To State” must be one of those values from the base workflow status. Is there plan to address this limitation?

Also, we have a legacy workflow customization where couple base transitions triggered by logic block transition are removed in the customization. Is there a way to disabe certain base workflow transitions?

No, there isn’t a way to do this using workflow extensions or subflows.

OK, thanks for the confirmation.