- Coming up, I'm joined by Stephen Siciliano
to review updates to Power Automate
from code-free automation
to your every day processes in Microsoft Teams.
The new Power Automate Desktop's robotic
process automation capabilities
that expand UI automation across a broader spectrum
of legacy apps, and your favorite web browsers.
So, Stephen, welcome to Microsoft Mechanics.
- Thanks for having me.
- And thanks so much for joining us from home today.
- So a lot of time when we speak
about things like automation
people are thinking about IT automation,
maybe task sequences and scripting.
But really, as more and more
of what we do everyday is digital,
automation can really apply to almost any process or task.
- Yeah, it absolutely can.
Whether it's an approval process across the stakeholders
or data entry between different apps,
there's really nothing stopping you
from automating many of the things that you do
every single day.
With Power Automate, which is part
of the Microsoft Power Platform,
you can do digital process automation
for any task or business process,
use UI automation via RPA
to integrate process steps like data entry
into your legacy systems,
and apply intelligence using AI Builder
or even create chatbot experiences
with Power Virtual Agents.
There are over 400 connectors available
for your integration with apps and services
without you having to write a single line of code.
- And we also have tons of templates
to really get you started with automation.
In fact, all this makes automation a lot more accessible
but it isn't only just for basic processes.
This might help with more sophisticated business processes
like loan processing
or shipment verification, or logistics.
- Yeah, it absolutely can.
We have lots of customers today
using Power Automate for these types of scenarios.
Like with the rest of the Power Platform,
we are democratizing these powerful capabilities
to appeal to everyone,
from the citizen developer to the pro developer.
For more sophisticated scenarios
we like to say, "There's power when you need it".
The Visual Designer helps you to get your processes
up and running quickly.
And you can incorporate conditional branches,
easily connect to your enterprise apps and services.
It's fully integrated with Azure
so you can extend Power Automate
with Azure functions that trigger specific actions
or bring in your scripts and Logic Apps.
And with our latest round of updates
Power Automate incorporates many of the capabilities
from our WinAutomation Softomotive acquisition
just a few months ago.
We've made it easier to record process steps
and we've expanded UI automation
for your legacy web apps with browser support
for Internet Explorer, Firefox, Chrome, and Edge.
Also, with the new Power Automate Desktop client,
beyond Win32 apps you can now do
RPA across a broader variety of legacy apps,
even command line apps like old terminal AS400 apps
or other apps like SAP,
Java-based apps, and even Remote Citrix delivered apps.
- Right, and something to point out here is
for RPA, the process recorder,
it's now natively part of Power Automate
which is going to simplify things a lot.
So, this is Mechanics though,
so why don't we make this real for everyone watching
with a couple of demonstrations?
- Yeah, right on.
So let's start with automation using a legacy app,
Microsoft Forms, and Teams.
I have a Win32 app that was developed a few years back
that can perform common HR tasks,
including an employee satisfaction poll
to track year-over-year metrics.
It has about a dozen questions
that we've been tracking over the years.
Employees complete a survey
on a standard web front-end,
and in some cases manually enter the results.
Importantly, this app doesn't have an API.
So you can't write to it programmatically.
Also, it's hard to modernize or add temporary questions
based on new events.
Now using Microsoft Forms, along with Power Automate
I'm going to show how we can transform
this legacy experience
into a modern survey experience that anyone can build,
while still writing data to the legacy app
using Robotic Process Automation.
The process has three main steps.
First, we create the form with the fields that we need.
Then, we build the automation
for data entry in the legacy app
along with variables that need to be filled in.
And finally, we match the columns
from the data behind the form
to the variables in our automation.
Let's start with the form.
Just to show you how easy the form is to create
I'll build it in Office 365.
With the form's web app
you just need to create a new form
and enter the questions.
So I'll type it in, and add answer options.
I'll add "strongly agree,"
and I can follow the suggestions for the rest,
with "agree," "neutral," "disagree,"
and "strongly disagree."
And you'd continue this process
for any additional questions.
But to speed things up, I'll stop here.
I can also make it look great with a theme.
And now we've set up the form,
now we need to set up the automation,
so that way when someone responds to the survey
it actually writes the data into our legacy HR app.
- Now you have a data source, effectively,
that's behind the form
and you're going to have a way to trigger automation
based on any new entries into the form.
- Right, so let me show you how that works
using the new Power Automate Desktop.
The app is signed into my Power Automate service account.
Now I'll go through the steps to build a flow.
I'll give it a name, "Contoso Poll."
That will launch the designer.
Next, I'll open the desktop recorder.
My Contoso Win32 HR app is already running.
I need to capture the steps to enter data into it.
I'll start recording.
And I'll fill in the fields I need entered in the app:
the employee name, email, and the answers
to the poll questions, using the dropdowns.
I'll hit save in the app
and finish in the recorder.
Now, back in the designer
I can see the steps I just recorded.
If I want to, I can run it now
and it will input the same entries you just saw
for Bob Jones.
But here is where we can swap those entries for variables.
So that if I get a dozen or hundreds of surveys back
it'll map to each of those user entries.
Now I'll add the variables for each of my fields,
so that way we can map the survey data to the app.
So I'll add a new input variable.
Here, I can determine the variable type, name,
such as email address, default value,
data type, and description.
Now I'll repeat that process for the question
with the dropdown field.
Next, I'll map the steps to the variables
I just created.
I'll start with the dropdown list
and choose my option as "Q1" and save it.
Then, I'll do the same for the email field
and choose the email variable
as the text to fill in.
So these variables are now ready to be matched up
with the fields in the form I created earlier.
I'll save what I've done so far.
- How do I then bring the data that's in the forms table
back into this process?
- I'll do a couple of things now.
I'll set up a flow that looks for new entries
and then notifies the team
and automates what was entered into the form
into our legacy app.
I'll jump into Microsoft Teams
to build another flow.
First, you'll navigate to the flow app inside of Teams
and create a flow from template.
I'll select the Forms to Teams template on the top left.
I'll choose the form that I created earlier, Contoso Poll,
and I'll choose a team, demo, and my channel: General.
Now I can save that flow and edit it.
I need to create a new action between these two steps.
So I need to connect this flow
with the one that we just built in the desktop app.
I'll search for "desktop," select it,
choose my Contoso Poll flow,
and from here I can choose between attended or unattended.
Attended would mean it runs in an active user session.
Whereas, unattended means it runs
in a different user session
on a server in the background.
This is a good option if I had thousands
of surveys coming in.
But for now, I'll just select attended mode.
Now we need to bring in
the response details from our form.
So I'll create a new action to get those response details.
I'll choose the form "Contoso Poll."
Now I'll select the Response ID
which acts like a key for the flow.
Back in the flow step, I need to add dynamic content
that is carried forward from my form.
These are the data fields that correspond
with the variables I created earlier
and are really the magic step
that makes the data entry possible.
I'll map, "email" to "responders email,"
and "Q1" to the first question.
Now I'll save this flow.
- Okay, so that's it, can we test it out?
- Yeah, let's do it.
So I'll go into the form
and fill out the poll just as any employee would
and submit it.
Notice, I'm logged in as Charles
and I've entered "strongly agree" to the first question.
Since I'm on the machine that is running
that Win32 app and flow,
I'll immediately notice a Windows 10 notification
that the flow is running.
There's our app.
Remember that we only defined email and the first question,
so I'll see that email inputted as charles@contoso.com,
the logged-in user account when I filled out the form.
And Q1 is entered as "strongly agree."
Once the flow completes, it fires another notification
letting me know it was successful.
And back in Teams, since the flow's default task
was to notify my team and channel
we'll see the notification is here also.
And we're done.
So now that it's tested, we can share it out with everyone,
either within Teams or via email.
- Right, and this experience that we're showing here
is a lot richer compared to the ones
that we've shown in the past.
- Right, and even beyond what I demonstrated
on the left side of this screen with the designer,
there are over 300 other actions
to automate on your desktop.
It works with the Windows file system
and really, any type of action
you can automate on the desktop
you can automate with Power Automate Desktop.
- We just saw a process automation
that was really integrating our legacy Win32 app.
But, what's that experience then look like
say, if we want to automate things
that are happening in a web app in the browser?
- So here I'm going to show you the process
that T-Mobile took, using their ORBIT app.
This is an app that's used to manage
their marketing campaigns and promotions.
They've recently merged with Sprint,
so many of their activities need to be
entered into Sprint's web-based system, called G2M.
I'll start by creating a new flow, called "Orbit to GTM."
You can see my option on the left for web automation.
I'll expand that.
Now I'll launch the web recorder.
In this case, the app works with most modern browsers.
You can see options here to launch the new Edge,
Google Chrome, Firefox,
and for apps that need those legacy capabilities
in Internet Explorer, that's an option too.
In my case, I'll keep Edge selected, and hit next.
That launches the browser and the web recorder.
I'll resize this Edge window down
so you can see what's happening in both windows.
Now I'll navigate to the site
where I need to automate the process.
Then, I'll start the recording.
Just like in our Win32 example
it knows what's already open, and has recorded that.
Now I'll create a new initiative.
And the process is more or less the same
as our Win32 app example
when we defined all the variables.
In advance, I've created a flow map
with all of our variables like I showed before,
that duplicates initiative entries
between the two systems.
- Okay, so now you've got automation in place
that, when a new entry is created in T-Mobile's ORBIT app
it's going to trigger then effectively
a duplicate entry in Sprint's web-based system.
- That's right, let's test it out.
I'll go into T-Mobile's ORBIT app.
It's a Power App that Charles covered
on a previous Mechanics show,
and this is where the primary
and initial entries will be made
that get replicated into the Sprint G2M web app.
I've started creating a new initiative
with all the entries I need.
Notice Charles Lamanna is entered as the Sponsoring VP.
Debraj is the Business Owner.
And line of business as Digital.
Then I'll hit submit.
We'll see immediately, because the new entry was the trigger
it initiates the flow,
and starts to enter everything into the Sprint system
in the Edge browser.
And once it's finished, if I scroll down
we'll see our new device launch
in the Sprint system.
- That's great, so it worked.
So is there any way then to track what's been automated?
Maybe in case something doesn't work as expected
or maybe there's a duplicate entry that's been made
into the system.
- Yeah, everything in the system is completely audited.
So if we go back into Power Automate
we can see a history of all of the runs.
This top one is what just ran
and I can click into that.
I can see the timing of each step in our flow,
and from here if something did go wrong
we've built a step-by-step log
of all of the run details.
In fact, I can click into a failed run
and I can see the error details there
on the screen that failed.
- Tons of options here then for automating
all those repetitive tasks.
Whether that's everyday things
that you start in your Microsoft 365 apps,
all the way to automating your Win32 apps
and now also even your web apps across browsers.
But, if I wanted to get started with all of this
where should I go?
- It's simple, if you want to learn more
and start building out new flows
you can get started at powerautomate.com.
Everything you need is right there.
- Great stuff, thanks again for joining us today Stephen.
That's all the time we have for today's show.
Be sure to subscribe to Microsoft Mechanics
if you haven't already.
Thanks for watching, we'll see you next time.
(electronic music)