Unit-2
Unit-2
A Robotic Process Automation (RPA) tool is a software platform or application that enables
organizations to create, deploy, and manage software robots (bots) to automate repetitive, rule-
based tasks in various business processes.
There are several RPA tools available in the market, Some popular examples of RPA tools
include:
UiPath
Automation Anywhere
Blue Prism
WorkFusion
Microsoft Power Automate (formerly known as Microsoft Flow)
Pega Robotics (formerly OpenSpan)
Kofax RPA
These tools provide a visual and user-friendly interface that allows non-technical users to
design and build automated workflows without the need for extensive coding or programming
knowledge.
2.1.1 UiPath :
UiPath is one of the leading Robotic Process Automation (RPA) software platforms that enables
organizations to automate repetitive tasks and streamline business processes. It provides a
comprehensive suite of tools and features to design, deploy, and manage software robots that
mimic human actions in interacting with applications and systems.
UiPath offers different licensing options, including a Community Edition for individuals and
small teams to get started with RPA at no cost, as well as enterprise-level licenses for larger
organizations with advanced features, support, and scalability requirements.
UiPath Studio
UiPath Robot
UiPath Orchestrator
UiPath Studio:
UiPath Studio is the main development environment where users can create, design, and test
automation workflows. It offers a user-friendly, visual interface with a drag-and-drop
functionality, making it easy for both developers and non-technical users to build automation
processes. It is the primary tool to develop UiPath Robots. Having a visual signal that shows
errors and a recorder that mimics what the user does, makes the process of creating and using
the model much easier.
UiPath Robot:
UiPath Robot runs the processes designed in UiPath Studio. It works in both attended (working
only on human trigger) and unattended environments (self-trigger and work on their own).
The following are types of Robots:
Attended: It operates on the same workstation as a human to help the user accomplish
daily tasks. It is usually triggered by user events. You cannot start a process from
Orchestrator on these type of Robots, and they cannot run under a locked screen.
Unattended: It can run unattended in virtual environments and can automate any
number of processes. In addition to the Attended Robot's capabilities, this Robot is
responsible for remote execution, monitoring, scheduling, and providing support for work
queues.
Free: It is similar to Unattended Robots, but can be used only for development and testing
purposes, not in a production environment.
UiPath Orchestrator :
UiPath Orchestrator is a web-based platform that runs and manages Robots. It provides a
dashboard with real-time insights, analytics, and error tracking. Orchestrator is especially
useful for managing bots across large-scale automation deployments. It is capable of deploying
multiple Robots, and monitoring and inspecting their activities.
When you first open UiPath Studio, you are directed to the page.
You can either open an old project or create a new one. Let us say we are making a new
project.
The user interface of UiPath Studio has multiple panels for easier access to specific
functionalities.
We click on Blank and name it. We will then be directed to a screen, which will display
the following
Fig-3: The User Interface
1. The Ribbon
3. Designer panel
4. Properties panel
5. Outline panel
6. Arguments panel
7. Variable panel
8. Import panel
9. Activity panel
This panel located at the top of the user interface and consists of four tabs:
1. START: This is used to start new projects or to open projects previously made.
3. EXECUTE: This is used to run projects or to stop them, and also to debug Projects
4. SETUP: This panel is for deployment and configuration options; it has three tools available:
Publish: This is used to publish a project or create a shortcut for it and schedule tasks
Setup Extensions: This is used to install extensions for Chrome, Firefox, Java, and
Silver light
Reset Settings: This is used to reset all settings to defaults
This panel gives the user a shortcut to the most used commands. One can also add new
commands to this panel. This is located above the Ribbon on the user interface. By default,
there are two buttons available, Save and Run, which are also available in the DESIGN tab of
the Ribbon.
This is the panel where one defines the steps and activities of the projects. It is where a
developer does most of the things to record activities or manually drop activities on the
canvas.
In UiPath, this is equivalent to the code windows of Microsoft Visual Studio. When we develop
a Robot, this is the window where we will be organizing various activities in a flow or chain to
accomplish a task. The project an user makes is clearly displayed on the Designer panel and
the user has the option of making any changes to it.
The panel located on the right-hand side of the user interface is for viewing the properties of
the activities and for making any changes, if required.
You need to select an activity first and then go to the Properties panel to view or change any of
its properties
2.2. 5. Activities panel :
Located on the left-hand side of the user interface, this panel contains all the activities that
can be used in building the project. The activities can easily be used in making a project by
simply dragging and dropping the required activity into the required location in the Designer
panel.
With the Project panel, you can view the details of your current project and open it in a
Windows Explorer window. It is located on the extreme left-hand side of the design panel,
below the Library panel.
As the name suggests, this panel gives a basic outline of the project. The activities that make
up the workflow are visible in this panel.
Using this, you may see a high-level outline of the project and you can drill down to see
deeper. This panel is especially helpful of large automation projects, where one may otherwise
have a tough time going through it.
This panel displays the output of the log message or writes line activities. It also displays the
output during the debugging process. This panel also shows errors, warnings, information,
and traces of the executed project. It is very helpful during debugging. The desired level of
detail can be changed in Execute |Options | Log activities.
With this panel, you can reuse automation snippets. It is located on the extreme left-hand
side of the Designer panel.
This allows the user to create variables and make changes to them. This is located below the
Designer panel. In UiPath Studio, variables are used to store multiple types of data ranging
from words, numbers, arrays, dates, times, and timetables.
As the name suggests, the value of the variable can be changed. An important point to note is
that variables can only be created if there is an activity in the Designer panel.
To create new variables, you can go to the DESIGN tab on the Ribbon and click on create
variable, and then choose the type of variable. Otherwise, one can simply go to the Variable
panel located below the Designer panel and create a variable.
2.3 VARIABLES :
A variable is the name that is given to a particular chunk of memory cells or simply a block of
memory and is used to hold data. A variable is used to store data. Data is present around us
in different Types-it can be an mp3 file, text file, string, numbers, and so on. particular type of
variable can hold only that type of data.
In UiPath, we can declare a variable in the Variables section. Just give it a meaningful name
and select the appropriate type from the drop-down list. We can also specify the scope of a
variable. The Scope is the region under which the data has its effect or availability. You can
choose the Scope of the variable according to your requirements
Managing variables effectively plays a crucial role for building robust and efficient automation
workflows. RPA tools provide features and best practices to help you manage variables
efficiently. Here are some ways for managing variables in RPA:
Variable Scope: Understand the scope of variables in your RPA tool. Variables can have
different scopes, such as global (accessible across the entire workflow) or local (accessible
only within a specific block or action). Use the appropriate scope based on where the
variable needs to be accessed and modified.
Variables automatically generated from activity outputs (for cross-platform projects only).
Open the Data Manager, then select New > New Variable.
Configure the name, data type, scope, and default value for the variable.
To remove all the variables that are defined but not used anywhere in the current file, select
Remove Unused > Variables in the Studio ribbon, and then select Yes when prompted for
confirmation. This also removes variables that are unused but mentioned in annotations.
Naming variables appropriately is essential for creating maintainable and readable RPA
workflows. Here are some best practices for naming variables in RPA:
Be Clear and Descriptive: Use clear and descriptive names that reflect the purpose of the
variable. A well-chosen name should provide a good understanding of what the variable
represents and how it is used in the workflow.
Example: Instead of using a generic name like "x," use something like "totalSales" to
represent the total sales amount.
Follow Naming Conventions: Adhere to standard naming conventions used in your
organization or project. Consistent naming practices make it easier for team members to
understand the variables used in the automation.
Use Camel Case or Underscores: For multi-word variable names, consider using camel
case (e.g., firstName, orderDate) or underscores (e.g., customer_name, item_count) to
enhance readability.
Avoid Abbreviations: Minimize the use of abbreviations unless they are widely understood
and common in your domain. Abbreviations can be confusing and may not be clear to
others.
Use Nouns for Objects, Verbs for Actions: Choose nouns for variables representing objects
or entities, and use verbs for variables representing actions or statuses.
Example: Use "customerName" for the name of a customer and "isCompleted" to indicate
the status of a task.
Avoid Reserved Words: Ensure that the variable names do not conflict with any reserved
keywords in the RPA tool or programming language you are using.
Avoid Numbers at the Beginning: Avoid starting variable names with numbers, as it may
cause parsing or syntax issues in some RPA platforms.
Keep Variable Names Short and Meaningful: Strive to strike a balance between being
descriptive and keeping variable names concise. Extremely long names can be unwieldy
and harder to manage.
Use Consistent Casing: Be consistent with your casing style throughout the variable
names. Mixing different casings (e.g., camel case and snake case) can lead to confusion.
Review and Refactor Regularly: Regularly review your variable names to ensure they
remain relevant and meaningful. Refactor names when necessary to maintain clarity and
consistency.
Avoid Special Characters: Generally, avoid using special characters, symbols, or spaces
in variable names, as they may cause issues in some RPA platforms.
This allows the user to create variables and make changes to them. This is located below
the Designer panel.
In UiPath Studio, variables are used to store multiple types of data ranging from words,
numbers, arrays, dates, times, and timetables.
As the name suggests, the value of the variable can be changed.
An important point to note is that variables can only be created if there is an activity in
the Designer panel.
To create new variables, you can go to the DESIGN tab on the Ribbon and click on create
variable, and then choose the type of variable. Otherwise, one can simply go to the
Variable panel located below the Designer panel and create a variable.
Fig-7 : types of variables
Generic value variables are versatile variables that can store any type of data. They can hold
text, numbers, dates, Boolean values, or even more complex data structures like arrays and
dictionaries. Generic value variables are useful when you want to handle data without needing
to know the specific data type in advance.
In many RPA platforms, generic value variables are used when the data type of a value is not
known in advance or when you need to perform generic operations without worrying about the
underlying data type. These variables can store strings, numbers, dates, Booleans, arrays,
dictionaries, or even more complex data structures.
However, one should be cautious when using generic value variables, as operations on them
might require additional checks or conversions to handle specific data types correctly. For
operations that require specific data types, it is generally better to use variables of the
appropriate data type to avoid potential errors or unexpected behavior.
Text Variables in RPA are a type of variable used to store and manipulate textual data, such as
strings of characters. These variables are specifically designed to handle text-based information,
which is a common data type encountered in various automation scenarios.
Text variables can store simple words, sentences, paragraphs, or any combination of
characters. They are widely used in RPA for tasks like data extraction, text processing, form
filling, email handling, and interacting with text-based user interfaces.
Text variables are crucial in RPA workflows, especially when dealing with data extracted from
various sources, processing natural language, or interacting with text-based applications. RPA
developers often use text variables along with string manipulation functions to extract specific
information, format data, and perform various operations on textual data to accomplish
automation tasks effectively.
True or False Variables, also known as Boolean Variables, are a type of variable used in RPA to
store binary data with two possible states: "true" or "false." These variables are specifically
designed to handle Boolean logic, which is fundamental in decision-making and conditional
branching within automation workflows.
Boolean variables are commonly used to represent the outcome of a logical condition or a yes/no
situation. They are useful for controlling the flow of an RPA process, determining whether
certain actions should be taken or skipped based on specific conditions.
Boolean variables are indispensable for implementing conditional logic in RPA. They enable RPA
developers to create automation workflows that respond to different situations and make
decisions based on the evaluation of logical expressions. Boolean variables help automate
business processes that involve complex decision-making scenarios, leading to more efficient
and reliable automation solutions.
Number Variables in RPA are a type of variable used to store numerical data. They are
specifically designed to handle numeric values, including integers and floating-point numbers.
Number variables are essential for performing arithmetic operations, calculations, and
numerical comparisons in automation workflows.
RPA platforms provide different data types to represent numeric values, such as integers (whole
numbers) and floating-point numbers (numbers with decimal places). These data types ensure
that numeric data is stored accurately and efficiently, allowing RPA bots to perform
mathematical operations and manipulations.
Number variables are fundamental in RPA workflows that involve quantitative data and require
mathematical calculations. They are commonly used for tasks like data aggregation, formula-
based calculations, counting, indexing, and looping. With number variables, RPA developers
can automate processes that involve numerical data with precision and efficiency, streamlining
various business operations.
2.10 ARRAY VARIABLES :
Array Variables in RPA are a type of variable used to store collections of data of the same data
type. Arrays allow you to group multiple values into a single variable, making it easier to manage
and process related data in an organized manner. Array variables are particularly useful when
you need to handle lists of items, sets of data, or when you want to perform operations on
multiple elements simultaneously.
RPA platforms support one-dimensional arrays and, in some cases, multi-dimensional arrays
(arrays with multiple dimensions or "nested" arrays). One-dimensional arrays are the most
common and straightforward type of array used in RPA workflows.
Arrays provide a convenient way to work with multiple data points within a single variable. They
are often used for tasks like data manipulation, data processing, data iteration, and storing
results from data extraction or web scraping. With array variables, RPA developers can
efficiently handle and manage collections of data, leading to more efficient and effective
automation workflows.
Date and Time variables in RPA are a type of variable used to store and handle date and time-
related information. They are essential for automating processes that require scheduling, time-
based operations, date calculations, and interactions with date and time fields in various
applications.
RPA platforms typically provide specific data types or classes to handle date and time data,
allowing for easy manipulation and formatting of dates and times. Some common functionalities
associated with date and time variables in RPA include parsing dates from strings, formatting
dates to strings, performing date calculations, and comparing dates.
Data Table Variables in RPA are a type of variable used to store structured data in tabular form,
similar to a database table or an Excel spreadsheet. Data tables are particularly useful when
dealing with large sets of related data, as they allow you to organize, manipulate, and analyze
the data efficiently.
RPA platforms provide built-in support for data tables, allowing you to create, populate, and
manipulate them with ease. Data tables typically consist of rows and columns, where each row
represents a record or data entry, and each column represents a specific attribute or field.
Data Table Variables allow RPA developers to handle data extracted from different sources,
perform data manipulations, and store the results of automation tasks in a structured format.
Data tables are commonly used in RPA for tasks such as data scraping, data validation, data
transformation, and data storage.
Data Table Variables are a powerful tool for handling structured data in RPA workflows. They
provide a convenient way to organize and process data, making it easier to perform data-driven
automation tasks and extract meaningful insights from the collected data. Data tables are
especially useful when dealing with data from various sources and applications, as they offer a
standardized and structured format for handling complex data sets.
Arguments are used to pass data from a project to another. In a global sense, they resemble
variables, as they store data dynamically and pass it on. Variables pass data between activities,
while arguments pass data between automations. As a result, they enable you to reuse certain
projects time and again.
Open the Data Manager, then select New > New Argument.
A new item with the default name argument is added under Arguments.
From the Data Manager, you can also create arguments in bulk by right-clicking the Arguments
node and then selecting Bulk Create Arguments. A new window is displayed where you can add
and configure multiple arguments.
You can remove variables from the Data Manager or from the Variables panel.
following are Naming practices for Arguments which can significantly enhance the readability,
maintainability, and collaboration of your automation workflows. Consistent and meaningful
argument names help both the developers creating the automation and anyone reviewing or
modifying the automation later
Be Descriptive: Use descriptive names that convey the purpose and content of the
argument. Avoid using generic names like "arg1" or "data." Instead, use names that
clearly indicate what the argument represents, such as "customerName," "orderDetails,"
or "employeeID."
Use Camel Case or Underscore Separation: Stick to a naming convention to make your
arguments more readable. Common conventions include camel case (e.g.,
customerName, accountBalance) or underscore separation (e.g., customer_name,
account_balance).
Avoid Abbreviations (Unless Standardized): While shortening names might save a few
keystrokes, it can also make the code less readable. Only use abbreviations if they are
standard and widely understood within your team or organization.
Be Consistent: Maintain consistency throughout your project or organization in naming
arguments. This consistency helps anyone working on the automation to understand the
codebase more easily.
Use Singular Nouns for Single Values: Use singular nouns for arguments representing
single values, such as "invoiceNumber" or "productCategory."
Use Plural Nouns for Collections: If an argument represents a collection of items, use a
plural noun to indicate that it holds multiple elements, like "customerList" or
"orderDetailsArray."
Avoid Numbers at the Start: Refrain from starting argument names with numbers, as it
can lead to confusion and make the names less readable.
Avoid Reserved Keywords: Do not use reserved keywords or language-specific keywords
as argument names to prevent conflicts and errors.
Prioritize Clarity Over Shortness: While concise names are preferred, prioritize clarity over
brevity. A longer but more descriptive name is better than a short name that is unclear.
Use Verbs for Action-Oriented Arguments: If an argument represents an action or verb,
include an action-oriented term in the name, such as "calculateTotal," "validateInput," or
"processData."
Consider Context: Take into account the context in which the argument is used and name
it accordingly. Contextual names make the purpose of the argument more apparent.
Review and Refactor Regularly: As your RPA project evolves, review and refactor argument
names to ensure they align with the latest requirements and maintain clarity.
The Argument Panel in UiPath Studio is a feature that allows users to define and manage input
and output arguments for an automation workflow. It provides a way to customize how data is
passed to and from the automation, making the workflow more flexible and adaptable to
different scenarios. The Argument Panel is located below the Designer Panel in UiPath Studio.
To access the Arguments panel, click on the "Arguments" button located on the ribbon at the
top of the Studio interface. To create new arguments, click on the "Add" button within the
Arguments panel.
When adding a new argument, you need to provide the following information:
Importing new namespaces in RPA is a way to extend the capabilities of the RPA tool by adding
external libraries or packages.
Identify the Namespace: First, identify the external library or package (namespace) that
you want to use in your RPA project. This could be a library for working with Excel files,
accessing databases, performing advanced calculations, or interacting with web services,
among many other possibilities.
Install the Library (If Required): If the external library is not already installed in your RPA
tool's environment, you might need to install it. Some RPA tools come with pre-installed
libraries, while others might require manual installation. Follow the documentation or
guidelines provided by your RPA tool to install the library.
Import the Namespace: Once the library is installed, you need to import the namespace
into your RPA project. The process of importing a namespace typically involves using a
specific syntax or command in your RPA tool. The syntax can vary based on the
programming language supported by the RPA tool.
Use Functions/Methods from the Namespace: After importing the namespace, you can
use the functions, methods, or classes provided by the library in your automation
workflow. These functions/methods allow you to perform tasks that are not directly
available in the core functionality of the RPA tool.
In RPA (Robotic Process Automation) using UiPath, control flow refers to the sequence and
logic used to guide the robot's actions and decision-making during the automation process.
Control flow allows the robot to follow specific paths based on certain conditions, loops, and
branching statements, much like in traditional programming languages. Control flow
structures allow RPA developers to create dynamic and flexible automation processes that can
handle various scenarios efficiently. UiPath provides numerous activities for performing the
decision-making process Some common control flow structures used in RPA include:
Conditional statements are used to control the flow of an RPA automation workflow based on
specific conditions. The most common type of conditional statement is the "If-Else" statement.
They enable RPA developers to create dynamic and adaptive automation workflows that respond
to different scenarios encountered during execution. RPA developers can make bots behave like
decision-making agents, responding to various conditions and optimizing process execution
based on real-time information.
If Statement: The "If" statement evaluates a condition. If the condition is true, the bot
executes the actions specified in the "if" block. If the condition is false, the bot skips the
"if" block and moves on to the next part of the workflow.
Else Statement: The "Else" statement is optional and follows the "if" block. If the condition
in the "if" statement is false, the bot executes the actions specified in the "else" block,
providing an alternative set of actions to be performed.
Loops enable the RPA bot to repeat a set of actions multiple times. For example, a "for" loop
can iterate over a collection of items, executing the same actions for each item, while a "while"
loop keeps executing actions until a specific condition becomes false. Loops are powerful tools
in RPA that enable bots to handle repetitive tasks efficiently and process data collections
effectively.
A "For" loop is used when you know the number of iterations or when you want to iterate over
a collection of items. It is commonly used when you know the number of iterations in advance
or when you need to perform the same set of actions for each item in a collection.
A "While" loop is used when the number of iterations is not predetermined, and you want to
continue looping as long as a specific condition remains true. It consists of a single condition
that is evaluated before each iteration. It is commonly used when the number of iterations is
not known in advance, and the loop should continue until a specific condition is met or becomes
false.
Condition: The loop starts by evaluating the specified condition. If the condition is true,
the actions inside the loop's block are executed. If the condition is false initially, the loop
is skipped entirely, and the program proceeds to the next section of code after the "While"
loop.
Actions inside the Loop: The block of actions within the "While" loop is executed
repeatedly as long as the condition remains true. The loop's body can include any
sequence of actions that you want the bot to perform during each iteration.
Updating the Condition: During each iteration, the loop may modify the variables used in
the condition. It is essential to ensure that the condition eventually becomes false at some
point to avoid infinite loops.
2.21 ADVANCED CONTROL FLOW :
Advanced control flow in RPA involves using more complex and sophisticated logic to handle
complicated decision-making and automation scenarios. It helps to make RPA bots smarter
and capable of handling more complex tasks in a flexible and efficient manner.
Sequence
Flowchart
Control Flow
2.22 SEQUENCE :
A sequence is a linear set of actions executed one after the other in a specified order. It
represents a straightforward, step-by-step flow of activities that the RPA bot performs during
the automation process. In a sequence, each action is executed sequentially without any
branching or conditional logic. Sequences are best suited for simple, linear automation tasks.
It enables you to go from one activity to another, without interfering with your project.
Features of a Sequence:
Linear Flow: Actions in a sequence are executed in the order they appear, from top to
bottom.
No Decision Points: There are no conditional statements (like "If-Else") or loops within a
sequence.
Ideal for Linear Tasks: Sequences are used for automations that have a predefined,
linear order of steps.
NOTE : Activity represents the unit of an action. Each activity performs some action. When
these activities combine together, it becomes a process.
Fig-13 : Sequence
2.23 FLOWCHART:
Decision Points: Flowcharts include conditional statements like "If-Else" and "Switch" to
make decisions based on specific conditions.
Loops: Flowcharts support loops, such as "For" and "While," to repeat actions multiple
times based on certain conditions.
Multiple Paths: Flowcharts allow multiple paths or branches, depending on the
decisions made during the automation.
Visual Representation: Flowcharts use shapes, arrows, and connectors to represent
actions and decisions visually.
Fig-14 : Flowchart
A flowchart to automate an order processing system might include the following elements:
Decision Point: Check if the order is for a new customer or an existing customer.
Branch 1 (New Customer): If the order is from a new customer, perform the registration
process first.
Branch 2 (Existing Customer): If the order is from an existing customer, skip the
registration process.
Perform order processing tasks for both new and existing customers.
The flowchart allows the bot to take different paths based on whether the customer is
new or existing.
In RPA (Robotic Process Automation) using UiPath, control flow refers to the sequence and logic
used to guide the robot's actions and decision-making during the automation process. Control
flow allows the robot to follow specific paths based on certain conditions, loops, and branching
statements, much like in traditional programming languages. Control flow structures allow RPA
developers to create dynamic and flexible automation processes that can handle various
scenarios efficiently. UiPath provides numerous activities for performing the decision-making
process
Control flow activities in RPA (Robotic Process Automation) platforms like UiPath allow you to
manage the sequence and logic of actions taken by the robot during automation processes.
These activities enable the robot to make decisions, loop through data, and handle exceptions,
ensuring efficient and effective automation.
These activities, present in the Activities panel, are put into the workflow either using the
double-click method or the drag and drop method.
2.26 THE ASSIGN ACTIVITY :
The Assign activity is used to designate a value to the variable. The Assign activity can be used
for different purposes, such as incrementing the value of a variable in a loop, or using the
results of a sum, difference, multiplication, or division of variables and assigning it to another
variable.
The Delay activity, as the name suggests, is used to delay or slow down an automation by
pausing it for a defined period of time. The workflow continues after the specified period of time.
It is in the hh:mm:ss format. This activity plays a significant role when we need a waiting period
during automation, perhaps say, a waiting period required for a particular application to open.
The Do while activity is used in automation when it is required to execute a statement based
on the fulfillment of a certain condition. While activity executes a statement, then checks
whether the condition is fulfilled. If the condition is not fulfilled, it exits the loop.
Fig-16 : Do while activity
The If activity consists of a statement with two conditions: true or false. If the statement is
true, then the first condition is executed; if not, the second condition is executed. This is
useful when we have to take decisions on the basis of statements.
Fig-17 : If activity
The Switch activity can be used to make a choice. When we have various options available and
want to execute one option, we frequently use the Switch activity. By default, the Switch activity
takes an integer argument. If we want to take a desired argument, then we can change it from
the Properties panel, from the Type Argument list. The Switch activity is very useful in the
categorization of data according to one's own Choice.
The While activity is used in automation to execute a statement or process based on a certain
condition. If found true, the loop is executed; that is, the process is executed repeatedly. The
project only exits from the loop when the condition does not hold true. This Activity is useful
while iterating through an array of elements.
The For each activity works by iterating each element from the collection of items or list of
elements, one at a time. In the process, it will execute all the actions that are available inside
the body. Thus, it iterates through the data and processes each piece of information separately.
The Break activity is used to break/stop the loop at a particular point, and then continue to
the next activity according to the requirement. It cannot be used for any other activity apart
from the For each activity. It is useful when we want to break the loop to continue to the next
activity in the For each activity.
Data manipulation is the process of changing data whether it is adding, removing, or updating
it. Data Manipulation includes dealing with various variables and performing operations with
them
Data manipulation in RPA refers to the process of accessing, extracting, transforming, and
updating data as part of the automation workflow. RPA bots often interact with various data
sources, such as databases, spreadsheets, web forms, APIs, and other systems, to perform
data-related tasks. Data manipulation is a critical aspect of RPA, as it enables bots to process
and handle data efficiently, helping organizations automate repetitive data-related tasks and
streamline business processes.
Data Extraction: RPA bots can extract data from various sources, such as web pages,
documents, emails, databases, or any other structured or unstructured data format. This
data can then be used for further processing or analysis.
Data Transformation: Once the data is extracted, RPA bots can transform it into a desired
format or structure. Data transformation may involve cleaning, filtering, merging,
splitting, or aggregating data to make it suitable for specific tasks.
Data Validation: RPA bots can perform data validation to ensure the accuracy and
consistency of data. This may include checking for missing or incorrect values, validating
data against predefined rules, or verifying data against reference datasets.
Data Calculation: RPA bots can perform calculations or mathematical operations on data
to generate new insights or derive useful metrics. For example, calculating totals,
averages, or percentages from data.
Data Update: RPA bots can update data in databases, spreadsheets, or other systems.
This could involve inserting new records, updating existing records, or deleting
unnecessary data.
Data Integration: RPA bots can integrate data from multiple sources or systems, enabling
the exchange of information between different applications or databases.
Data Output and Reporting: RPA bots can generate reports or export data in various
formats, such as Excel spreadsheets, PDFs, or CSV files, to present the processed data
in a readable and usable format.
In RPA (Robotic Process Automation), a scalar refers to a type of variable that can hold a single
data point of a specific data type. Scalars are used to represent individual values, such as
characters, integers, decimals, Booleans, and dates. Unlike arrays or collections, which can
store multiple values, scalars can only hold one value at a time.
Character (Char): The character data type represents a single character, such as a letter,
number, or symbol. In RPA, characters are typically used to store individual
alphanumeric values.
Integer (Int): Integer variables hold whole numbers without any decimal point. Integers
are commonly used for counting, indexing, or representing quantities in RPA.
Double or Floating-Point (Double): The double data type is used to store numbers with
decimal points, allowing for more precise numeric representation. It is suitable for
calculations involving fractional values.
Boolean (Bool): The Boolean data type can only hold two possible values: true or false.
Booleans are used for logical operations and decision-making in RPA.
Date and Time (Date, Time, DateTime): RPA supports various date and time data types to
handle dates, times, or a combination of both. These data types enable bots to perform
operations involving dates and times, such as comparisons, calculations, or formatting.
String: While not a primitive data type, strings can be considered scalar data types in
RPA. Strings are used to store sequences of characters, such as words, sentences, or
alphanumeric values.
RPA developers use scalar variables to store and manipulate individual data points during the
execution of automation tasks. For example, an RPA bot might use scalar variables to store
customer names, order IDs, transaction amounts, or status flags. Scalars enable RPA bots to
handle specific data elements efficiently and perform calculations or decision-making based on
individual values. The proper use of scalar variables in RPA helps improve the efficiency and
accuracy of automation workflows.
2.37 COLLECTIONS :
In RPA (Robotic Process Automation), collections are data structures that can hold multiple
data points of a particular data type. They are used to store and manage groups of related data,
allowing RPA bots to work with multiple values efficiently. Collections are essential when dealing
with lists of items, datasets, or when you need to organize data in a structured manner. There
are several types of collections commonly used in RPA:
Array: An array is a fixed-size collection that stores elements of the same data type in a
contiguous memory block. The elements in an array are accessed using an index, which
is an integer value representing the position of the element in the array. Arrays are
suitable for situations where the size of the collection is known in advance and does not
change during the program's execution.
List: A list is a dynamic collection that can grow or shrink in size as elements are added
or removed. Unlike arrays, lists do not require a fixed size, making them more flexible for
managing variable-length collections. Elements in a list can be accessed using an index,
similar to arrays.
Dictionary (or Map): A dictionary is a collection of key-value pairs, where each element is
associated with a unique key. Dictionaries provide efficient lookups based on keys,
allowing quick retrieval of values associated with specific keys. They are useful for
organizing data in a way that facilitates fast data retrieval and mapping relationships
between data elements.
Set: A set is a collection of unique elements that does not allow duplicates. Sets are useful
when you need to perform set operations like union, intersection, and difference between
two collections.
2.37.1 Creating a Collection : Creates a collection of items that have the same type as the first
specified element. Click the field to open the Collection Builder window or select > Use collection
to select a variable.
Command: UiPath.Activities.System.Collections.BuildCollection
2.38 TABLES :
In RPA (Robotic Process Automation), tables are data structures that represent information in
a tabular form, consisting of rows and columns. Tables are commonly used to organize
structured data in a way that resembles a spreadsheet or a database table. Each row in the
table represents a record or data entry, while each column represents a specific attribute or
field of the data. Tables are particularly useful when dealing with data extracted from structured
sources like spreadsheets, databases, web tables, or any other tabular format.
Rows and Columns: Tables consist of rows and columns. Each row represents a unique
record, and each column represents a specific attribute or data field.
Structured Data: Tables organize data in a structured manner, allowing for easy access
and manipulation of individual data elements.
Header Row: Tables typically have a header row that provides column names, making it
easier to identify the data stored in each column.
Data Extraction: RPA bots often extract data from tables on websites, spreadsheets, or
databases to process the information and perform automation tasks.
Data Manipulation: RPA bots can manipulate table data by adding, updating, or removing
rows and columns based on specific requirements.
Tables are widely used in RPA for automating data-related tasks and processing information
from structured sources. They are commonly used in scenarios such as:
Text manipulation in RPA (Robotic Process Automation) refers to the process of extracting,
modifying, and transforming textual data during automation tasks. RPA bots often need to work
with text data from various sources, such as documents, emails, web pages, or databases. Text
manipulation allows bots to extract valuable information, clean and format text, perform
searches, and generate useful insights from unstructured or semi-structured textual content.
Text Extraction: RPA bots can extract specific text or information from documents, web
pages, emails, or other textual sources using techniques like regular expressions,
keyword matching, or screen scraping.
Text Cleaning and Formatting: Text often requires cleaning and formatting to remove
unwanted characters, special symbols, or irrelevant information. RPA bots can perform
tasks like removing line breaks, converting text to lowercase or uppercase, and fixing data
format issues.
Text Search and Replacement: RPA bots can search for specific keywords or patterns in
text and perform replacements or insertions as needed. This is useful for updating
templates or generating dynamic content.
Text Parsing and Tokenization: Text parsing involves breaking down sentences or
paragraphs into smaller units (tokens) like words or phrases. Tokenization helps analyze
text and extract relevant information.
Text Concatenation: RPA bots can combine or concatenate multiple text strings to create
longer, meaningful sentences or paragraphs.
Text Analysis: Text analysis techniques like sentiment analysis, keyword extraction, or
named entity recognition can be used to gain insights from textual data.
Text-to-Speech and Speech-to-Text Conversion: RPA bots can convert text to speech for
voice interactions or convert speech to text for processing voice-based inputs.
Text Translation: RPA bots can integrate with translation APIs to translate text between
different languages.
Email Processing: An RPA bot can extract specific information from emails, such as the
subject, sender, or key content, and perform actions based on the extracted data.
Document Summarization: RPA bots can process lengthy documents, extract important
information, and generate concise summaries.
Data Extraction from Web Pages: RPA bots can extract data from web pages by scraping
relevant text elements and storing them in structured formats.
Text Analysis for Customer Feedback: RPA bots can analyze customer feedback text to
identify sentiment patterns and extract key insights for businesses.
Form Data Processing: RPA bots can process text data entered in forms, validate the data,
and update databases or spreadsheets accordingly.
Data manipulation in RPA involves gathering, collecting, and assembling data from various
sources into a structured format for further processing and analysis. RPA bots are designed to
extract data from multiple systems, applications, databases, or web pages and then consolidate
and organize the information into a cohesive dataset. This process is crucial for data-driven
automation tasks and decision-making within organizations.
Here's how data manipulation in RPA involves gathering and assembling data:
2.40.1 Gathering Data:
RPA bots are programmed to interact with different data sources and systems to collect relevant
information. This can include:
Web scraping: Bots navigate web pages, extract specific data elements, and store the data
in a structured format.
Document processing: Bots extract data from documents, PDFs, or other file types.
Database interactions: Bots connect to databases, query data, and retrieve information
from tables or records.
Application interactions: Bots interact with software applications to collect data from user
interfaces or APIs.
Data assembly and aggregation in RPA involve the process of combining, merging, and
organizing the extracted and cleaned data from various sources into a coherent and structured
dataset. This dataset is typically presented in a tabular format, such as a table, spreadsheet,
or database, which allows for efficient data storage, analysis, and manipulation. The primary
goal is to consolidate related data points into a single, unified view for further processing or
reporting. The following are some steps involved in Data assembly and aggregation :
Combining Data from Multiple Sources: RPA bots often need to interact with different
systems and sources to collect relevant data. Each data source may provide different
pieces of information, and the bot's task is to combine all the relevant data points into a
single dataset. For example, an RPA bot may extract customer information from a web
form, product details from an e-commerce website, and transaction history from a
database. The bot then assembles this data into a consolidated dataset.
Data Transformation for Uniformity: Before assembling the data, the RPA bot may need
to transform the extracted data to ensure uniformity and consistency. This
transformation may involve converting data types, standardizing date formats, handling
missing or null values, and ensuring that all data adheres to a common schema.
Identifying Common Data Fields: To create a structured dataset, the RPA bot needs to
identify common data fields or attributes that can be used as columns in the table. For
example, if the data is related to customers, common data fields might include name,
email, address, and contact number.
Handling Data Mapping and Relationships: When data is gathered from multiple sources,
there may be relationships between different datasets. The RPA bot needs to handle data
mapping and join related data based on common keys or identifiers. For example, when
merging customer data with their respective transactions, the bot should map the
transactions to the correct customers based on customer IDs.
Aggregating Data for Summarization: In addition to combining data, the RPA bot may
perform aggregation functions to summarize the data. Aggregation involves calculating
statistics, such as totals, averages, counts, or other summary metrics for specific data
groups. For instance, the bot may calculate the total sales revenue for each product
category.
Data Deduplication: Data assembly may involve handling duplicates, ensuring that each
record is unique within the consolidated dataset. The bot may apply deduplication
techniques to remove any redundant entries.
Data Sorting and Ordering: The RPA bot may also sort the assembled dataset based on
specific criteria, such as sorting customer records alphabetically or arranging
transactions chronologically.
Data Storage and Export: Once the data is assembled and aggregated, the RPA bot stores
the dataset in a designated storage system, such as a database, cloud storage, or a file
format like Excel. This allows the data to be easily accessed and utilized by other
applications or processes.
Data assembly and aggregation are critical steps in the data manipulation process within
RPA. By combining data from diverse sources and presenting it in a structured format,
RPA bots enable organizations to make more informed decisions, gain valuable insights,
and streamline their business processes effectively.
Reference Websites :
https://docs.uipath.com/studio/standalone/2023.4/user-guide/introduction
https://subscription.packtpub.com/book/business-and-other/9781788470940/1