RPA Challenge with SAP Intelligent RPA 2.0 : build...
Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
SAP Intelligent RPA 2.0 is a major evolution of our RPA solution offering simple-to-use bot building capabilities following the Low-Code/No-Code approach creating the path to Hyperautomation.
With SAP Intelligent RPA 2.0, expert developers, citizen developers and business process experts can build bots to augment and automate human tasks across LoBs to save time, costs and reduce human errors in business operations.
Before jumping to more new features, a quick reminder that the SAP Intelligent RPA Cloud Studio is the web application used to design bots to automate your applications. It is already available in SAP Intelligent RPA 1.0 solution as a BETA feature (Cloud Studio documentation – SAP Intelligent RPA Trial tenant). At the time I am writing the post, to participate in the SAP Intelligent RPA 2.0 BETA program, please read the last paragraph of this blog post where Andreas explains what to do. Note that when SAP Intelligent RPA 2.0 will be released, the 2.0 features will automatically appear in your tenant without you having to do anything other than update your agent to the latest version to run the new 2.0 features.
This post is the 4th part of "No code with SAP Intelligent RPA 2.0" ( part 1, part 2 and part 3) from the “Low Code - No code” series.
First, what is the RPA Challenge?
The RPA Challenge is a well known challenge to test the capabilities of RPA tools, as well as your development skills to use them.
As we are about to unveil the new generation of our solution SAP Intelligent RPA 2.0, it's a good exercice to show the capabilities, easiness and performance of the product, and its new Cloud Design Studio, with a low code approach.
Last year, one of our colleagues published a post regarding RPA Challenge using SAP Intelligent RPA 1.0 (Solving Online RPA Challenge in Less Than a Second), which explained how to handle it, and showing the execution was very fast. We'll see here that SAP Intelligent RPA 2.0 makes it quite simpler and more intuitive to design, with the same level of performance.
You 'll see that this example is entirely built with a graphical designer, without any custom code, which makes it accessible to citizen developers without a strong technical background (even though the solution provides a powerful Javascript editor, if needed to add advanced features),
Downloading an excel file with a list of ten employees :
Reading the content of the Excel file
Filling 10 successive forms with the fields of each employee (the funny part is that the fields in each form are in different positions and orders)
Getting the results (success rate and duration)
Let's start the design
The story being pitched, let's start designing the project
The main steps to design the project are :
Capture the 'RPA Challenge' screens you'll need to automate:
Main page with the form to be filled,
Result page.
Test your screen declarations, to check they are correct,
Design the workflow,
Test and troubleshoot the workflow,
Deploy and execute the project on an agent in standalone mode.
Pre-requisites :
Install Desktop Agent 2.0.x on your desktop, it allows to capture applications and execute projects,
Have an access to BETA pre release of the SAP Intelligent RPA Cloud Studio.
1) Capture the 'RPA Challenge' screens
Create a new project, named "RPA Challenge"
Open the RPA Challenge site :
Create a new application, capture the main screen
Name it "Main", use a part of the URL as recognition criterion :
Declare the items :
Some buttons: 'Download', 'Start', 'Submit'
Note that 'Main' and 'Result' screens have the same URL, thus you'll need to declare one element with 'must exist' attribute to differentiate them; we set it on the 'Submit' button.
The fields: 'First name', 'Last name', 'Phone', …
Check the captured criteria for the INPUT: the name looks to be randomly generated, so you can not use it as criterion (unlucky...)
include the DIV parent node and set the text as criterion ('Company Name', 'Last Name', …) :
This is a simple and robust way to declare the fields.
Capture the 'Result' screen
Declare elements : result message and 'Reset' button (with 'must exist' property)
Overview of the declaration phase :
2) Test application declarations
Before going to the Workflow design phase, test that your declarations are correct, by launching the "Application Tester"
Highlight elements
Test to set values in fields, or click buttons
Overview of the application tester :
As soon as your declarations are correct, you can switch to the design phase...
3) Design the workflow
First, think how to design the workflow, what are the main parts, that can be split in different automations and sub automations. A good approach will make it easier to design, to maintain, and understandable for other people working with you.
Before starting to design the automations, first create a data structure ('data type') that will be used to store employee data read from the Excel file
It is named 'Person', and the fields are directly the reflect of the columns in the Excel file : 'Lastname', 'Firstname', 'Company', 'Email', 'Address', …
For this demo, I split the process into two automations (of course, many different approaches can be chosen):
Main automation named "Run RPA Challenge"
A secondary automation named "Execute Challenge"
Main automation named "Run RPA Challenge"
Start the RPA Challenge main page (if it is already launched, the 'Start' activity navigates back to the main page).
Maximize the page (not required, it is just to make the demo more explicit)
Get the URL of the Excel file : to do that, retrieve the 'href' attribute of the 'Download' button, it contains the URL to be downloaded
Set the local path, where Excel is saved : use the standard 'log' folder of the project to store temporary stuff, to be set with Expression Editor :
Download Excel File, store it locally :
Test if the Excel file is already present in the local path,
In case the file has already been previously downloaded, the download is skipped.
Use the 'Download' activity :
Open the Excel file, read the content and return an array of employees
Use the Excel skill, which allows you to quickly map worksheet columns to 'Person' datatype fields
This activity returns an array of employees
Launch the sub automation "Execute Challenge" to fill all forms
When all fields were completed, get the message in the result page and log it.
Secondary automation named "Execute Challenge"
The sub automation takes an array of persons ('employees' variable) as input,
It clicks the 'Start' button to launch the challenge, then loops in each employee to fill a form and submit it
Systray menu configuration
To be able to launch the "RPA Challenge" in Attended mode from the systray menu, create a "Project Pane", and drop the "Run RPA Challenge" automation inside.
Overview of the workflow design :
4) Test and troubleshoot your automation
When your automation is designed, it's time to test it:
Select the "Run RPA Challenge" tab, and click the 'Test' button,
A test package is generated and deployed,
The Agent starts, downloads the package and starts executing the selected automation
During execution, the test timeline is generated on the left, it allows to visualize the execution :
Each executed activity or sub automation is displayed, with input and output values. Ex. with the "Read employees" activity which returns an array of employees :
If needed, it's possible to set some breakpoints in order to check carefully the execution and run it step by step, to make troubleshooting easier.
Without breakpoint, the total duration in Debug mode should take in general between 800 and 3000 ms, depending on the power of your PC and the available resources.
Overview of the execution in Test mode :
5) Deploy the project
When your automation is successfully tested, the project can be deployed for a standlone execution on a bot.
Select the main project tab and click "Generate Package"
A new version is automatically proposed
Switch to your environment:
Add the "RPA Challenge" package
Add an "Attended" trigger
Launch your Desktop Agent
After some seconds, the "RPA Challenge" should be available
Select the project "RPA Challenge" and start it
The Agent downloads the project and restarts
The menu now displays "Start Run RPA Challenge"
Click menu to start the execution : in standalone mode, on a fast PC, it should typically take 500 ms to 1500 ms.
Conclusion
Here we are ! With some basic experience, building this sample takes around one hour, without requiring advanced development skills, thanks to the new Low Code approach.
And you'll also notice that this hybrid solution, with a Cloud Designer running with an on premise Agent has strong robustness and performance, by executing the RPA Challenge is less than one second.
I hope you enjoyed this tutorial. You can build it yourself if you are part of the BETA program.
Stay in touch for new tutorials and annoucements around SAP Intelligent RPA 2.0 !