We now know that the rumours are true: Microsoft has announced the deprecation of SharePoint 2013 workflows. It’s been a long-time coming, and it’s why so many organisations have already begun to replace SharePoint workflows with Power Automate flows.
That’s where we come in. As Microsoft 365 experts, we knew there was a way to make this transition easier. So to help you through the process, we’ve created this comprehensive guide on how to replace SharePoint workflows with Power Automate flows.
But before we show you the how, let’s dive into the what – what is Power Automate, and how will it replace your existing SharePoint workflows?
What is Power Automate?
There’s a reason why there’s been such an organic transition to flows in Power Automate. It’s an intuitive platform that comes with a myriad of benefits.
- It includes more logic options:
- Apply to Each
- Switch
- Parallel branches
- Conditions
- Actions can be configured to run depending on the success of a preceding action. If you have a workflow that has multiple steps, and one fails, you can set alternate actions. For example, if a document fails to upload then a tangent action is triggered. Rather than waiting for client to tell you something has failed, Power Automate is transparent about what’s gone wrong.
- Rather than creating tasks, Power Automate has an approvals connector. All of the incomplete approvals assigned to you are stored in one central spot.
- Using the approvals connector, outcome options can be customised for each approval step (and just having one outcome is an option).
- If an action does fail, the number of retries can be set.
- Power Automate has a graphical interface with actions that can be renamed, or comments added to them.
- Any issues or problems in the Flow are highlighted with suggestions to fix automatically as the Flow is being built.
- Microsoft are releasing new features and actions to Power Automate all the time.
The limitations of Power Automate
As with any system, there are some limitations:
- Run duration is limited to 30 days. Workflows that haven’t been completed within that window will time-out.
- Run history is only stored for 30 days.
- No more than 500 actions per Flow.
- If a Flow only runs every 90 days (audits, performance reviews, etc.), Power Automate will switch it off then send an email to the Flow creator to inform them. The Flow can be turned back on.
- Apply to Each actions cannot process more than 5000 items at once (free license).
- Apply to Each actions cannot process more than 10,000 items at once (Plan 1, Plan 2, and Per User licenses).
- 600 calls per connection to SharePoint. Find more details here.
- Flows are permission trimmed – if someone else needs to edit them, the Flow needs to be shared with them.
- Rather than a workflow history, Flows have a run history which can be reviewed. However, this is deleted after 30 days.
- Unlike tasks, approvals are only visible to the person they are assigned to – chasing up bottlenecks can be trickier.
- If you want to manage approvals via tasks, the supporting actions and Flows will need to be included to create the task and monitor the list to send reminders.
- Flows are not reusable but they can be copied, or a copy can be sent to a colleague.
Comparing SharePoint flows and Power Automate flows
We’re used to all the actions being SharePoint-focused, with everything we create based on SharePoint lists, libraries, and sites. Power Automate, on the other hand, not only connects to SharePoint but also Outlook, Teams, and Twitter – among others.
What this means for your conversion to Power Automate is that some actions you want may not be listed with the SharePoint actions. For example, if your SharePoint designer workflow has the action ADD TIME TO DATE you would look under DateTime for the action GET FUTURE TIME. Luckily there are some common connector groups which will help in your migration from SharePoint classic workflow to modern Power Automate:
- Control: Logic actions such as switch, condition (if statement), or Apply to Each
- Approval: All actions relating to approvals (even enables approval from an email)
- Variable: All the actions relating to variables such as initialise a variable, append to string variable.
- DateTime: Date-related actions such as Add to Time or Subtract from Time
- Office 365 Outlook: Actions which relate to Outlook, such as ‘send an email’ or ‘get an attachment’.
- Mail: The connector only has one action – ‘send an email notification’, which is useful if you are not using Outlook 365.
It’s a good time to review your workflows and see if Power Automate might offer you a new way to achieve your goals. The transition from SharePoint 2010 workflows to Power Automate can be fairly seamless. There’s no need to be scared of replacing SharePoint workflows. As leading solutions experts, we’ve built a conversion table to help you find the equivalent SharePoint action in Power Automate.
Replacing SharePoint workflows
Here’s an action comparison between SharePoint Workflow and Power Automate:
SharePoint workflow action | Power Automate action |
Create list item | Create item |
Delete item | Delete item |
Set field in current item | Update item |
Update list item | Update item |
Wait for event in list item | Do Until (Control) |
Wait for Field change in current item | Do until (Control) |
Check in item | Check in file |
Check out item | Check out file |
Copy document | Copy file Copy folder |
Discard check out item | Discard check out |
Translate document | Translator |
Add a comment | Flow actions can have comments added to them |
Set workflow status | PA does not have a workflow status, but could still update a column with the Flow status |
Set workflow variable | PA has a collection of actions to do with variables: · Initialise a variable · Append to string · Append to array · Set variable · Increment variable · Decrement variable There is also a collection of build-in actions for data operations (e.g. create csv table, create HTML table, select, parse JSON etc.) |
Log to history list | PA does not keep a workflow history list. Instead, it can log out to a list on the site to help track the actions of the Flow.
You can also review Flow history and trace which actions the Flow ran and whether they were successful or not. This is deleted after 30 days |
Go to a stage | Stages are not present in PA, instead the same behaviour can be achieved with a Switch statement inside a Do Until action |
Pause for duration | Delay |
Pause until date | Delay until |
Add time to date | Get future time |
Set time portion of date/time field | Get future time |
Find interval between two dates | Set a variable with an expression |
Do calculation | There are a collection of expressions for calculations which can be used with the Set Variable action (add, subtract, divide – even a randomizer!) |
Trim string | There is a trim expression which can be used with the Set Variable action |
Replace substring in string | There is a replace expression which can be used with the Set Variable action |
Find Substring in String Extract Substring from End of String Extract Substring from Index of String Extract Substring from Start of String Extract Substring of String from index with Length | All string manipulations can be done with expressions in the set variable action |
Build dictionary Count items in a dictionary Get an item from a dictionary | PA has replaced dictionaries with arrays. These can be manipulated with the data operations actions Compose Create CSV table Create HTML Table Filter array Join Parse JSON Select There also expressions which can be used with these actions to provide the functionality (and more) of SharePoint Designer workflows |
Start a task Process Assign a task
| Customisable approvals can be created using the Approval connector
Alternatively, tasks can be created in a task list using the Create Item action |
Send an email | Office 365 outlook ‘Send an email’ action The outlook email allows the Flow creator to determine the mailbox the email is sent from |
Call HTTP Web service | Send an HTTP request to SharePoint can handle any HTTP web services call to the SharePoint environment (without messing around with authentication headers!)
For all other API calls, the HTTP actions are required which are part of the premium plan |
If Statements If/Else | Condition (under the Control connector) If/Else is not present, but the same functionality can be achieved with the control actions. |
Bonus actions for SharePoint in Power Automate
These are Power Automate actions which are not available in SharePoint Designer:
What it’s called | What it does |
Add attachment | Add an attachment to a list item |
Create new document set | Creates a document set (folder with properties) within a library |
Create folder | Creates a folder in a document library |
Create sharing link for a file or folder | Creates a link that can be used to share a file or folder |
Set content approval status | Sets the status of a document in a library as it moves through the approval process |
Get attachments | Get a list of the content of all attachments for a list item |
Get changes for an item or file (properties only) | If versioning is turned on, this will return information about columns that have changed within a given timeframe |
Grand access to an item or folder | Grant access to an item or a folder in SharePoint to specific people |
Get files (properties only) | Creates an array of the properties for all or a selection of files in a SharePoint library |
Get Items | Creates an array of the items in a list |
List folder | Returns the files in a specified SharePoint folder |
Move file | Moves a file from one document library to another, even across sites or site collections |
Move folder | Moves a folder from one document library to another, even across sites or site collections |
Resolve person | Using a name or email, this searches for a matching user for use in a person column |
Send an HTTP request to SharePoint | Sends an API call to SharePoint – no messing around with building dictionaries! |
Set hub site join status to pending | Set the requested site’s hub join request status to pending |
Stop sharing an item or file | Deletes all sharing links associated with a list item or file |
Delete attachment | Deletes a specific attachment from a list item |
Extract folder | Extracts an archive (e.g. .zip file) to a SharePoint folder |
Get all lists and libraries | Creates an array of the lists and libraries for a site |
Get attachment content | Extracts the content of an attachment from a list item |
Get file content | Returns the content of a file from a SharePoint library |
Get file metadata | Gets information about the file (size, created date, modified date etc.) |
Get folder metadata | Gets information about the folder (size, created date, modified date etc.) |
Get list views | Returns an array of the views on a particular list |
Get lists | Creates an array of the lists for a site |
List root folder | Returns information on the files in the root SharePoint folder |
Update file properties using AI builder model results | Updates the values stored in library columns for a file analysed by a specified model |
Approve hub site join request | Sets the hubs approval request to approved |
Generate document using Microsoft Syntax (preview) | Create documents based on modern templates from Microsoft Syntex. This preview requires a Syntex license. |
Extract folder | Extracts an archive file into a SharePoint folder |
Cancel hub site join request | If a hub join request was submitted incorrectly, this cancels the request |
Join hub site | With an approval token, this action adds a site to a hub site |
Set hub site join status to pending | Updates a hub request status to ‘Pending’ |
Get started with replacing your SharePoint workflows
Now that we know for certain that 2013 workflows are being phased out, it’s time to start planning your transition.
It’s easy to see how Power Automate and other flow connections can meet your business needs. Have a look at your SharePoint Workflows and see if there are spots where Power Automate can slot in or identify points that can be streamlined as part of the conversion.
Want some expert advice on transitioning from SharePoint flows to Power Automate? Chat to Propelle today.