Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
20.06.2024
Introduction to the
UiPath Studio Fundamentals
Africa Series Day 2 — Kickstart for Automation Student Developers
2
Senior RPA Developer @SterlingBank
UiPath MVP 2024
linkedin.com/in/emmanuel-kolawole/
Senior Consultant @dipoleDIAMOND
UiPath MVP 2024
linkedin.com/in/afeararomi/
Global Manager,
Marketing Community@UiPath
linkedin.com/in/crisvidu/
Emmanuel Kolawole Afe Araromi Cristina Vidu
Meet Today’s Hosts
3
About Today’s Session
• The meetup will not last for more than 1.5 hours
• You are encouraged to network and share your LinkedIn in the chat box
• We apologize for keeping you on mute till Q&A time
• Please use the chat to place questions too between now and Q&A
4
Senior RPA Developer @AltexSoft
2022 UiPath Student Champion
linkedin.com/in/folorunso-adesanya/
Folorunso Adesanya
Meet Today’s Speaker
5
1. Welcome
2. Variables
3. Data Types
4. UiPath Workflow Layouts
5. Arguments
6. Control Flows
7. Conditional Statements
8. QnA
9. Close out
Today’s Agenda
6
Variables
7
Variables are containers that can hold multiple data entries (values) of
the same data type.
e.g. EmailAddress can be a variable that holds the value
"rpadeveloper@uipath.com"
What are Variables?
Why are Variables important?
● Variables help us pass data from one activity to another.
● Advancing with any automation process would be hardly possible without using variables.
8
Three ways to create Variables in Studio
From the Variables panel
Open the Variables panel,
select the 'Create new
Variable' option, and fill in
the name. Whenever
needed, provide its name in
the Designer panel or in the
desired Properties field.
From the Designer panel
Variables can be created
from expressions directly in
an activity input field or the
Expression Editor. Within the
input field, press Ctrl+K so
the Set Var field is displayed;
fill in the name and press
Enter. Then check its type
and scope in the Variables
panel.
From the Properties panel
In the Properties panel of the
activity, select a field that can
be edited press Ctrl+K. The
Set Var field is displayed. Fill
in the name and press Enter.
Check its type and scope in
the Variables panel.
9
Variables are configured through their properties. You can set them in the Variables panel.
The main properties in UiPath are:
●Name – the variable's name is its unique ID and it defines the way it is displayed and used.
Pascal Case is recommended.
●Type – it defines what kind of data can be stored in the variable. In UiPath, the type is
declared when the variable is created.
●Default Value – in general, variables have initial values that change throughout the
process.
●Scope – the part of the workflow in which the variable can be used. Some variables can be
global (used throughout the workflow), others local (used inside an activity).
How are Variables Configured?
10
The type of value that a variable holds is determined by the datatype of the
variable.
Based on datatype, some variables can hold a single value (e.g. string, integer,
etc.) while some other can hold multiple values (e.g. array, list, datatable, etc.)
The value of a variable can change through external input, data manipulation or
passing from one activity to another.
Common Facts about Variables in UiPath Studio
11
Data Types
12
With some exceptions, the data types in UiPath are borrowed from VB.Net
e.g. String, Int32, Boolean, Arrays, Lists, Datatables, etc.
UiPath has a proprietary variable type called GenericValue that can store any
kind of data, including text, numbers, dates, and arrays.
Data Types
13
● String – System.String: used to store text
NUMERIC: there are different subtypes of numerical variables.
● Int32 – System.Int32 (signed integers) e.g. 10, 299, -100
● Long – System.Int64 (long integers) e.g. 5435435343O, -11332424D
● Double – System.Double (allows decimals, 15-16 digits precision) e.g. 19.1234567891011
● Boolean – System.Boolean: used to store one of two values i.e. True or False
Common Data Types
14
● DataTable – represent a type of variable that can store big pieces of information, and act
as a database or a simple spreadsheet with rows and columns.
DATE AND TIME:
● DateTime – System.DateTime: used to store specific time coordinates (mm/dd/yyyy
hh:mm:ss)
Common Data Types
15
● The GenericValue (UiPath.Core.GenericValue) data type is particular to UiPath and can
store any kind of data, including text, numbers, dates, and arrays.
● UiPath Studio has an automatic conversion mechanism of GenericValue variables and
arguments, which you can guide towards the desired outcome by carefully defining their
expressions.
● Please note that the first element in your expression is used as a guideline for what
operation Studio performs e.g.
<Int32> 123 + <String> 123 = <GenericValue> 246
< String> 123 + < Int32> 123 = <GenericValue> 123123
Generic Data Type
16
What are some business scenarios in which I will use GenericValue?
● Data is extracted from a UI field and forwarded to another workflow without processing.
● Two versions of the same Excel file are being compared column by column.
● The columns are different in terms of data type, the only relevant thing is which entries have
changed.
Generic Data Type Uses
17
Workflows
18
A workflow represents a small piece of automation that you can take and re-
use in your projects.
What is a Workflow?
It is basically your canvas, the place where you design and work with all the
UiPath Studio activities and it defines the flow of your automation.
Hence the name, workflow.
19
● The fastest, most reliable, and useful way of automating a process is to break it down
into smaller bits.
● This allows for independent testing of components, enables team collaboration, and
component reuse.
● Hence, most of the automation projects require the use of multiple workflows that
come together to provide a solid business automation solution.
Why are Workflows important?
20
UiPath Studio provides you with predefined workflow layouts to suit all the needs
of a fast and reliable automation process. The workflow layouts are:
● Sequences – In sequences, the steps of a process follow one after another in
a clear pattern.
Activities in sequences are easier to read and maintain, so they are highly
recommended for simple, linear workflows.
● Flowcharts – In flowcharts, individual steps are a bit harder to read and edit,
but the overall flow is much clearer. For situations that need complex
decisions and branching, it is best to use Flowcharts.
● State Machines
● Global Exception Handler
UiPath Workflow Layouts
21
Arguments
22
In real automation scenarios, business automation projects consist of multiple
workflows, and we need a different kind of vehicle to pass data between
workflows, and this is called an argument.
What is an Argument?
23
Arguments are very similar to variables:
● They store data dynamically
● They have the same data types
● They support the same methods and properties
● The difference is that they pass data between workflows, and they have an
additional property for this – the direction.
Arguments have specific directions: In, Out, and In/Out. These tell the Robot where the
information stored in them is supposed to go.
What is an Argument?
24
Using an Argument
Workflow 1 Workflow 2
Invoke
Workflow 2
In: Take data to workflow 2
Out: Take data from workflow 2
In/Out: Take data from/to workflow 2
25
•From Expressions – directly in an activity input field or the Expression Editor. Select a
part of the expression and press Ctrl+M (for In arguments) or Ctrl+Shift+M (for Out
arguments).
•From the Properties panel – in the Properties panel of any activity, right-click a field
that can be edited, and select Create In Argument or Create Out Argument from the
context menu. Alternatively, press Ctrl+M (in) or Ctrl+Shift+M (out).
•From the Arguments panel – Navigate to the Arguments panel. Select the Create
Argument line, and fill in the name, direction and type. A new argument is created.
Note: Argument names should be in PascalCase with a prefix stating the argument direction
How to Create Arguments
26
Fun Time,
Quiz Time!
www.menti.com
Code: 11339194
https://www.menti.com/alw77eprbfd7
27
Control Flow
28
Control Flow is the order in which
activities are executed or evaluated in a
software project.
Control flow statements—these are
activities and methods that determine the
decisions made during the execution of a
workflow.
What is an Control Flow?
29
● Control flow takes care of the order in which the actions are performed in
automation.
● Activities like If/Else If, For Each, enable us to define rules and automate conditional
statements within the project.
● Loops enable us to run a part of the automation a specific number of times until a
condition is met, or indefinitely.
What is the importance of control flow?
30
● The conditional, also known as decision-making activities such as If, Else If, and
Switch.
● Loops such as While, Do While, and For Each.
● Parallel Activity that executes child activities asynchronously, in parallel.
Three types of Control Statements
31
Contains a statement with a condition, and two sets of instructions (Then & Else) as outcomes
Then: the set of actions to be executed when the condition is True
Else: the set of actions to be executed when the condition is False
Conditional Control Statements - If
32
It comes with the ability to add multiple
conditions to the Else branch.
● If the first condition is met, then you perform
the action under it.
● If not, you can add another condition using the
second Else If and if the condition is True, then
perform the action under it. If not, add another
condition using Else If.
● Else, if none of the conditions are met, then you
perform the last action under Else.
Conditional Control Statements - Else If
Exercises
● If Condition
34
Executes a set of activities out of multiple, based on the
value of a specific expression. Useful when we need at
least three potential sources of action.
★ Switch evaluates once; Else If evaluates each time.
Conditional Control Statements - Switch
Business Cases to use Switch Statement
● An invoice that has three potential statuses
(not started, pending, approved) and three
sets of actions for each one.
● A process of automatically ordering raw
materials to four suppliers based on
certain conditions.
35
While
It executes a specific sequence while a condition is met.
The condition is evaluated before each execution of the
statements.
It is possible for a While loop to have zero executions!
Conditional Control Statements: Loops - While
36
Loops are repetitions of a set of operations based on a
given condition.
Do While
It executes a specific sequence while a condition is met.
The condition is evaluated after each execution of the
statements
This is a quite different scenario than the While loop.
In the body of the loop, a robot could perform a refresh
command on a website and then check if a relevant
element was loaded. It will continue the refresh - check
cycle until the element is loaded. .
Conditional Control Statements: Loops - Do While
37
For Each
It performs an activity or a series of activities
on each element of an input collection.
This is very useful in data processing.
Consider an Array of integers. For Each would
enable the robot to check whether each
numeric item fulfills a certain condition.
Conditional Control Statements: Loops - For Each
38
Loops are fun, but you should know how to stop the ride at some point. There are multiple ways
to exit a loop:
● The While and Do While loops will exit when upon checking, the condition is no longer
true.
● The For Each loop will exit when it has finished processing every item in the input
collection.
● The Break activity enables you to exit the current loop activity (e.g. For Each, While, or Do
While) at a chosen point and continues the workflow with the activity that follows it.
● The Continue activity enables you to skip the remaining steps in the current iteration inside
a loop activity, such as For Each, While, or Do While loop.
How to exit a loop?
Exercises
● Do While
● For Each
40
Fun Time,
Quiz Time!
www.menti.com
Code: 11339194
https://www.menti.com/alw77eprbfd7
41
Q n A
Thank You! Any Questions?
42
What’s Next?
Global Student Developer Chapter
https://community.uipath.com/global-student-developer/
Log in to UiPath Academy academy.uipath.com
● Go to the Learning Plans page
● Enrol for the Automation Developer Associate Training course
https://bit.ly/4c8mHem
● Take the “Variables, Constants and Arguments in Studio” lesson
● Take the “Control Flow in Studio” lesson
Session 3: Introduction to UI Automation
● Series Registration Page https://bit.ly/3Vz0G1d
43
Goodbye! But Stay Close…
● community@uipath.com
● www.community.uipath.com
Happy Automation!

