Nintex Replacement Project
Purpose of this project was to replace all Nintex workflows across the organization with Power Automate Flows and Power Applications.
Technology Utilized
Nintex Cloud
Our Staff has a solid understanding of Nintex as we utilized this with some of our past projects for workflow development.
Power Applications
Used Model Driven and Canvas Applications for direct replacements of Nintex Forms.
M365
SharePoint / OneDrive / Teams was utilized for the source of the data and storage of documents.
Power Flows
Direct replacements of Nintex workflows were redone in Power Automate cloud flows.
Azure SQL
We utilized Azure SQL with some workflows that had BI Reporting Needs.
ShareGate
Utilized ShareGate to migrate list and site content to sites for development
Challenge
The main challenge with any Nintex replacement project to Power Automate is the replacement of State Machine workflow. This is where you can trigger a flow from a modify or creation of a list or library item and it will enter a state driven workflow while subsequently updating the same list item. This functionality is very complicated to replicate. While we have done multiple Nintex replacements this is always the biggest hurdle to overcome as well as the pesky 30-day expiration of approvals in Power Automate.
Non State Machine Strategy
For all the Nintex workflows that were non state machine it was a simple one to one replacement except for the ones that required approvals. For this we did the workflow functionality match and added a field in the list or table that was the last time an approval was sent as a date field. We wrote an accompanying flow for each list or table item that had an approval pending. It woke up daily (AM) and if the 30 day limit had happened since the last sent approval date and state was pending approval it would trigger that state again that sent the approval. It also required that the approval was off on it's own branch of the flow so it would not repeat other functions.
For other added benefits with Power Automate we found that the variable and functions for workflow data management were more robust with Power Automate along with the error handling was much easier to implement.
State Machine Strategy
For all the Nintex workflows that were state machine driven it was a simple switch statement with a directed status column. The one big item in the switch statement was the default. It had to be empty as this one would catch all the edits of the item that were not state driven. The limit with this strategy is that if the state matched a condition in the switch statement it would run again regardless of if it was currently in action. For this issue we created a central SharePoint site that had a list with all the active flows currently running as a queue. The triggered flow would see if a state was currently active and terminate the flow before it triggered functionality that would be redundant. While we can do the same thing with Dataverse or a SQL table, it would of required each flow to be premium and that was not compliant with the client.
Forms Strategy
Nintex forms was easily replaced with Power Apps. Whether they wanted to utilize a simple model driven form or a complicated canvas application. Power Apps provided more than enough features to make this replacement at least a one-to-one match in features and functionality.
Result
We were able to fully cancel the license costs / needs for Nintex in their environments. The project cost alone allowed the business to still maintain their solution along with saving the organizations over 100K each in licensing cost per year.