On-Demand Webinar

Maxmize ERP System Processes with RPA

Try ERP Automation
September 5, 2019


A lot of businesses depend on their ERP system to conduct business. Whether it’s SAP, Syspro, Microsoft Dynamics, M1, NetSuite, or another ERP, critical data is processed and stored every day. These systems are powerful for managing business processes, but the built-in capabilities aren’t enough.

So many businesses spend hours and manual effort prepping data, launching ERP procedures, and other necessary activities to keep the business running smoothly. Many companies are looking at robotic process automation (RPA) help maximize ERP automation and reap the full benefits of an ERP system. ERP automation is also a way of ensuring data accuracy and keeping employees working on value-adding tasks.

Watch this 30-minute webinar to see:

  • What benefits you can reap when you automate your ERP system
  • How to identify which ERP processes to automate
  • A specific demo to show SAP RPA, including:
    • Cross-system reactivity for SAP tasks
    • Automatic notifications, audit logs, built-in FTP, and forecasting with SAP
    • SAP automation at the interface level using Automate RPA

[Pat Cameron:] Thank you for joining me today for today's webinar on maximizing ERP system processes with RPA. A lot of businesses depend on their ERP system to conduct business, whether it's SAP, SYSPRO, Microsoft Dynamics, or many other SAP systems that are out there. Critical data is processed and stored every day. These systems are powerful for managing business processes but sometimes, the built-in capabilities just aren't enough. So many businesses spend hours and manual effort prepping data, launching ERP procedures, and other necessary activities to keep the business running smoothly. Companies are looking at robotic process automation, RPA, the latest buzz words out there, to help maximize ERP automation and reap the full benefits of an ERP system. ERP automation is also a way of ensuring data accuracy and keeping employees working on value-added tasks.

My name is Pat Cameron. I'm a director of automation technology at HelpSystems and I want to thank you for joining me today for today's webinar on automation and your ERP system.

Today, I hope to give you some ideas on where automation fits into your day-to-day operations. I saw a great ad on Twitter last week from one of our competitors. I can't remember the name of who it was but the ad talked about human jobs and robot jobs. And I really do love that terminology because that's exactly what we're talking about. Automation can process and run all of those robot jobs. So today, we're going to talk about some of your ERP jobs as robot jobs. This is our agenda for today and it's short and sweet.

So, why would you need to automate your ERP system? Isn't it already an automated system? And some of it is but not all of it. Which type of ERP processes could use some automation and how can you prioritize those tasks? Sometimes that's the most difficult part of an automation project. Where do I start? There's so many things that can be automated. And I've got a quick demo of several ERP processes that we've automated and that we've gotten from our customers and also specifically an SAP example. So I'll just give you some ideas to get started thinking about automation. Then at the end of today's session, I'll open it up to questions. If you have any questions, you can send them to me anytime today in the question box. And I'll answer them at the end of today's session.

So why automate ERP? If we go back to the human jobs and the robot jobs, a human's talents are much better used for jobs that require critical thinking and also creativity. Jobs that are customer-facing and strategic to your business need have to be done by humans. RPA can handle the robot jobs such as data entry, moving data from one place to another, also integration between applications. So sometimes, there's an API that can be used for that integration and sometimes not. Sometimes we need to use the user interface and that's where our bots or robots can come in and move that cursor and press that button just like a human was doing it. The beauty of robots is that they don't make any data entry errors and they never need a day off. They can work 24-7. So a lot of our customers look at bots as assistants for their employees. That allows the employee to offload the mind-numbing work to that bot. So it really makes the workday more challenging. Again, they need to think and interface with customers but it also makes that workday a lot more enjoyable.

So, how to identify some of the ERP processes that you can automate? These are some of the items that we use to kind of look at what you're doing now. Can it be automated? And where do we start? How do we prioritize? I took a gardening class from a master gardener years ago and one of the first things she taught us was to start small. Don't start with a two-acre plot, start with a little backyard plot. And I think that same thing works for automation as well. Start small. Start with a project that you can encapsulate and you've got documented. And then as you work with Automate or your automation tool, you'll learn about it. You'll be able to scale it, you'll be able to add on it and get more complicated. So, start small is always my first rule.

