- Simon Waight
You may be sitting there are wondering why are we doing an Azure Logic App to Power Automate Flow migration? In most cases you'd likely be heading the other direction, but I can give you a few pointers why this move makes sense:
- Bring a low-code solution and data into an environment that more people have access to (Office 365)
- Allow policies around data management to easily applied using existing platform capabilities.
- Easier to share the implementation with others by exporting the Power Automate Flow or granting them ownership rights.
- Make use of features like Process Insights to help improve my low-code solution.
For this post I will be moving my meetups alerts Logic App.
Step 1: Move data from Azure Table Storage to SharePoint
While we are moving our business logic to an easier to manage location, we might as well move out data as well. It is possible with Power Automate Flow to connect to Azure Table Storage, but it may be that the people managing your Flow may not have access to the Azure environment which would be an issue. To avoid issues, let's move the data into a platform that Flow editors are likely to also have access to - SharePoint.
The process you use to migrate your data will depend on the volume of data you are moving. For my scenario the list of items is fairly small, so I will take a simple approach.
First up, let's export the Azure Storage Table Storage data to CSV using the free Azure Storage Explorer.
Once we have the CSV downloaded open it up in Excel and delete the columns that denote data type. Once done, save the file as a Excel Workbook (xlsx).
Next, we are going to go ahead and create a new SharePoint List for our data by using the Microsoft Lists service.
The easiest way to navigate to Lists is to expand the "waffle menu" in the top left in any online Office 365 application (Outlook, OneDrive, etc) and then select Lists.
Once the Lists main page has loaded go ahead and click
+ New list at the top. On the next screen go ahead and choose
From Excel as shown below.
Once the Excel file is uploaded you can select the columns you want to import (it should be all of them as we deleted the data type columns earlier).
Finally, you can give your List a name, select a colour and icon, and most importantly, the location you want to store it. I selected a SharePoint Teams site which means the list is actually created as a standard SharePoint List.
Now we have our data in SharePoint, let's go ahead and rebuild our Logic App.
Step 2: Rebuild the Logic App as a Power Automate Flow
The big tip I will give you here is to name your Power Automate Flow Actions (Steps) identically to those in your Logic App. The reason? You can copy complex dynamic expressions from your Logic App and paste them right into your Flow.
The big change between our original Logic App and Flow implementation is that our data is now stored in a SharePoint List, so instead of an Azure Table Storage connector (which is actually available to Flow) you use a SharePoint connector. Every other element remains the same.
The other item to be aware of is that the HTTP Connector (built-in for both Logic Apps and Flows) is considered a Premium connector in Power Automate. This means you must determine if you are licensed for Premium connectors or not. The easiest way to view if you're covered or not is to review the documentation on Power Automate Plans.
The main body of my new Power Automate Flow is shown below. You can see I am now using a SharePoint connector in place of the original Azure Table Storage one in the Logic App.
If I expand the meetup loop you can also see that the steps match the Logic App except I now use SharePoint as my target to track status.
Now that the Flow is created, I can use the dashboard to quickly view when the Flow ran, add other users as Owners of the Flow, export the Flow to share, and also determine any changes I can make to improve the Flow performance by using Process Insights!
Unsurprisingly this migration wasn't a tough one - Logic Apps and Power Automate Flow share a lot in common, and my data source was not a complex one. As I said at the start of this post, it's an unusual move to make - most migrations would go from Power Automate Flow to Azure Logic Apps, but it is a real positive to see it is possible to go back the other way!
Happy Days! 😎