More Related Content

Similar to Day 2 - Intro to UiPath Studio Fundamentals

4_5821003798000177081.pdf
4_5821003798000177081.pdf4_5821003798000177081.pdf
4_5821003798000177081.pdf
ozgenn4242
 
Doing Enterprise Business with Processes & Rules
Doing Enterprise Business with Processes & RulesDoing Enterprise Business with Processes & Rules
Doing Enterprise Business with Processes & Rules
Srinath Perera
 
algo 1.ppt
algo 1.pptalgo 1.ppt
algo 1.ppt
example43
 
pccf unit 1 _VP.pptx
pccf unit 1 _VP.pptxpccf unit 1 _VP.pptx
pccf unit 1 _VP.pptx
vishnupriyapm4
 
Ui5con blr document explorer Merck
Ui5con blr document explorer MerckUi5con blr document explorer Merck
Ui5con blr document explorer Merck
Merck
 
Go Observability (in practice)
Go Observability (in practice)Go Observability (in practice)
Go Observability (in practice)
Eran Levy
 
Workflows via Event driven architecture
Workflows via Event driven architectureWorkflows via Event driven architecture
Workflows via Event driven architecture
Milan Patel
 
RxSwift
RxSwiftRxSwift
RxSwift
Sally Ahmed
 
25155
2515525155
25155
V Tripathi
 
