- 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)
Great video highlighting how PAD can talk to O365, legacy apps, and the web