Time savings. How much time is your team going to save if they don't have to perform this task manually? Tasks that only takes 15 minutes a day, that adds up if you have to do it every day. Also, if you have to do that at the end of the month or the end of the week at a certain time, then people have to come in after-hours or make sure that they're available for a month-end. So, in addition to the time saving, what time of the day or the month does that task need to be done?

How critical is this process to the business? Is it going to save you time and also will you see some revenue growth from it because you're freeing up people for other tasks?

What is the potential for human error? Again, I think time-saving, people always talk about time-saving with automation. But I really believe that eliminating errors is maybe even a bigger benefit than the time-saving. If you can eliminate errors, then you don't have to rerun month-end. You don't have to restore files because somebody ran it with the wrong date. So, what impact does an error have on your business? Take a look at that. And what is the potential for human error in this process?

How much effort is it going to take? You know, sometimes you do have to balance. Will it take more effort to automate this than just perform that task? That's absolutely something to look at. Maybe it's not worth it to go through the process of automating. Maybe you have to make some programming changes to do that. Typically not with an RPA tool, because like I said, we can go through the UI but take a look at how much effort it's going to take then to just perform that task.

And then what is the urgency? How quickly does this task need to be set up for automation in order to get the benefit from it? Has somebody left the company that used to perform this task and now you need to automate it because they're not there anymore? Maybe you had somebody that wrote some code to do that automation but maybe they're gone and nobody knows what that script is doing. Or maybe it falls short, maybe you're unable to scale it. Maybe that doesn't have good error recovery built into it. Or maybe there are changes to your application software and that script is unable to handle those. So lots of reasons. Lots of programmers, you can write scripts to automate things but then you're married to it and you've got to be able to update it and it's got to be able to scale. So let us do that piece for you.

And then last but not least, what is the lifetime of this automation? Are you going to be able to reuse it? Lots of reusability within the Automate product for tasks and steps, little snippets that you can create and use them over and over again. Is it going to provide value to the business rather than just be used one time? But even if it's used one time, sometimes it's worth it.

We have a customer, I believe they're out in Western Canada somewhere. It was a big college system and they had thousands of documents that were written in WordPerfect. Remember that? Unfortunately, I do. And they wanted to convert those files from WordPerfect to Word. They started doing it manually and for each document, it was taking not a lot of time but five minutes, sometimes a little bit longer. And when you're working with thousands of documents, it was way worth it to them to get automates. We helped them set up an Automate task that did that conversion for them. It did it a lot quicker. It could do it 24-7 and save them a lot of time and also save them a lot of money.

So, what are some candidates for automation? I think we can all agree that data entry is probably one of the number one or two always on everybody's list. Data entry with Automate, whether that data entry is done through a web UI, on a website, or a client that's on a desktop, either one, Automate can do that data entry and again, it will do it without any errors, always put in the right date.

Report generation is another great use for automation. That reports can be generated at night, off-hours, so that they're available for everyone first thing in the morning when they come in. And you don't have to have somebody there submitting them and waiting for that report to get in their inbox or to be put up on the dashboard or put into a folder.

We do have some customers that use automation for monitoring database for inventory levels and sales levels. You can set thresholds and then be notified when that inventory hits a certain point. You can also have a task that as soon as that threshold is met will put together a PO and put the next order in. So the beauty of bots is that they can monitor those sales levels, inventory levels, database changes a lot more closely than a human can and a lot more often.

Data entry is probably one of the number one uses for automation. The other is data extraction so we can get data from a source as well as enter data. Beauty of Automate is it can read data from whatever that source is, whether it's on a PDF file, in an email, on a spreadsheet, at a website, in a database or wherever the source for your data is. Automate can get there, find the data, extract what's needed and send it over to the new target.

Processing incoming email. That is a big use of Automate so you can process invoices and as they come in, customer service requests. As soon as that email comes in, Automate can get started on maybe creating a ticket or actually processing the request, whatever it might be. Automate can process any attachments that come into an inbox or any folder in Exchange actually. And that processing can be based on who sent the email, where did it come from, who did it send it to, what is the subject line, what is the attachment name? Some text in the body of the email, any of those fields can be used for processing that email. And bots can monitor that a lot more often than humans. Again, they monitor it constantly. So the second that that file arrives, it can be processed. What that's going to do is speed up your business processes. They're going to run more efficiently and they're going to run a lot quicker.

