How to create a virtual robot?

Process automation is familiar to businesses of all sizes. Almost every company uses VBA macros, for example, to create reports or perform calculations. But often for end-to-end automation of the business process, the use of macros is not enough: most of them use several different applications, work with web pages, e-mail, databases and, of course, accounting systems. This is where RPA (Robotic Process Automation) technology comes to the rescue, allowing you to create virtual “robots” that emulate the actions of an ordinary business user.

Robotization is especially popular in the B2C segment, including in trade, banks and telecom, due to the large number of similar operations performed daily. However, in any company there are many routine processes suitable for robotics. They are industry independent. This can be entering data into different systems, reconciling them with each other, generating reports or statements, creating orders and payment requirements, checking information about suppliers, downloading transactions and bank statements, controlling records in regulatory reference information, etc.

Although the idea underlying the RPA is not new, more and more attention is paid to it every year. In the past few years, the RPA market has become one of the fastest growing, in 2019 its volume amounted to $ 1.4 billion, and by $ 2.4 billion is expected by 2022. This is reflected in the growth in the number of RPA vendors, including those focusing on certain niches or lines of business. In this regard, many large enterprises are now moving to a multi-vendor strategy and use different suppliers for various tasks.

At the end of 2018, SAP acquired one of the vendors of RPA technology, the French company Contextor, which is mainly represented in the European market. Since then, the solution has been refined both in terms of integration with other SAP applications, and to improve overall performance and expand functionality. In May 2019, the new SAP Intelligent Robotic Process Automation product was introduced. The company plans to continue working on the “intellectual” component of robots: use ML and Conversational AI technologies to simplify user interaction with robots and to prevent errors that occur during execution.

How it works?

An RPA bot consists of elementary process steps or skills (for example, open Excel, save a cell value). These skills are interconnected in the desired sequence in the visual interface, forming a whole set of steps. We call this process “workflow”. At the same time, to expand the capabilities, you can add a “custom” step and use the built-in Javascript environment. The resulting workflow defines the robot script. Further, we can schedule it to be run at regular intervals, or do it manually at the command of the user, or by event. The principle of operation is shown in Fig. 1.

image
Figure 1. The principle of creating a robot

The solution can work both with traditional tools (MS Office, PDF, Outlook), and with cloud-based applications and web services, legacy-applications, and, of course, with SAP. It also has special connectors for GUI and UI5 interfaces. It supports work in two different modes, switching between which is available in the robot itself:

  • Unaccompanied. Digital employee.
    A fully automated process during which the bot performs work autonomously under human supervision.
  • Accompanied. Digital assistant.
    Partially automated process, during which the bot performs work together with the user.

What's inside?

  • bot studio (Desktop Studio)
  • orchestrator for their control and monitoring (Cloud Factory)
  • scripting agent (Desktop Agent)

The architecture of the solution is shown in Fig. 2.

image
Figure 2. Solution architecture

Robot Creation Scenario with SAP Intelligent RPA

Now we will look at how a simple robot is created using the example of the counterparty verification process in the SPARK system and obtaining the counterparty’s contact data from there for the subsequent introduction of these data into the ERP.

  1. The user receives a letter in the mail in which an Excel file with a list of counterparties is attached.
  2. The robot opens this file, finds the corresponding counterparties in the SPARK system and takes contact information (for example, phone number and email address) from there.
  3. The robot enters information on counterparties into the accounting system.

The bot development process begins with the creation of a project, which is your future robot. Next, the applications that the robot will work with are determined: in the development studio, select the type of application and define pages (in the case of the web) or windows (in the case of win). All pages have a unique identifier that allows the robot to recognize and operate it. It can be a name, id, or some other property. The main thing is that it is unique to this page. Elements are defined in the same way, they can be defined in a tree (structure) or visually, and a unique identifier can also be selected.

Once all the necessary pages and elements are defined, you can begin to create a script for the robot. Imagine that we have a blank sheet to start writing a script. And we write it, adding activities that will act as steps of the robot.

The first step is to add activity to read the letter. Then the robot must open the attachment and read the information from it, open the SPARK, find the data and enter it into the ERP as the last step. As a result, we get a workflow, as in Figure 3.

image
Figure 3. Studio for development: creating a workflow

Please note that with some applications the robot works using the API (MS Office), and with the rest at the GUI level. That is why in the screenshot you can see the difference between the activities with Excel and the SPARK pages.

Further, if you “fall through” to the level of a specific activity, you can see what actions the robot will perform at this step, such as, for example, on the screen below (Fig. 4). The robot writes the phone and email address to predefined variables.

image
Figure 4. Activities for working with the page

But this is not all: for each step, a Javascript code is generated, into which you can go directly from the step, see it, make changes or write a step from scratch (Fig. 5). There is also a constructor that helps build pop-up windows for attended robots to simplify user interaction.

image
Figure 5. Project code

By launching the robot in debug mode, you can test individual functions of the created workflow. Check whether the pages and application elements with which the robot works are correctly determined, assign certain values ​​to them, and generally test the individual workflow steps to be sure that everything works out as planned.

To use the robot productively, our script needs to be uploaded to the orchestra. It also sets the runtime, hierarchies for managing computers or groups of computers, a schedule for robots, and version control is also supported.

After we loaded the robot onto the orchestration platform and determined the schedule and the runtime environment, it starts from the Windows notification area in accordance with the settings and fulfills its script. Results analytics will be available in the orchestra.

In general, the principle of the RPA solution is quite simple. However, having gone through the full cycle from setting the task to its implementation, you can pay attention to details for which flexibility is extremely important, such as expanding functionality and scalability. We hope this article helps you prepare for your first robot with SAP Intelligent RPA. I would also like to note that we have a public, free online course on creating robots on the OpenSAP platform. If you have any questions, write in the comments, we will be happy to help. Good luck!

Authors: Botagoz Zhatakbaeva, Maria Laricheva, Evgeny Gorbunov, SAP CIS Business Solutions Architects

Similar Posts

Leave a Reply