Analysis Mechanical system using Artificial intelligence
Analysis Mechanical system using Artificial intelligenceAnalysis Mechanical system using Artificial intelligence
Analysis Mechanical system using Artificial intelligence
anishahmadgrd222
 
UiPath Development Best Practices.pptx
UiPath Development Best Practices.pptxUiPath Development Best Practices.pptx
UiPath Development Best Practices.pptx
ApurbaSamanta9
 
PHP Detroit -- MySQL 8 A New Beginning (updated presentation)
PHP Detroit -- MySQL 8 A New Beginning (updated presentation)PHP Detroit -- MySQL 8 A New Beginning (updated presentation)
PHP Detroit -- MySQL 8 A New Beginning (updated presentation)
Dave Stokes
 
Getting Started with Calc Manager for HFM
Getting Started with Calc Manager for HFMGetting Started with Calc Manager for HFM
Getting Started with Calc Manager for HFM
Alithya
 
Operations intro (1)
Operations intro (1)Operations intro (1)
Operations intro (1)
RizaetRahim
 
DMM9 - Data Migration Testing
DMM9 - Data Migration TestingDMM9 - Data Migration Testing
DMM9 - Data Migration Testing
Nick van Beest
 
PRELIM-Lesson-2.pdf
PRELIM-Lesson-2.pdfPRELIM-Lesson-2.pdf
PRELIM-Lesson-2.pdf
jaymaraltamera
 
