Robotic Process Automation with Power Automate
How we built it: Xerox
Use Microsoft’s Power Automate with robotic process automation, or RPA, to extensively automate everyday manual business processes. Xerox and their internal community of citizen developers are using this homegrown expertise to launch a rich catalog of unattended bots as a service to their customers.
Shivani Agarwal, Director of Process Automation at Xerox, joins Jeremy Chapman to share how Xerox is using RPA with Microsoft’s Power Automate. See how everyday business users are driving process automation, the sheer breadth of what they’re using automation for, and how it’s enabled a new revenue stream for the company.
02:05 — Automation example by citizen developer
02:57 — See how it runs
04:34 — Transition from Softomotive & using Power Platform
08:11 — Xerox’s automation center of excellence
09:43 — Walk through example of RPA bot services
12:23 — Wrap up
Learn more about what Xerox is doing and view their RPA services at https://www.Xerox.com/RPA
For more about RPA, visit https://www.PowerAutomate.com
Unfamiliar with Microsoft Mechanics?
We are Microsoft’s official video series for IT. You can watch and share valuable content and demos of current and upcoming tech from the people who build it at Microsoft.
- Subscribe to our YouTube: https://www.youtube.com/c/MicrosoftMechanicsSeries?sub_confirmation=1
- Join us on the Microsoft Tech Community: https://techcommunity.microsoft.com/t5/microsoft-mechanics-blog/bg-p/MicrosoftMechanicsBlog
- Watch or listen via podcast here: https://microsoftmechanics.libsyn.com/website
Keep getting this insider knowledge, join us on social:
- Follow us on Twitter: https://twitter.com/MSFTMechanics
- Follow us on LinkedIn: https://www.linkedin.com/company/microsoft-mechanics/
- Up next we’re joined by Xerox, best known for their workplace technology globally, to see how their internal community of citizen developers are using Microsoft’s Power Automate with robotic process automation, or RPA, to extensively automate everyday manual business processes and how this homegrown expertise has now led them to launch a rich catalog of unattended bots as a service to their customers. So I’m joined today by Shivani Agarwal from Xerox. Thanks for joining us today.
- Thanks for having me.
- And I appreciate you joining us all the way from Bangalore today, but before we get started, why don’t we step back to give everyone a bit more context? Because, I think most people are probably familiar with Xerox for office solutions, but maybe not for the software and services and really automation side of things. Now, Shivani, this is really an interesting story on a few levels. So first, in how everyday business users are driving process automation at Xerox, and second, the sheer breadth of what you’re using automation for, and also thirdly, how it’s enabled a new revenue stream for the company.
- When we first started down this path, it was pretty experimental, but now we are at a point where Xerox can’t function without unattended bots. The original vision has been to have a bot on every desktop. We started with Softomotive, which was the genesis for Power Automate RPA. And today we have more than 450 bots deployed. These manage increasingly complex transactions across almost every business function and completing over 4 million transactions per quarter. We also launched our commercial Xerox RPA as a service last year in 2020, that harnesses the expertise of our growing global community of close to 200 citizen and professional developers.
- And really in many ways, you know, your citizen developers are best placed to do this work since they’re the domain business experts who intricately understand what it takes to really get specific activities done.
- Right. One of the critical success factors for us has been having the people with the process expertise actually automate the process. We have found that nearly any repeatable process used by our staff to get their job done is ripe for automation. For example, here’s a process that one of our citizen developers created to generate unattended and daily up-to-date customer service operations billing reports. The accounting team uses these reports to quickly identify and monitor monthly billing trends and potential inconsistencies in invoicing, which they can view through their management console. Prior to this automation, someone would have to manually generate the report once a week. And this is one of many such examples of manual repeatable processes that business users are automating. If you look at what’s behind this, here’s the cloud flow. It runs through a number of steps. The first step defines the recurrence, it occurs every day. Then we have two steps where we grab the user’s credential to log into SAP, to access and run the required report. And from there we run the desktop flow using those credentials. Let me go ahead and show you this flow on the VM, where it’s going to run. As we scroll through, you will see this final step actually consists of over 300 actions. I’ll explain what it’s doing while it runs and you can follow along. As we run the flow in a VM, the first few steps are capturing some dates in particular formats. Its first task is to figure out the period from which the report needs to run, because we are only pulling the report updates from when it was run last. So the bot opens the current month-to-date report. It does a max formula to figure out the last time the report was run. And will take that as a parameter to run in SAP. It then logs in to SAP with the user credentials that are stored on an Azure Key Vault. Everything is kept secured with 256 bit encryption in our case. Next, we run the transaction code where the report lives. So it’s just entering that now with a specified variant. It makes its way down to the current date. The report then runs and is exported to Excel. It removes blank fields and scrubs all the fields we need and basically manipulates the data to get it into a format that we need. It’s like doing an ETL inside Excel. It then reopens the file that it started from and copies the data across from the exported spreadsheet. Then it saves the file, a close rule kicks in, and an email is sent to the report requester to confirm that the report is ready. We used to run a report like this manually and on a weekly cadence. And now using this automation, we can run it whenever we like. And all this has been vital during Covid.
- And really this automation I understand was initially automated using Softomotive before it was shifted then to Power Automate. So, first, how was that transition, and also are you using other parts of the Power Platform?
- Yeah. Moving from Softomotive to Power Automate was pretty straightforward because there are a lot of similarities. We also use the free process migrator for Softomotive products, which is currently in preview. And we are using several components of Power Platform in unison with Power Automate. A great example of this is our workforce management portal. This solved for a major workforce visibility challenge that we had. That’s because technician talent is typically assigned by contract to customers and we wanted to have visibility into what talent exists and where, so we could reallocate them to jobs based on the required skillsets, of course, within realistic geographical radius so that these technicians could be fully utilized. This solution is based on a Power App that captures workforce data, including job function of their staff, special worker skills and other data. This is one source of data. Other sources of data flow from our HR system that has information on worker department affinity and work locations, and time sheet summaries, which track how busy a given technician is. And this is delivered by our Office 365 to a shared mailbox containing employee utilization data and contract data so we know the primary account assigned to them. All this data is stored in Azure SQL. Then Power Automate is used to process and translate data from these sources. For example, you can see two flows here. One pulls utilization and the other, FieldGlass, pulls contract names from a SharePoint list. The FieldGlass flow also pulls files off an email that is generated on a weekly basis with an attachment that contains utilization data for each worker. This is an event-based flow. If I click into edit, I can see what happens. When an email arrives in a shared mailbox, an attachment is copied to our file system for processing. Here’s the flow that pulls the contract name data from a SharePoint list and inserts that into an Azure SQL database so that we can associate the workers with the primary account that they are working on. If I click into edit, I can see the flow itself. Under the recurrence we see that this runs every Thursday at four o’clock, and in get items you see where the data is pulled from in SharePoint, and finally, my stored procedure that writes back to Azure SQL. All this is integrated data and visualized in Power BI, including the global mapping. So when I go to workforce analytics, that takes me to Power BI. We’ve got our filters and we’ve got our total workforce counts represented. If I want to look at people with specific skillsets that are around this area, I can do a geo search. And if I zoom into a map, I get a great picture of people in the UK, in this case. Then using the selection tools in the map, we can pull them up. I can click in and see their locations and find more details. If I go back to the home screen, we have a radial mile search where we can find people within a specific radius. We try to only dispatch technicians within 50 miles from where they are now. Otherwise it would be too far for them. Right now we can see, we have the county of Yorkshire selected with West Yorkshire and we can see there are 153 people within a 50 mile radius of this UK post code. During the pandemic, this solution has been key to minimizing unnecessary travel and keeping our staff fully utilized. Before we did this, the process was completely manual and managed in a fragmented, siloed way.
- And you mentioned also that you have an automation center of excellence. So how were you then able to get business users in particular on board with this?
- You need a champion for every team. We focus on giving everyone access to technology and empowering them to be able to use it through our automation SharePoint site. We have really learned the importance of giving recognition and making support a constant focus. And so, on this site, we also share employee use cases and success stories. We run competitions and highlight competition winners on our internal employee news page to raise awareness among the entire employee population. People can join regular boot camps where we teach people the basics, and all these efforts combined have helped us to build an internal community and center of excellence globally.
- Right, and as a direct result, in 2020, you were able to extend the expertise that you’ve built internally also to your customers with a catalog of unattended RPA bot services that are built on Microsoft’s Power Automate.
- Right. We have been able to use our substantial experience to come up with a catalog of around 30 bots built on Power Automate that support a variety of verticals and all functional areas of a business. The Xerox Robotic Process Automation Service uses a combination of hyper automation techniques across cloud flows with business rules, RPA and AI. In addition to the catalog, Xerox also offers custom-built bot services using Power Automate and Power Platform.
- Sounds great, can you walk us through an example?
- Sure. So a great example is the work we did for the legal firm Lexitas. Their staff of lawyers and paralegals were spending more than 250 hours a month processing more than fifteen hundred exhibits monthly as they worked on cases. This involved manually grabbing files from servers, manually stamping them, converting, renaming, and storing files, before manually checking them for errors and centrally sharing them. Today our unattended RPA bots handle the entire process using business rules. Now let me show you how our service automates the entire file processing. I’ll open the document we just saw to show what it looks like before processing. This document has normal text along with embedded text elements and images. Note the name of the file currently is Hotel.pdf. The second file is a statement of work and the header is actually an image embedded in the file. Both files are saved to a location for processing. I’m going to drag this window to the left so we can see what happens to the files as our automation runs. Now I’ll kick it off, and as those documents process I’ll show and explain the steps in our flow in detail. First, we rename the files to get them into a normalized naming convention. For example, with a case and exhibit name. This process calls a VB script to perform naming. Then depending on the file type, we convert the files to a format that can be read by subsequent steps like optical character recognition, or OCR. The resulting file extensions for each then determine the subsequent steps. So a document will go through different processing compared to a photo. Once the renaming and conversion is complete, the process then labels the file with visible markings or metadata labels to aid the classification and search. Then for Adobe file types, we prepare the files with any additional information needed and to help improve the accuracy of the OCR. Here we are using PowerShell scripts that will launch Adobe apps and perform a standard set of actions, what we call pre-flight. Then the OCR process can convert the scanned printed documents into digital documents. After that we do a little more optimization on the resulting files to further improve the precision for file processing. And once everything is complete, we upload the files to a location in cloud storage that is marked as being processed. Before I open the same file, the first thing you’ll notice is the new file name. And when I open it, as I showed you before, you’ll see the document is fully digital and we’ve applied visual markings as well as file labels in the metadata. And the same is true for the statement of work we also processed.
- Nice, and I can really see how this would be a huge time saver for legal teams and really set them up for improved search and discovery after the case. So thanks, Shivani, for joining us on Mechanics today. And if you want to learn more about what Xerox is doing in this space or to view their RPA services, be sure to check out xerox.com/RPA. And for more about RPA, visit powerautomate.com, and be sure to subscribe to Mechanics if you haven’t already. And thanks so much for watching.