And then last but not least, of course, application integration, moving that data from the source to the target. So whether data needs to go from your ERP system to your CRM, to your HR system, into your financials, or maybe pulling data from your financials into your ERP system. What happens at a lot of companies is that they buy best-of-breed for the application that they need. And now, how are we going to integrate the data between those applications? Sometimes there's an API which Automate can use but sometimes there's not. We even have customers that have some green-screen applications, so we can actually enter data or pull data from a green-screen application as well as a web UI or a client.

So this is an example of a workflow that has a number of steps in it. This might be an accounts payable workflow. So at the start of this process, I'm waiting for a report. It might be my open invoices. And maybe they're coming from two different sources, two different applications. So one of them I get with email and you can see I am monitoring an inbox over here. The other one gets dropped, maybe gets FTPed or just stored in a folder on the network somewhere. So I can build a workflow that will wait for those reports, monitor them, process whatever needs to be done when they come in, save them to a certain folder maybe. But I can build logic into this workflow. So, I've got to wait here. I need both of those reports before I can go look at it and see if the totals match.

And so you can build logic in here and I'll show you this running in a little bit. Then I've got a task here that reads both the reports. It looks for the total line and then saves those totals off to a variable and checks to see if they balance. If they do, if both of the totals are correct, then it'll go ahead and process those invoices. If not, if one of them is off, then it's going to stop, it won't process the invoices, open up a ticket, notify accounting, whatever it is that you want to do. So the beauty of a workflow like this is that the user only needs to get involved if there is an exception. If that process runs without any errors, it can go ahead and run. And it can run multiple times a day and it can be restarted whenever it's needed.

So let's take a look at an example of Automate and SAP. A lot of customers are using SAP and Automate can interact with it in a lot of different ways. It can run executables, it can run batch files if needed. But often, what customers use automate for is driving that user interface and they can use that to enter data, extract data, run reports, other options. Sometimes it's the front end of a larger process. Before this process runs, I need to maybe enter a date through the UI or do some selections through that user interface. So, Automate can be used to interact also with any web clients or web services that your SAP users might utilize today. And also, the beauty of Automate is if there is access to the database available, you can always use Automate to interact with the SAP database as well as other databases. Oracle, SQL Server, DB too, as long as you've got a database driver, an ODBC driver available, your Automate workflows can use it and get directly to that data without going through the UI. But the beauty of Automate is that it can use that UI.

So, here I have an example of a task that I built that uses the SAP user interface and this just updates a variant, for those of you that are familiar with SAP. For those of you that are not familiar with Automate at all, this is our task builder. And so, over here on the left side of the screen, you can see we've got lots of different actions that you can use to perform whatever it is that this task needs to do. So you can drag and drop an action into this work area here and then just build each step that needs to be performed.

So what this task is going to do is it runs a shortcut or an executable that SAP provides to start up that user interface and start up that GUI client for SAP. And then we're going to wait for that window to be there before we start entering any kind of keystrokes and then move the mouse around. We're going to move the mouse to that shortcut bar at the top of the screen. And then as you can see, we just go through and enter any keystrokes. So I'm going to go to SE38 and then press the enter key. Any kind of special keystrokes that need to be done can be handled by Automate as well. And so you just go through and enter in what do you have to do next? Where do you need to go? So when this runs, it's going to start up that little GUI interface for SAP, enters the SE38 in that search bar at the top.

And now this one is just going in and changing the value of a variant. So, I just have a very simple example here. I certainly am not an SAP expert but those of you that are can see how you can go through that menu system very quickly and again, without any errors. And you can use variables to enter dates, for example, if it needs to change when you're entering data in there. So, once you've got your pieces created, then I can put them into a workflow. And so here I've got a workflow. It's got a trigger, it runs every 30 minutes but you can have lots of different triggers here. Here's where you could put your email trigger, your file trigger, etc. And then the first step that it does is it updates that variance. So here's that little task that I created.