System Modelling
System ModellingSystem Modelling
System Modelling
IanBriton
 
Software Engineering - Ch8
Software Engineering - Ch8Software Engineering - Ch8
Software Engineering - Ch8
Siddharth Ayer
 
Book store automation system
Book store automation systemBook store automation system
Book store automation system
Upendra Sengar
 
Enovia Collaboration Platform and Matrix Query Language
Enovia Collaboration Platform and Matrix Query LanguageEnovia Collaboration Platform and Matrix Query Language
Enovia Collaboration Platform and Matrix Query Language
Ashikur Rahman
 

Similar to Day 2 - Intro to UiPath Studio Fundamentals (20)

4_5821003798000177081.pdf
4_5821003798000177081.pdf4_5821003798000177081.pdf
4_5821003798000177081.pdf
 
Doing Enterprise Business with Processes & Rules
Doing Enterprise Business with Processes & RulesDoing Enterprise Business with Processes & Rules
Doing Enterprise Business with Processes & Rules
 
algo 1.ppt
algo 1.pptalgo 1.ppt
algo 1.ppt
 
pccf unit 1 _VP.pptx
pccf unit 1 _VP.pptxpccf unit 1 _VP.pptx
pccf unit 1 _VP.pptx
 
Ui5con blr document explorer Merck
Ui5con blr document explorer MerckUi5con blr document explorer Merck
Ui5con blr document explorer Merck
 
Go Observability (in practice)
Go Observability (in practice)Go Observability (in practice)
Go Observability (in practice)
 
Workflows via Event driven architecture
Workflows via Event driven architectureWorkflows via Event driven architecture
Workflows via Event driven architecture
 
RxSwift
RxSwiftRxSwift
RxSwift
 
25155
2515525155
25155
 
Analysis Mechanical system using Artificial intelligence
Analysis Mechanical system using Artificial intelligenceAnalysis Mechanical system using Artificial intelligence
Analysis Mechanical system using Artificial intelligence
 
UiPath Development Best Practices.pptx
UiPath Development Best Practices.pptxUiPath Development Best Practices.pptx
UiPath Development Best Practices.pptx
 
PHP Detroit -- MySQL 8 A New Beginning (updated presentation)
PHP Detroit -- MySQL 8 A New Beginning (updated presentation)PHP Detroit -- MySQL 8 A New Beginning (updated presentation)
PHP Detroit -- MySQL 8 A New Beginning (updated presentation)
 
Getting Started with Calc Manager for HFM
Getting Started with Calc Manager for HFMGetting Started with Calc Manager for HFM
Getting Started with Calc Manager for HFM
 
Operations intro (1)
Operations intro (1)Operations intro (1)
Operations intro (1)
 
DMM9 - Data Migration Testing
DMM9 - Data Migration TestingDMM9 - Data Migration Testing
DMM9 - Data Migration Testing
 
PRELIM-Lesson-2.pdf
PRELIM-Lesson-2.pdfPRELIM-Lesson-2.pdf
PRELIM-Lesson-2.pdf
 
System Modelling
System ModellingSystem Modelling
System Modelling
 
Software Engineering - Ch8
Software Engineering - Ch8Software Engineering - Ch8
Software Engineering - Ch8
 
Book store automation system
Book store automation systemBook store automation system
Book store automation system
 
Enovia Collaboration Platform and Matrix Query Language
Enovia Collaboration Platform and Matrix Query LanguageEnovia Collaboration Platform and Matrix Query Language
Enovia Collaboration Platform and Matrix Query Language
 

More from UiPathCommunity

Dev Dives: Mining your data with AI-powered Continuous Discovery
Dev Dives: Mining your data with AI-powered Continuous DiscoveryDev Dives: Mining your data with AI-powered Continuous Discovery
Dev Dives: Mining your data with AI-powered Continuous Discovery
UiPathCommunity
 
Day 5 - Making your Automation Journey Continuous and Beneficial.pdf
Day 5 - Making your Automation Journey Continuous and Beneficial.pdfDay 5 - Making your Automation Journey Continuous and Beneficial.pdf
Day 5 - Making your Automation Journey Continuous and Beneficial.pdf
UiPathCommunity
 
