Microsoft announced 4th November 19 that they had enhanced the capability of Microsoft Flow by adding Robotic Process Automation (RPA) and Artificial Intelligence (AI) capability to it. They have also renamed MS Flow to ‘Power Automate’. A simple example of the new UI Flow element in use can be seen on YouTube here: https://www.youtube.com/watch?v=tfJggC1LzUw – but I am not sure of the value that ‘demo’ really imparts, so I will take a more D365 specific look.
So what does this Robotic Process Automation (RPA) functionality look like now and how does it work? I will investigate here and post my findings as we go 🙂 – login to Power Automate here to follow along: http://powerautomate.microsoft.com
You should see the UI Flows menu option (if you have signed up for the preview – but soon this is going to be generally available). I believe this is powered using the popular SeleniumIDE controls from the browser, the tool is from the same family of selenium based tools that Microsoft used with its Regression Suite Automation Tool for D365 Finance, Retail and Supply chain.
If you choose to create a new UI Flow – then you are prompted to choose what kind of flow you want to create – either a creating a flow to execute desktop app control, or a flow based on a browser session. As we are usually working with D365 I will create a Web App based flow.
Note: This does not work with the current version of Edge, but will work with the upcoming public release that is now based on ‘Chromium’ – my advice is to just use Google Chrome at this point!
Then you have to specify the URL of the web app you wish to record against, then press ‘Launch Recorder’
This was the first point that I found something really interesting, I was prompted with an error message, that provided the opportunity to download the required ‘UI Flows browser extension’ – so I did.
After downloading the .exe file – I then ran it
Then I enabled it in Chrome…. but it made me restart my browser session – so that was a little annoying….
You might need to check that the extension actually got enabled, because although I clicked ‘enable extension” it hadn’t so I did it manually
I was then able to press the ‘Launch Recorder’ – but again a stumbling block
I was able to install the SeleniumIDE extension into chrome and then the real magic began to unfold, when I clicked on Launch Recorder the following window opened in a new window of the browser. I was able to move the window to a different monitor so it made recording clearer.
As soon as I pressed Record – a new browser window was opened and the recording began, from my tests the recording only recorded the actions taken place whilst the mouse focus was in that specific browser window, so I was able to take screenshots, reply to emails and add notes etc, whilst the recording was in progress without upsetting it.
When I had completed a basic customer record in D365 I went back to the Selenium session and stopped the recording
As you can see below the SeleniumIDE has recorded all the steps I took and identified where I had entered values. This is useful so that when I try to ‘re-run’ this recording I can insert new values before hand so I don’t get duplicate record errors.
For safety I pressed ‘save’ within the Selenium pane and was pleased to see that my new flow was now saved within the Power Automate > My Flows area as below
I was able to then edit the recording afterwards and change the values as I mentioned above by editing the ‘value’ field as per the picture below, the initial recording was done using RG-D365A and this time I wanted to re-run the recording and create a D365 Customer called RG-D365B.
So along the top of the Selenium window I pressed the ‘Run Current Test’ menu option and sat back…….
But here I encountered an error, but what I really liked was that as I could see the error in the browser – when I also looked at the Selenium pane I could see exactly which step in the process recording the error had occurred.
Below you can see in the ‘Log’ pane the error in more detail
This was great – I could see that I needed to fix some data in my process recording – so I then wondered what controls I had available in the selenium to fix/amend other things. I right clicked on the row that had the error and the following options are available
This looks like its going to be a really versatile tool and with some practise and some good use-cases I think this will become a core component of many solutions in the future.
Microsoft are yet again reducing the 3rd party application footprint and extending the awesome Power Platform!