Final Rpa
Final Rpa
INTELLIGENT AUTOMATION
VIRTUAL INTERNSHIP
BACHELOR OF TECHNOLOGY
By
SHAIK SUNAINA
(20JR1A12E4)
BONAFIDE CERTIFICATE
EXTERNAL EXAMINER
KKR & KSR INSTITUTE OF TECHNOLOGY AND SCIENCES
STUDENT DECLARATION
First and foremost, I would like to thank the Higher officials and elite
personalities of AICTE & EduSkills for giving me the opportunity to do internship
virtually.
SHAIK SUNAINA
CERTIFICATE OF INTERNSHIP
ABSTRACT
In today's dynamic and interconnected digital landscape, the All India Council for Technical
Education (AICTE) presents a groundbreaking Intelligent Automation Virtual Internship
program. This visionary initiative is designed to empower the future workforce with the
essential skills required to navigate and excel in the digital age. The AICTE's Intelligent
Automation Virtual Internship offers students a unique and transformative opportunity to
explore the world of intelligent automation, all from the convenience of their own homes.
This program goes beyond the theoretical realm and ensures that participants gain hands-on
experience in various facets of intelligent automation. It provides an immersive learning
experience that includes exposure to cutting-edge automation technologies, such as robotic
process automation (RPA) and cognitive automation. By delving into practical projects,
students will not only understand the intricacies of these technologies but also develop the
ability to apply them to real-world business challenges.
In an era where digital technologies are central to our lives, the AICTE's Intelligent
Automation Virtual Internship stands as a beacon of progress, nurturing the architects of a
more automated and efficient future. It empowers individuals to harness the power of
automation and drive innovation in a rapidly evolving digital landscape, ultimately shaping a
brighter and more connected world for all.
About AICTE
History
The beginning of formal technical education in India can be dated back tothe mid-19th
century. Major policy initiatives in the pre-independence period included the
appointment of the Indian Universities Commission in 1902, issue of the Indian
Education Policy Resolution in 1904, and the Governor General’s policy statement of
1913 stressing the importance of technical education, the establishment of IISc in
Bangalore, Institute for Sugar, Textile & Leather Technology in Kanpur, N.C.E. in
Bengal in 1905, and industrial schools in several provinces
Initial Set-up
All India Council for Technical Education (AICTE) was set up in November
1945 as a national-level apex advisory body to conduct a survey on the facilities
available for technical education and to promote development in the country in a
coordinated and integrated manner. And to ensure the same, as stipulated in the
National Policy of Education (1986), AICTE was vested with:
Statutory authority for planning, formulation, and maintenance of norms
& standards
Quality assurance through accreditation
Funding in priority areas, monitoring, and evaluation
Maintaining parity of certification & awards
The management of technical education in the country
Organizations are getting familiar, that work these days is something other than
an approach to win your bread. It is a dedication, an awareness of others’
expectations, and a proprietorship. In order to know how the applicant might
"perform" in various circumstances, they enlist assistants and offer PPOs (Pre-
Placement Offers) to the chosen few who have fulfilled every one of their
necessities.
For getting a quicker and easier way out of such situations, many
companies and students have found AICTE to be of great help. Through its
internship portal, AICTE has provided them with the perfect opportunity to
emerge as a winner in these trying times. The website provides the perfect
platform for students to put forth their skills & desires and for companies to place
the intern demand. It takes just 15 seconds to create an opportunity, auto-match,
and an auto-post to google, bing, glassdoor, Linkedin, and similar platforms. The
selected intern's profiles and availability are validated by their respective colleges
before they join or acknowledge the offer. Shortlisting the right resume, with
respect to skills, experiences, and location just takes place within seconds.
Nothing but authentic and verified companies can appear on the portal.
Additionally, there are multiple modes of communication to connect with interns.
Both claiming to be satisfied in terms of time management, quality, security
against frauds, and genuineness.
All you need to do was to register at this portal https://internship.aicte-india.org/
Fill in all the details, send in your application or demand, and just sit back & see
your vision take a hike.
About EduSkills
Blue Prism is a software company that develops industry robotic process automation (RPA)
software that enables businesses to automate complicated, end-to-end procedures.Blue Prism
created the Virtual Workforce Platform concept and is working on a robust, highly scalable,
secure, and dependable enterprise Robotic Process Automation platform.Blue Prism's RPA
software solution automates processes that humans would otherwise perform manually or
through extensive customization of existing IT systems, resulting in a greater level of
automation with significantly less investment and faster deployment.
Plan of Internship program
Stipulated Completion
Sections Section Content Date Date
Introduction
Decision Stages
Calculation Stages
Section 2 Data Items Basics 10/05/2023 19/05/2023
Process Validation
Circular Paths
Collections and Loops
Section 3,4 Layers of Logic
20/05/2023 29/05/2023
Input Parameters
Data Items: Visibility and Types
Output and Start-Up
Control Room
Process Outputs
Business Objects
Business Objects and Action Stages
Section 5
30/05/2023 08/06/2023
Application Modeller
Application Modeller and Attributes
Section 6,7 Navigate Stage 09/06/2023 15/06/2023
Wait Stage
Throttles and Unconditional Waits
Recovery Mode
Throwing Exception &Exception
Property
Exception Bubbling
Section 8 Preserving the Current Exception
Blocks 16/06/2023 22/06/2023
Activity
Working Items
Queue Items
Work Queue Configuration
Section 9 Deferring Items
23/06/2023 30/06/2023
Exception Item Retries
Release Manager
Activity 1
Activity 2
8.1-Recovery Mode
8.5 - Blocks
8.6 - Activity
10.2 – Activity 1
10.3 – Activity 2
11.1 – Exercise 1
11.2 – Exercise 2
11.3 – Exercise 3
11.4 – Exercise 4
11.5 – Exercise 5
CONCLUSION 46
SECTION 1
INTRODUCTION
1.1 BLUE PRISM RESOLUTION /SCALING
Expressions
Expressions are formulas that calculate a value, which can be used within the properties of
many of the Stages within Process Studio and Object Studio. There are various features
available which can assist you with the construction and testing of Expressions.
1
The essential components for building an Expression are the Functions list, the Function Detail
/ Expression Function Builder area and the list of Data Items available for use within the
Process Solution. The Expression area is where all of these components come together to form
an Expression - which can be validated and tested using the Validate and Evaluate Expressions
buttons. It is possible to enter Expressions using a variety of methods: users can type
Expressions directly into the Expression area, drag-and-drop Functions and Data Items into the
Expression area or use the Expression Function.
TERM DEFINITION
Conversion A list of Functions used to convert values from one Data Type to another,
e.g.
ToDate(“01/01/2020”) converts a Date stored as Text into a Date Data
Item
Retrieves the number of Bytes in binary Data, to give an idea of the size
Data
of the Data
Date
A list of Functions that perform operations that will result in Date,
DateTime, Time or TimeSpan values
Environment A list of Functions that retrieve information from the Blue Prism
Environment and from the Local
Environment running that instance of Blue Prism, e.g. retrieving the
version number of Blue
Prism, BPVersionMajor() or the Windows Operating System being used,
GetOSVersion()
2
Exceptions A list of Functions that can be used to retrieve information from
Exceptions, such as
ExceptionDetail(), ExceptionStage() and ExceptionType(), or a literal
Text value of an Exception Type that can be used to output the Exception
Type as text.
* Exception Functions can only be used between Recover and Resume
Stages, when a Process or an
Action is in Recovery Mode
File Consists of two Functions, one used to read the contents of a file as binary
Data,
LoadBinaryFile(Filename), and one used to read the contents of a text
file,
LoadTextFile(Filename)
Logic A list of Functions that use Flag values, either the literal values ‘True’ or
‘False’, or Functions that check whether a certain Text value is valid as
another Data Type, producing a Flag, or Functions that perform an
operation on two values to determine a Flag value, e.g. Greater than (>),
Value >
Value, is True; or And (AND), (Value1<Value2) AND (Value3<Value4) is
True
3
or drag and drop Data Items or Functions into the fields and then se the Paste button to add the
A Data Item used in the Store Result In field can also be used in the main body of the Expression
itself.
Collections store multiple values in rows and columns - to include a particular set of values (or
a ‘field’) from a Collection within an Expression, users must reference the Collection field
directly.
Collection fields can be used as part of an Expression, for example: a Calculation Stage that is
positioned between the start and end of a Loop, can use the data within the Collection field to
perform a calculation. As the flow passes through the Loop Start Stage, the first row of the
Collection is selected and the row field values are made available for use by the Expression.
As the flow passes through the Loop End Stage and loops back to the Loop Start Stage, the
next row in the Collection is selected and row values made available. Once all rows within the
Collection have been selected, the flow will move past the Loop End Stage.
4
To include a Collection field within an Expression, users must use ‘dot-notation’ - which is
where the Collection name (e.g. My Orders) and the field name (e.g Quantity) are included
within the Expression, separated by a full stop [My Orders.Quantity].
The properties of some types of Stage (e.g. Decision Stages or Calculation Stages) are
dedicated to building Expressions. Whereas the properties of other types of Stage contain only
particular Value fields into which an Expression can be entered. In these cases, a small
calculator icon to the right-hand side of the field can be clicked to launch an Expression
Chooser window - any Expression written here, will be entered into the field upon selecting
OK and closing. Alternatively, users can enter an Expression directly into the Value field.
5
Other times Expressions can be more complex, [Forename]&“ ”&[Middle Name]&“
”&[Surname].
Both of these Expressions could potentially output an identical result but are formulated
differently.
EXPRESSIONS
[Item ID]<>””
This Expression (used within a Decision Stage in video 9.2) is made up of three parts
and is asking: is there a value in the Item ID Data Item?
“”
So the Expression states that the value contained within Item ID is not equal to an empty Text
value, while there is a value in Item ID this would be True, when there is no longer a value in
Item ID this would be false.
[Forename]&“ ”&[Surname]
This Expression is made up of five parts and is joining two Text values together with a space
in between.
“”
“ ” “ ”
6
AddDays() Today() [Trial Duration]
The Function AddDays() that uses The first Parameter is a Date value, The second
Parameter is a a Date and a Number value to in this example the Function Today()
Number value, in this example calculate a future Date. is used to get the
current date. obtained from a Data Item.
In this Expression the Function AddDays() is using todays date and adding the number of days
that the Trial Duration lasts for, in video 4.4 the value 30 is used, so the AddDays() Function
would calculate a Date value 30 days from today. If the value of Trial Duration was a negative
value such as -30, then the AddDays() Function would calculate a value which was 30 days
before Today().
“ ”
The Expression is asking whether the string of characters that make up the Text value “Number
of Races is zero” is present anywhere in the string of characters that make up the Text value
ExceptionDetail().
If the second Parameter is found within the first Parameter, then the InStr() Function will return
a number value which represents the position in the first Parameter where the second Parameter
was matched. If this value is greater than 0 then outcome is True else False.
7
The Expression determines whether the value contained within the Full-Time column in the
Staff Data Collection is equal to True. If so, a True Flag value will be the outcome, otherwise
it will be False.
This glossary provides an overview of the technical terms associated with Blue Prism Process
development. You can use it familiarize yourself with these terms before you begin the training,
or to refer back to terms as you progress through the training.
Areas of Blue Prism
TERM DEFINITION
Application Modeller Application Modeller can be accessed via
Object Studio. Using this tool, a Business
Object can capture and identify Elements
within the interface of an application, so that
it can interact with the application.
Application Modeller can be used to create
a unique Attributes list for each of the
Elements identified, to ensure they can be
found and used by the Business Object
Control Room Control Room is where published Process
Solutions can be assigned to Digital Workers
to create Sessions. From here Sessions can
be run and managed and Work Queues can
be accessed, monitored, and managed.
Schedules can also be initiated here, to
restrict the processing of Sessions to
specified dates and times
Object Studio Object Studio is where Business Objects are
created, configured, edited and organized.
Process Studio Process Studio is where Processes are
created, configured, edited and organized
System Manager System Manager is where the settings for
Blue Prism as a whole are accessed. Create
and maintain user accounts, roles and
permissions. View history or retire
8
Processes or Business Objects. Manage Web
Services. Create and administer Work
Queues. Manage Licenses and general user
interface settings.
Release Manager Release Manager is where Packages are
created and Releases are exported
General
Terms Definitions
Process Automation Process Automation is the use of digital
technology to perform the processing of
workloads. Business processes can be fully
automated, or partially automated with
human intervention built in at strategic points
Blue Prism Solution A Blue Prism Solution is the term used to
describe the end-to-end functionality of a
Process. This includes the diagrams
constructed in Process/Object Studio, the
embedded Exception Handling logic, the
Work Queue Configuration and the
Packaging/Release of a Process
Manual Review When an Item is processed by a Work Queue
and is flagged as an Exception, then it must
be picked up by a person who will check and
complete the processing manually
Process/Object Diagram A Process or Object Diagram is the visual
representation of the Blue Prism computer
program. Users can construct these diagrams
from a selection of pre-configured
components, to instruct Blue Prism to
perform tasks
Technical Concepts
TERMS DEFINITIONS
Attributes Applications are made up of various Elements
such as windows, fields and buttons. Each of
these Elements are made up of various
characteristics or ‘Attributes’ that combine to
create a unique fingerprint. This enables the
Element to be found and used by a Business
Object
9
Business Object A Business Object provides a Process with the
functionality to interact with an external
application.
Collection A Collection can store multiple values, stored
in rows and columns in a table, similar to an
Excel spreadsheet. Data in a Collection is
accessed one row at a time and can be used
for an Input and Output of data.
Digital Worker When a Process is published to Control Room
it can be assigned to run on an external
resource known as a Digital Worker, which
carries out the processing of the workload
Exception Management Procedures can be built into a Process
Solution, to manage the errors that are
identified during processing. This 'Exception
Management' occurs within the Work Queue
Flag A function can be used as the operative part
an Expression. Many functions require two or
more parameters to define a relationship
between them e.g. the Add function:
(parameter) + (parameter). Some functions
are operations on a single value, meaning they
only require one parameter e.g.
Trim("parameter(Text)"). And some functions
are operations in themselves and do not
require any parameters, e.g. NewLine().
Global Data Item A Data Item that is universally accessible and
can store values that can be accessed, updated
and used by all of the Pages within a Process
or Business Object.
Item Key An Item Key is a value that is used to identify
an individual Item within a Work Queue. This
value correlates to the Key Name configured
in System Manager. It also correlates with the
column within the Collection Stage that is
used to store the data associated with the Item.
Local Data Items A Data Item that can only be accessed, used
and updated by the Stages that sit on the same
Page
Main Page / SubPag The Main Page is always at the top of
a Process Solution, with Sub-Pages sitting
underneath. There can be multiple Sub-Pages
within a Process, but only one Main Page
Output Parameter An End Stage on a Sub-Page, Sub-Process or
Action can be configured to use an Output
Parameter to transmit a value up to a Page
Reference Stage, a Process Reference Stage
or an Action Stage on the calling Page or
Process.
10
Preconditions Preconditions should describe the state of an
application prior to an Action being run, e.g.
“the application log in window is open on
screen.”
Recovery Mode The area of a Process or Action Diagram that
sits between the Recover and Resume Stages
System Exception An Exception raised due to the behavior of an
application, such as when a target application
fails to launch or an Element can't be found on
the screen
Timeout Timeout is an essential part of the Wait
Stage. The duration specified in the Timeout
serves as a pause, to allow for specified
conditions to be met within an application.
The Timeout Stage is usually followed by an
Exception Stage, but not always
11
SECTION 2
PROCESS STUDIO
12
2.3 Data Items Basics
13
2.4 Process Validation
• The Validation button opens the Process Validation window, for diagnosing issues. • The
Validation window categorizes issues as Error, Warning or Advice, identifies the type of action
that should be taken to resolve them and whether they are repairable by Blue Prism. • Validation
checks the basic construction of a Process Diagram, but is not capable of analyzing the logic.
This responsibility always sits with the user. • The Go To Stage button will highlight the exact
Stage that is causing the issue. • The Help button is for troubleshooting issues. • It is best
practice to Validate Process Diagrams at regular intervals, including every time they’re saved
and closed
14
SECTION 3
INTRODUCTION TO PROCESS FLOW
3.1 Circular Paths
Blue Prism is designed to automate repetitive work and the inclusion of ‘Circular Paths’ -
looping Process Diagrams, enable some steps to be repeated over and over again.
• Components that are essential for building a Circular Path, which will enable a Process flow
to loop through, then progress to the end once the loop limit is met, are as follows: - Data Item
to set loop limit;
- Data Item to store current loop count;
- Calculation Stage to keep count of loops;
- Decision Stage to control flow.
• Most Stages have only one outbound link, but there is no limit to the number of inbound
links a Stage can have.
15
3.2 Collections and Loops
There are occasions when Process Diagrams benefit from the ability to hold multiple values
together, this can be achieved with a Collection Stage.
• The values stored within a Collection Stage are accessed one row at a time, using a Loop
Stage to move forward through the rows.
• Collections are referenced in Expressions using dot notation - Collection name and Field
name, separated by a full stop and placed between square brackets [Collection.Field].
• Loop Stages have two parts: Loop Start and Loop End.
16
SECTION 4
INTRODUCTION TO INPUTS AND OUTPUTS
4.1 Input Parameters
When a Process steps from a Page down into a Sub-Page, a value can be passed down to be
used by the Sub-Page to perform a task.
• Values that can be transmitted down through Layers of Logic in this way, are known as ‘Input
Parameters’.
• The use of these enable more efficient distribution of tasks across multiple Sub-Pages, making
Processes easier to maintain and keeping everything clear and more intelligible to others.
• Before a Process begins any of its tasks, it is possible to transmit an external value to the
Start Stage on the Main Page, to determine how the Process should flow. This is performed by
a special kind of Input Parameter, known as a ‘StartUp Parameter’
17
• By default, Data Items can only be used by the Stages that are on the same Page as them. This
can be changed by unchecking ‘Hide from other pages in the process’ box in the properties.
• By default, Stage properties only show the Data Items available on the same Page. This can
be changed by checking the ‘Page’ and ‘View All Items’ boxes
18
4.4 Control Room
• In a Production Environment, Processes are run from Control Room.
• From here, Processes do not run on a version of Blue Prism that is local to your Desktop, but
are instead run on external resources – known as ‘Digital Workers’, which can be found in the
Resources area.
• A Process run from Control Room is known as a ‘Session’ and each of these Sessions is
assigned to a Digital Worker.
• If a Process has been configured to require a Startup Parameter, then the user can input the
value after clicking the Process and clicking Start Selected Sessions.
• Process errors and Session Errors can be identified via the ‘Session Log’
19
Blue Prism Tools (Section 4)
20
SECTION 5
BUSINESS OBJECTS
5.1 Business Objects
Introduction to Business Objects
• The purpose of a Business Object is to provide an interface to capture the functionality of an
application.
• Business Objects are never used on their own, but only as part of a Process Solution and can
be thought of as a separate layer of a Process.
• The tasks within a Business Object, are separated out onto different Pages - known as
‘Actions’, which sit in a flat structure that is not built around any specific hierarchy.
• Each Action relates to a certain interaction with an application and a Process will use
whichever of these Actions it requires, in any order, to perform a certain task within the
application
21
22
SECTION 6
OBJECT STUDIO
6.1 Application Modeller
The purpose of a Business Object is to integrate with an application, to make the application
accessible for use by a Blue Prism Process.
• To create the integration, you must connect the Business Object to the application by creating
an ‘Application Model’.
• This can be achieved via the ‘Application Modeller’, within Object Studio. Which can be
used to create a logical representation of an application, by identifying and capturing Elements
from the user interface of the application - this is called ‘Spying’
23
• You can determine whether an Attribute is unique, by clicking on the Highlight button. • The
responsibility always sits with the user, to ensure that the Attributes list uniquely represents the
Element to be defined.
• Some Elements are harder to define than others. And two Elements may be too similar in their
Attribute ’fingerprint’, for Application Modeller to distinguish between them. Here, manual
adjustments must be made.
• Changes in the state of an Element can affect the ability of Application Modeller to identify
it. When creating the fingerprint of an Element, try to eliminate any Attribute matches that
contain values that are likely to change
24
6.4 Wait Stage
• The use of a Wait Stage, enables Business Objects to pause and wait for an application to load
or a condition to be met, before continuing.
• Wait conditions can be applied to Wait Stages, to evaluate whether a condition exists within
a specified period of time.
• The wait condition produces a Flag value, which determines which of the two branches the
logic will flow down.
• It is best practice to include a conditional Wait Stage, at the start of every Object Diagram
that interacts with an application.
• It is also best practice to include a conditional Wait Stage, following every interaction with
an application that causes a change in state.
• It is possible to set multiple wait conditions for a Wait Stage, by adding additional rows into
the Actions Area of the Wait Stage properties window.
• The Wait Stage simultaneously checks each wait condition. It doesn’t require all wait
conditions to be met - once one is met, the path will be determined. If none of the wait
conditions are met, the Action will Timeout.
25
6.5 Throttles and Unconditional Waits
• Wait Stages can be used without any conditions, with the Timeout serving as a pause to delay
the flow through the Diagram - this is known as ‘Throttling’. This allows some extra time to
accommodate the variable performance speed of an application.
• It is best practice to include Throttling at the beginning of every Action Page that interacts
with an application.
• A Global Data Item can be used to store the Timeout duration for all of the Action Pages
within a Business Object, which can make it easier to reconfigure Wait times in response to
application performance.
• It is best practice to create a dedicated Global Throttle Data Item.
26
SECTION 7
EXCEPTION MANAGEMENT OVERVIEW
Exception Management Overview
• A Process or a Business Object can be configured so that it is capable of capturing and
handling errors - which are known as ‘Exceptions’.
• The two main types of Exceptions are ‘System Exceptions’ - application based problems and
‘Business Exceptions’ - rules based problems.
• Digital Workers can pass Exceptions out for manual review and continue processing the
workload, without interruption.
• The logic that is used to cater for Exceptions, is known as ‘Exception Handling’.
• Exception Handling is a critical part of any Blue Prism Solution and should be designed with
a high level of care.
• An escape route for Exception Items must be considered. All items marked as an Exception
must be reviewed by a person, before they can be completed e.g: - An automated email that
sends the details of the Exception Item to a specified inbox, as soon as it has been processed. -
Waiting until the entire Work Queue has been worked, before collating all of the Exception
Items into a specified file, saved to a drive shared by the manual team
27
SECTION 8
EXCEPTION HANDLING
8.1 Recovery Mode
Recovery Mode
• If left unhandled, an Exception will travel up through the Process to the Main Page and cause
the Session to terminate – this is known as ‘Exception Bubbling’.
• The first step to managing Exception Bubbling and enabling the Session to continue in the
event of an Exception, is to build a ‘Recovery Mode’ into the Process Solution.
• The key elements of which, are ‘Recover’ and ‘Resume’, which work together to salvage and
move on from an Exception.
28
This information is then ‘Thrown’ up through the Process and once handled, can be accessed
via the Session Log.
29
8.4 Preserving the Current Exception
Preserving the Current Exception
• Each of the Exception Stages used within the main flow of a Diagram, will contain a unique
pairing of Exception Type and Exception Detail information. To make the source of the error
easy to identify.
• Whereas the Exception Stages used within Recovery Mode, are usually configured for the
sole purpose of catching and ‘Re-Throwing’ the Exceptions that Bubble up to them.
• Exception Stages within Recovery Mode should therefore be configured to preserve the
information that is embedded within the Exceptions that Bubble up to them, to ensure that an
accurate account of the error is retained for the Session Log. This can be achieved by checking
30
the ‘Preserve the type and detail of the current exception’ box, in the Exception Stage
Properties.
• The ‘Preserve’ box should not be checked for Exception Stages that are used within the main
flow of a Diagram. As doing so, will generate an error. This is because Exception Stages outside
of Recovery Mode are always new Exceptions, meaning there would be no information to
preserve.
8.5 Blocks
Blocks
• A greater degree of control can be added to Exception Handling, via the use of ‘Exception
Blocks’. Which are used to isolate the area of a Process or Object Diagram, that a Recover
Stage is responsible for.
• Without a Block, a Recover Stage will attract any Exception that arises from any Stage on
that Page (unless the Stage is in Recovery Mode between Recover Resume).
• A Block is a means of dividing a Page into separate Exception Areas, each with its own
Recover Stage and Exception Handling logic.
• Blocks are beneficial, as they enable the use of multiple Recovery logic on the same Page.
Which can each be configured differently, to deal with Exceptions in different ways.
• When using Blocks to organize Exception Handling logic, it’s important to ensure that only
one Recover Stage is used within a Block, that Blocks do not to overlap and that Blocks are
not Nested inside one another. Block used within an Object Diagram.
31
ACTIVITY
32
33
SECTION 9
WORK QUEUES
9.1 Working Items
Working Items
• Blue Prism comes with some Business Objects, that are pre-installed within the software.
These ‘Internal Business Objects’ are not diagrams and cannot be viewed or changed - only
used in the Process through an Action Stage.
• An example of this is the Internal Business Object - Work Queues Business Object - which
serves to provide a connection between a Process and a Work Queue. Enabling the Process to
store data extracted from external sources within a Work Queue, to be managed and worked
within Blue Prism.
• From within Control Room, Work Queues use different icons to communicate the state of
each Item within the Queue: - An unworked or ‘Pending’ item is marked with three blue dots.
- An Item that is currently being worked by a Process is marked with a padlock. - An Item that
has been worked and completed successfully, is marked with a green check. - An Item that has
encountered an error is an Exception and is marked with a purple flag.
34
9.2 Queue Items
Queue Items
• A Work Queue is populated with Items through a Blue Prism Process, ready to be worked by
the same Process or by other Processes.
• To ensure a Process is able to work all of the Items within a Queue, the Process must include
a Circular Path to return the flow back up to the Get Next Item Action Stage.
• Once all of the Items have been worked and marked as either ‘Completed’ or as ‘Exception’,
and once the Get Next Item Action Stage returns an empty Item ID, then the Process will flow
towards the End Stage. An empty Item ID indicates that there are no more pending Items in the
Work Queue, due to be worked.
35
• From the Workflow Area, it is also possible - To check the status of a Work Queue. - To set
the number of Retry Attempts for Items within the Work Queue. - To find references to the
Process interacting with a particular Work Queue.
• The Encrypted option is available to ensure any sensitive data held within the Work Queue,
is also encrypted within the Blue Prism database.
36
9.5 Exception Item Retries
Exception Item Retries
• While an Item is being worked, Exception Retries can occur within a Process or a Business
Object, using retry logic within Recovery Mode. Retrying simply means recovering an
Exception and then steering the flow back into the main part of the diagram, in the hope that
the problem will be alleviated by another attempt.
• A Blue Prism Work Queue can also be set up to enable Exception Items to be retried, meaning
the whole Item is reworked by the Process as if it were a new pending Item. Attempts only
apply to Exceptions – Items marked as ‘Complete’ cannot be reworked.
• The Max Attempts field in the Work Queue Configuration section of System Manager, is set
to 1 by default but this can be set to a higher value, if necessary. When Max Attempts is greater
than 1, the Work Queue will revive any Exception Items, by creating a clone of the Item and
injecting it into the queue, at the same position as the original.
37
SECTION 10
ADDITIONAL FEATURES
10.1 Release Manager
Release Manager
• An individual Process or Business Object can be exported from Blue Prism as an XML file
and these exported files can be imported back into Blue Prism. This can be useful for backing
up, sharing and moving singular components of a Blue Prism Solution between databases.
• A Blue Prism Solution is a compilation of interconnected Processes, Business Objects and
Work Queues and as a result, should always be migrated as a ‘Package’ or ‘Release’.
• Blue Prism Release Manager enables users to compile all of the components of a Blue Prism
Solution into a Package. Including not only Processes, Business Objects and Work Queues, but
also Schedules, Calendars, Tiles and Dashboards.
• To export a Solution Package a Release must be created by right-clicking Package Overview
and selecting New Package.
• A Release is a snapshot of the state of each of the components within a Package at a particular
moment in time. At various stages during the development cycle of a Blue Prism Solution,
Releases will be exported and imported across databases. A Package containing components of
a Blue Prism Solution.
38
ACTIVITY-1
Compile a Package of components for a Solution before creating a Release. Package a
Blue Prism Solution.
• For this activity, you will be working in the Releases Area of Blue Prism.
• In Release Manager, right-click on Package Overview and select New Package.
• Provide a name - Racer Scores - and description of your Package.
Drag and drop components from the left-hand area of the window, into the right-hand area, to
configure your Package. Processes - Default - Racer Scores Business Objects - Default - Racer
Score Work Queues - Queue2
• After clicking Next and Finish, you should see your new Package in the Package Overview
list. On selecting this Package, you will see the details you have recently configured including
the date and time that it was created, who created it and all of the components of the Package.
You can choose to edit any of these details by selecting Modify.
• When you are happy with the configuration and the details of your Package, select New
Release.
• In the Create Release window you can give your Release a Name - Racer Scores - Release
Notes - Development complete. Process now ready for UAT. - and choose the save location -
C:\Users\NameHere\ Desktop\Racer Scores.bprelease . The file extension will be .bprelease
• Releases will appear as children of the Package they were created from, in the Package
Overview list. You cannot modify Releases once they have been created.
39
ACTIVITY -2
Import and export a Process and a Release.
• Select File from the Main Menu and then Export.
• You have the option to choose either Process/Business Object or New Release.
• Experiment with exporting an individual Process and the Release you previously configured.
• Then select File and Import to practice importing Processes and Releases into Blue Prism.
• Remember, to keep the names of all of your components and Releases as unique and
descriptive as possible.
40
41
SECTION 11
CONSOLIDATION EXERCISE
Exercise 1:
Reading from Excel There is an Excel Business Object available that you can use to read a
CSV file and there is a ready-made file you can use too. Blue Prism ships a number of standard
Business Objects that can be imported into your Object library. These Objects cover a range of
interfaces and utilities and can be found in C:\Program Files\Blue Prism Limited\Blue Prism
Automate\VBO. To install the Excel interface Object, click File > Import and then select the
BPA Object - MS Excel.xml file from the above VBO directory. If you have installed Blue
Prism version 6.7 or above, you need to select Import Process/Object from the File menu.
• The Business Object is named MS Excel VBO.
• The file is named Orders.csv and is in C:\BluePrism\Training\Applications\ Windows.
• The sequence of Actions is as follows:
• Create Instance to start a session of Excel.
• Show to make it visible (it’s invisible by default).
• Open Workbook to open the file.
• Get Worksheet as Collection (Fast) to read the data.
• Exit to close Excel.
• Begin a new Process named Create Orders. It should look something like this:
42
EXERCISE 2
Reading from a CSV (comma-separated values) File
There is a Business Object available that you can use to read a CSV file, and there is a ready-
made file you can use too. Blue Prism ships a number of standard Business Objects that can be
imported into your Object library. These Objects cover a range of interfaces and utilities and
can be found in C:\Program Files\Blue Prism Limited\Blue Prism Automate\VBO. To install
the Business Object to read from a CSV file, click File > Import and then select the BPA Object
– Utility – File Management.xml file from the above VBO directory.
• The Business Object is named Utility – File Management.
• The file is named Orders.csv and is in C:\BluePrism\Training\Applications\ Windows.
• You will need to use the following actions from the Utility – File Management Business
Object to read the Orders.csv file: o File Exists o Get CSV Text As Collection
• Begin a new Process named Create Orders. • Create a Page in your new Process to read the
data from the Orders.csv file.
• It should look something like this:
43
Exercise 3
Loading the Work Queue:
Continue working on your Create Orders Process so that it will load the CSV data into a Work
Queue. • Make a new Work Queue.
• Use the Internal – Work Queues Business Object to put the CSV data into the queue.
• Test your Process. Check the data is being written to the Work Queue - this can be viewed in
Control Room.
Exercise 4
Working the Items Continue working on your Create Orders Process so that it will work
through the queue. For now, you are simply pretending to work by simulating Work Queue
functionality.
• Have your Process get the next Pending Item from the queue (you’ll need to create some Data
Items for the Outputs).
• Check to see if an Item has been returned.
• Mark a returned Item in the queue as ‘Complete’.
• Loop back to get the next Pending Item and repeat until no Item is returned and the Process
can progress to the end.
Exercise 5
Launching Centrix Data Solutions
Continue working on your Create Orders Process so that it will load the CSV data into a Work
Queue. • Make a new Work Queue.
• Use the Internal – Work Queues Business Object to put the CSV data into the queue.
• Test your Process. Check the data is being written to the Work Queue - this can be viewed in
Control Room. Continue working on your Create Orders Process so that it will launch and close
the Centrix Data Solutions application.
Exercise 6
Going Further into Centrix Data Solutions
Now, observe how a user would manually submit an order, before you automate the steps:
• Log in to Centrix Data Solutions using your Centrix Data Solutions – Basic Actions Business
Object. • Familiarize yourself with the application by manually inputting a few orders.
Exercise 7
Action - Input Order
• Add a new Page named Input Order.
44
• Set the Input Parameters.
• Your pre-condition is that you are on the New Order Page. When the Action starts, wait for
an Element that will be available on the New Order Page. Set a Timeout period and Throw a
System Exception if the Timeout expires.
45
CONCLUSION
In conclusion, the RPA project undertaken has yielded significant benefits and insights for our
organization. Through the implementation of robotic process automation, we have achieved
the following key outcomes:
1. Increased Efficiency: RPA has streamlined and automated numerous manual and repetitive
tasks, resulting in a substantial increase in operational efficiency. Processes that previously
took hours or days to complete are now executed within minutes.
2. Error Reduction: By reducing human intervention in routine tasks, we have significantly
minimized the risk of human errors, leading to improved data accuracy and compliance.
3. Cost Savings: The automation of repetitive tasks has led to substantial cost savings. We have
seen a reduction in labor costs, lower error-related expenses, and optimized resource allocation.
4. Enhanced Productivity: Employees are now able to focus on higher-value tasks that require
creativity, problem-solving, and decision-making, which has improved overall productivity and
job satisfaction.
5.Scalability: RPA solutions are easily scalable, allowing us to adapt to changing business
needs and handle increased workloads without a proportional increase in workforce.
6.Improved Customer Satisfaction: Faster response times and increased accuracy in
customer interactions have resulted in improved customer satisfaction levels.
7. Data Insights: RPA has generated valuable data insights through process monitoring and
analytics, helping us make data-driven decisions for process optimization and strategic
planning.
8.Compliance and Auditability: RPA ensures that processes are executed consistently and in
compliance with regulations. It provides a detailed audit trail, simplifying compliance audits.
46