Day 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data ManipulationDay 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data Manipulation
UiPathCommunity
 
Automation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI AutomationAutomation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI Automation
UiPathCommunity
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
UiPathCommunity
 
RPA - Orchestrator - Modern folder & Move to Cloud
RPA - Orchestrator - Modern folder & Move to CloudRPA - Orchestrator - Modern folder & Move to Cloud
RPA - Orchestrator - Modern folder & Move to Cloud
UiPathCommunity
 
UiPath Community Day Dubai: AI at Work..
UiPath Community Day Dubai: AI at Work..UiPath Community Day Dubai: AI at Work..
UiPath Community Day Dubai: AI at Work..
UiPathCommunity
 
Automatisierung in Aktion: Einführung in UiPath RPA für Kommunen
Automatisierung in Aktion: Einführung in UiPath RPA für KommunenAutomatisierung in Aktion: Einführung in UiPath RPA für Kommunen
Automatisierung in Aktion: Einführung in UiPath RPA für Kommunen
UiPathCommunity
 
UiPath Community - Copenhagen Community Revival Event
UiPath Community - Copenhagen Community Revival EventUiPath Community - Copenhagen Community Revival Event
UiPath Community - Copenhagen Community Revival Event
UiPathCommunity
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
UiPathCommunity
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
UiPathCommunity
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
UiPathCommunity
 
WomenInAutomation2024: AI and Automation for eveyone
WomenInAutomation2024: AI and Automation for eveyoneWomenInAutomation2024: AI and Automation for eveyone
WomenInAutomation2024: AI and Automation for eveyone
UiPathCommunity
 
Dev Dives: Master advanced authentication and performance in Productivity Act...
Dev Dives: Master advanced authentication and performance in Productivity Act...Dev Dives: Master advanced authentication and performance in Productivity Act...
Dev Dives: Master advanced authentication and performance in Productivity Act...
UiPathCommunity
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
UiPathCommunity
 
Test Automation with Gen AI_Final_Presentation
Test Automation with Gen AI_Final_PresentationTest Automation with Gen AI_Final_Presentation
Test Automation with Gen AI_Final_Presentation
UiPathCommunity
 
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
UiPathCommunity
 
Unleashing the force of AI-powered intelligent document processing
Unleashing the force of AI-powered intelligent document processingUnleashing the force of AI-powered intelligent document processing
Unleashing the force of AI-powered intelligent document processing
UiPathCommunity
 

More from UiPathCommunity (20)

Dev Dives: Mining your data with AI-powered Continuous Discovery
Dev Dives: Mining your data with AI-powered Continuous DiscoveryDev Dives: Mining your data with AI-powered Continuous Discovery
Dev Dives: Mining your data with AI-powered Continuous Discovery
 
Day 5 - Making your Automation Journey Continuous and Beneficial.pdf
Day 5 - Making your Automation Journey Continuous and Beneficial.pdfDay 5 - Making your Automation Journey Continuous and Beneficial.pdf
Day 5 - Making your Automation Journey Continuous and Beneficial.pdf
 
Day 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data ManipulationDay 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data Manipulation
 
Automation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI AutomationAutomation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI Automation
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
 
RPA - Orchestrator - Modern folder & Move to Cloud
RPA - Orchestrator - Modern folder & Move to CloudRPA - Orchestrator - Modern folder & Move to Cloud
RPA - Orchestrator - Modern folder & Move to Cloud
 
UiPath Community Day Dubai: AI at Work..
UiPath Community Day Dubai: AI at Work..UiPath Community Day Dubai: AI at Work..
UiPath Community Day Dubai: AI at Work..
 
Automatisierung in Aktion: Einführung in UiPath RPA für Kommunen
Automatisierung in Aktion: Einführung in UiPath RPA für KommunenAutomatisierung in Aktion: Einführung in UiPath RPA für Kommunen
Automatisierung in Aktion: Einführung in UiPath RPA für Kommunen
 
UiPath Community - Copenhagen Community Revival Event
UiPath Community - Copenhagen Community Revival EventUiPath Community - Copenhagen Community Revival Event
UiPath Community - Copenhagen Community Revival Event
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
WomenInAutomation2024: AI and Automation for eveyone
WomenInAutomation2024: AI and Automation for eveyoneWomenInAutomation2024: AI and Automation for eveyone
WomenInAutomation2024: AI and Automation for eveyone
 