Once that's finished, then I'm going to go on and update inventory in SAP, maybe FTP a file. So, you can also run tasks that are outside of SAP within one of these workflows. I'm going to just go ahead and run it and it will run that task again. It goes through and updates the variant. You can see here I've got some on-call email set up, so if I do get an error, I can notify the on-call group right away to let them know. So if I do have a step that fails, this process is going to stop. It won't go onto the next step until the previous step is successful. That's how I've gotten my dependencies set up.

You can also build error recovery into the individual tasks as well. I just put this out here so that you can see that. So it's going to go through each step and again, it won't start the next one till the previous one is successful and run each of those steps in the business process. Some of them are in SAP, some of them are not. It doesn't matter. You can mix and match, whatever that process looks like.

Here I've got another example of a workflow, it's just got a few more pieces in it. So this is kind of my retail example that I use for demonstrating Automate. And here we've got all the different conditions or triggers. All of this is drag and drop. So here I am, I've got files that get downloaded. Let's say I've got three stores in my little world. And so at the close of business every night, file is downloaded from each store to corporate. And so I'm monitoring for those files and as soon as they arrive, again, I need to wait for all three of them. So I don't want to update the sales system, which is the next one until all three of those files are there. It's going to just sit and wait until files are downloaded from all of my stores. Or you can also set some timing in here. If I don't get them by a certain time, then I want to do something else, notify somebody, find out what the deal is with the store.

I also have a little SLA task here. I want to be notified if I'm in danger of missing an SLA. And then also if I have an error, I'm going to open up a ticket again. So, I can be notified of the progress of this workflow as it processes.

The other thing that we have is what's called Insight, which is our mobile-enabled interface that's used in the NOC by the help desk, by anybody that needs to monitor what's happening within Automate. Here, we have a view of our retail process that's running. Also, anything that's forecast for the next 24 hours and then some history here as well. We can see we've got a failure here. It will tell you what caused that failure and you can also click and restart a failed workflow from this screen. And you can do it from a phone or a tablet. It's a really nice interface for operations or the NOC or the help desk, anybody that's got to keep an eye on, anybody that's responsible to make sure that these workflows continue processing. And if there's an error, they need to step in and do something.

Here's that little accounts payable example that I showed you earlier. Again, we've got a couple of different data sources here. One is coming from an email, the other one is coming from a file that we're watching. And so when this runs, kind of the same thing. I've got a wait built-in here because I need both of these files before I can check the totals. So that this task here reads both of the reports, finds the line that's got the total on it, and then compares the value to make sure that they balance. I've got some condition set here that will see if they balanced, go ahead. And if that's true that they're balanced, process the invoices. If they're not, if that's false, that those values are not equal, then don't process invoices. Stop. Again, notify the help desk, somebody needs to step in.

But again, a user or a staff member only needs to step in here if there's an exception to that process. So those are a few examples of how you can use automation with your ERP system to automate a lot of processes that you have. If you have any questions, you can go ahead and send them in the chat window. And I'll be happy to answer them. If I don't get to them today, we will have somebody follow up with you as well.

I do have a question. Somebody is asking, "How do you get that workflow view?" There are a couple of different versions of Automate. One of them runs on a desktop, and on that desktop version, you can just create tasks but you can't create those dependencies or the workflows. Automate has an Automate Plus version. Just kind of like an enterprise version. It's got a central server and then multiple agents where you can run tasks. In that version, you can create workflows and link those together with dependencies across multiple tasks. And the dependencies can be across multiple servers as well. So, if you're interested in that, certainly sales will contact you and we can do a demo and show you how those different versions compare.

I don't see any other questions today, so I'm going to wrap it up. I'll hang out here for a couple minutes. If you do have a question, go ahead and send them and again, if I miss it, we will follow up with you after today's session. So thank you for joining me today. I appreciate you taking the time to take a look at Automate. And hopefully, we'll see you next time. Thank you and have a great day.



See how ERP automation could help your organization

Take your ERP system to the next level with an RPA solution. Automate Plus works to automate and integrate ERP processes into workflows across the business.

Stay up to date on what matters.