Dev Dives: Master advanced authentication and performance in Productivity Act...
Dev Dives: Master advanced authentication and performance in Productivity Act...Dev Dives: Master advanced authentication and performance in Productivity Act...
Dev Dives: Master advanced authentication and performance in Productivity Act...
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
Test Automation with Gen AI_Final_Presentation
Test Automation with Gen AI_Final_PresentationTest Automation with Gen AI_Final_Presentation
Test Automation with Gen AI_Final_Presentation
 
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
 
Unleashing the force of AI-powered intelligent document processing
Unleashing the force of AI-powered intelligent document processingUnleashing the force of AI-powered intelligent document processing
Unleashing the force of AI-powered intelligent document processing
 

Recently uploaded

GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
GlobalLogic Ukraine
 
Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!
Ortus Solutions, Corp
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
Mydbops
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 
"What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w..."What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w...
Fwdays
 
Guidelines for Effective Data Visualization
Guidelines for Effective Data VisualizationGuidelines for Effective Data Visualization
Guidelines for Effective Data Visualization
UmmeSalmaM1
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Fwdays
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - MydbopsMySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
Mydbops
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
christinelarrosa
 
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
AlexanderRichford
 
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin..."$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
Fwdays
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
Ivo Velitchkov
 
An All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS MarketAn All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS Market
ScyllaDB
 
Christine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptxChristine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptx
christinelarrosa
 
Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!
Tobias Schneck
 
From NCSA to the National Research Platform
From NCSA to the National Research PlatformFrom NCSA to the National Research Platform
From NCSA to the National Research Platform
Larry Smarr
 
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdfLee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
leebarnesutopia
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving
 

Recently uploaded (20)

GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
 
Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
"What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w..."What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w...
 
Guidelines for Effective Data Visualization
Guidelines for Effective Data VisualizationGuidelines for Effective Data Visualization
Guidelines for Effective Data Visualization
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - MydbopsMySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
 
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
 
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin..."$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
 
An All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS MarketAn All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS Market
 
Christine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptxChristine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptx
 
Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!
 
From NCSA to the National Research Platform
From NCSA to the National Research PlatformFrom NCSA to the National Research Platform
From NCSA to the National Research Platform
 
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdfLee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
 

Day 2 - Intro to UiPath Studio Fundamentals

  • 1. 20.06.2024 Introduction to the UiPath Studio Fundamentals Africa Series Day 2 — Kickstart for Automation Student Developers
  • 2. 2 Senior RPA Developer @SterlingBank UiPath MVP 2024 linkedin.com/in/emmanuel-kolawole/ Senior Consultant @dipoleDIAMOND UiPath MVP 2024 linkedin.com/in/afeararomi/ Global Manager, Marketing Community@UiPath linkedin.com/in/crisvidu/ Emmanuel Kolawole Afe Araromi Cristina Vidu Meet Today’s Hosts
  • 3. 3 About Today’s Session • The meetup will not last for more than 1.5 hours • You are encouraged to network and share your LinkedIn in the chat box • We apologize for keeping you on mute till Q&A time • Please use the chat to place questions too between now and Q&A
  • 4. 4 Senior RPA Developer @AltexSoft 2022 UiPath Student Champion linkedin.com/in/folorunso-adesanya/ Folorunso Adesanya Meet Today’s Speaker
  • 5. 5 1. Welcome 2. Variables 3. Data Types 4. UiPath Workflow Layouts 5. Arguments 6. Control Flows 7. Conditional Statements 8. QnA 9. Close out Today’s Agenda
  • 7. 7 Variables are containers that can hold multiple data entries (values) of the same data type. e.g. EmailAddress can be a variable that holds the value "rpadeveloper@uipath.com" What are Variables? Why are Variables important? ● Variables help us pass data from one activity to another. ● Advancing with any automation process would be hardly possible without using variables.
  • 8. 8 Three ways to create Variables in Studio From the Variables panel Open the Variables panel, select the 'Create new Variable' option, and fill in the name. Whenever needed, provide its name in the Designer panel or in the desired Properties field. From the Designer panel Variables can be created from expressions directly in an activity input field or the Expression Editor. Within the input field, press Ctrl+K so the Set Var field is displayed; fill in the name and press Enter. Then check its type and scope in the Variables panel. From the Properties panel In the Properties panel of the activity, select a field that can be edited press Ctrl+K. The Set Var field is displayed. Fill in the name and press Enter. Check its type and scope in the Variables panel.
  • 9. 9 Variables are configured through their properties. You can set them in the Variables panel. The main properties in UiPath are: ●Name – the variable's name is its unique ID and it defines the way it is displayed and used. Pascal Case is recommended. ●Type – it defines what kind of data can be stored in the variable. In UiPath, the type is declared when the variable is created. ●Default Value – in general, variables have initial values that change throughout the process. ●Scope – the part of the workflow in which the variable can be used. Some variables can be global (used throughout the workflow), others local (used inside an activity). How are Variables Configured?
  • 10. 10 The type of value that a variable holds is determined by the datatype of the variable. Based on datatype, some variables can hold a single value (e.g. string, integer, etc.) while some other can hold multiple values (e.g. array, list, datatable, etc.) The value of a variable can change through external input, data manipulation or passing from one activity to another. Common Facts about Variables in UiPath Studio
  • 12. 12 With some exceptions, the data types in UiPath are borrowed from VB.Net e.g. String, Int32, Boolean, Arrays, Lists, Datatables, etc. UiPath has a proprietary variable type called GenericValue that can store any kind of data, including text, numbers, dates, and arrays. Data Types
  • 13. 13 ● String – System.String: used to store text NUMERIC: there are different subtypes of numerical variables. ● Int32 – System.Int32 (signed integers) e.g. 10, 299, -100 ● Long – System.Int64 (long integers) e.g. 5435435343O, -11332424D ● Double – System.Double (allows decimals, 15-16 digits precision) e.g. 19.1234567891011 ● Boolean – System.Boolean: used to store one of two values i.e. True or False Common Data Types
  • 14. 14 ● DataTable – represent a type of variable that can store big pieces of information, and act as a database or a simple spreadsheet with rows and columns. DATE AND TIME: ● DateTime – System.DateTime: used to store specific time coordinates (mm/dd/yyyy hh:mm:ss) Common Data Types
  • 15. 15 ● The GenericValue (UiPath.Core.GenericValue) data type is particular to UiPath and can store any kind of data, including text, numbers, dates, and arrays. ● UiPath Studio has an automatic conversion mechanism of GenericValue variables and arguments, which you can guide towards the desired outcome by carefully defining their expressions. ● Please note that the first element in your expression is used as a guideline for what operation Studio performs e.g. <Int32> 123 + <String> 123 = <GenericValue> 246 < String> 123 + < Int32> 123 = <GenericValue> 123123 Generic Data Type
  • 16. 16 What are some business scenarios in which I will use GenericValue? ● Data is extracted from a UI field and forwarded to another workflow without processing. ● Two versions of the same Excel file are being compared column by column. ● The columns are different in terms of data type, the only relevant thing is which entries have changed. Generic Data Type Uses
  • 18. 18 A workflow represents a small piece of automation that you can take and re- use in your projects. What is a Workflow? It is basically your canvas, the place where you design and work with all the UiPath Studio activities and it defines the flow of your automation. Hence the name, workflow.
  • 19. 19 ● The fastest, most reliable, and useful way of automating a process is to break it down into smaller bits. ● This allows for independent testing of components, enables team collaboration, and component reuse. ● Hence, most of the automation projects require the use of multiple workflows that come together to provide a solid business automation solution. Why are Workflows important?
  • 20. 20 UiPath Studio provides you with predefined workflow layouts to suit all the needs of a fast and reliable automation process. The workflow layouts are: ● Sequences – In sequences, the steps of a process follow one after another in a clear pattern. Activities in sequences are easier to read and maintain, so they are highly recommended for simple, linear workflows. ● Flowcharts – In flowcharts, individual steps are a bit harder to read and edit, but the overall flow is much clearer. For situations that need complex decisions and branching, it is best to use Flowcharts. ● State Machines ● Global Exception Handler UiPath Workflow Layouts
  • 22. 22 In real automation scenarios, business automation projects consist of multiple workflows, and we need a different kind of vehicle to pass data between workflows, and this is called an argument. What is an Argument?
  • 23. 23 Arguments are very similar to variables: ● They store data dynamically ● They have the same data types ● They support the same methods and properties ● The difference is that they pass data between workflows, and they have an additional property for this – the direction. Arguments have specific directions: In, Out, and In/Out. These tell the Robot where the information stored in them is supposed to go. What is an Argument?
  • 24. 24 Using an Argument Workflow 1 Workflow 2 Invoke Workflow 2 In: Take data to workflow 2 Out: Take data from workflow 2 In/Out: Take data from/to workflow 2
  • 25. 25 •From Expressions – directly in an activity input field or the Expression Editor. Select a part of the expression and press Ctrl+M (for In arguments) or Ctrl+Shift+M (for Out arguments). •From the Properties panel – in the Properties panel of any activity, right-click a field that can be edited, and select Create In Argument or Create Out Argument from the context menu. Alternatively, press Ctrl+M (in) or Ctrl+Shift+M (out). •From the Arguments panel – Navigate to the Arguments panel. Select the Create Argument line, and fill in the name, direction and type. A new argument is created. Note: Argument names should be in PascalCase with a prefix stating the argument direction How to Create Arguments
  • 26. 26 Fun Time, Quiz Time! www.menti.com Code: 11339194 https://www.menti.com/alw77eprbfd7
  • 28. 28 Control Flow is the order in which activities are executed or evaluated in a software project. Control flow statements—these are activities and methods that determine the decisions made during the execution of a workflow. What is an Control Flow?
  • 29. 29 ● Control flow takes care of the order in which the actions are performed in automation. ● Activities like If/Else If, For Each, enable us to define rules and automate conditional statements within the project. ● Loops enable us to run a part of the automation a specific number of times until a condition is met, or indefinitely. What is the importance of control flow?
  • 30. 30 ● The conditional, also known as decision-making activities such as If, Else If, and Switch. ● Loops such as While, Do While, and For Each. ● Parallel Activity that executes child activities asynchronously, in parallel. Three types of Control Statements
  • 31. 31 Contains a statement with a condition, and two sets of instructions (Then & Else) as outcomes Then: the set of actions to be executed when the condition is True Else: the set of actions to be executed when the condition is False Conditional Control Statements - If
  • 32. 32 It comes with the ability to add multiple conditions to the Else branch. ● If the first condition is met, then you perform the action under it. ● If not, you can add another condition using the second Else If and if the condition is True, then perform the action under it. If not, add another condition using Else If. ● Else, if none of the conditions are met, then you perform the last action under Else. Conditional Control Statements - Else If
  • 34. 34 Executes a set of activities out of multiple, based on the value of a specific expression. Useful when we need at least three potential sources of action. ★ Switch evaluates once; Else If evaluates each time. Conditional Control Statements - Switch Business Cases to use Switch Statement ● An invoice that has three potential statuses (not started, pending, approved) and three sets of actions for each one. ● A process of automatically ordering raw materials to four suppliers based on certain conditions.
  • 35. 35 While It executes a specific sequence while a condition is met. The condition is evaluated before each execution of the statements. It is possible for a While loop to have zero executions! Conditional Control Statements: Loops - While
  • 36. 36 Loops are repetitions of a set of operations based on a given condition. Do While It executes a specific sequence while a condition is met. The condition is evaluated after each execution of the statements This is a quite different scenario than the While loop. In the body of the loop, a robot could perform a refresh command on a website and then check if a relevant element was loaded. It will continue the refresh - check cycle until the element is loaded. . Conditional Control Statements: Loops - Do While
  • 37. 37 For Each It performs an activity or a series of activities on each element of an input collection. This is very useful in data processing. Consider an Array of integers. For Each would enable the robot to check whether each numeric item fulfills a certain condition. Conditional Control Statements: Loops - For Each
  • 38. 38 Loops are fun, but you should know how to stop the ride at some point. There are multiple ways to exit a loop: ● The While and Do While loops will exit when upon checking, the condition is no longer true. ● The For Each loop will exit when it has finished processing every item in the input collection. ● The Break activity enables you to exit the current loop activity (e.g. For Each, While, or Do While) at a chosen point and continues the workflow with the activity that follows it. ● The Continue activity enables you to skip the remaining steps in the current iteration inside a loop activity, such as For Each, While, or Do While loop. How to exit a loop?
  • 40. 40 Fun Time, Quiz Time! www.menti.com Code: 11339194 https://www.menti.com/alw77eprbfd7
  • 41. 41 Q n A Thank You! Any Questions?
  • 42. 42 What’s Next? Global Student Developer Chapter https://community.uipath.com/global-student-developer/ Log in to UiPath Academy academy.uipath.com ● Go to the Learning Plans page ● Enrol for the Automation Developer Associate Training course https://bit.ly/4c8mHem ● Take the “Variables, Constants and Arguments in Studio” lesson ● Take the “Control Flow in Studio” lesson Session 3: Introduction to UI Automation ● Series Registration Page https://bit.ly/3Vz0G1d
  • 43. 43 Goodbye! But Stay Close… ● community@uipath.com ● www.community.uipath.com Happy Automation!