SlideShare a Scribd company logo
1 of 43
Download to read offline
UiPath Studio Session 4
Advanced practices with
Studio and Orchestrator
2
â–Ş Send Email using Automation
â–Ş Basic String Manipulation
â–Ş Date Formatting
â–Ş Debugging and error handling in Studio
â–Ş Leveraging Orchestrator Assets
â–Ş Making use of Orchestrator Queues
â–Ş How to publish a project in Studio
â–Ş Deployment to Orchestrator
â–Ş Wrap up and Overview of UiPath Academy
Agenda
Send Email using Automation
4
Email Automation using Studio
â—Ź Install the UiPath Mail Activities Pack to send, retrieve, and filter emails
â—Ź 'System.Net.Mail.MailMessage' represents the main data type when working with
emails in UiPath
â—Ź The following can be configured while using the activities in Studio to send emails:
• Add a subject
• Custom body
• Attachments
• Even use a template
5
Email Automation using Studio
â—Ź The activities grouped under App Integration
cover various protocols such as
IMAP, POP3, and SMTP, or are specialized in
working with Outlook and Exchange.
â—Ź Outlook activities are easier to configure and do
not require you to set up servers, users or other
details, as they work with the API of the desktop
application and with already existing Outlook
accounts.
Demo
â—Ź Email Automation
Basic String Manipulation
8
String Manipulation using Studio
â—Ź Strings are the data type corresponding to text.
â—Ź Anytime a text needs to be captured, processed, sent between applications, or
displayed, strings come in handy
â—Ź String manipulation is done by using String Methods borrowed from VB.Net
â—Ź Full list of String Methods from Microsoft can be found at:
https://docs.microsoft.com/en-us/dotnet/api/system.string?view=netframework-
4.8#methods
9
Common String Methods
Concat Concatenates the string representations of two specified objects
Ex: String.Concat(Var1, Var2)
Contains Checks whether a specified substring occurs within a string and returns true
or false
Ex : <VarName>.Contains(“Test”)
Format Converts an entire expression into a string (and Inserts them into another
text). Reduces complexity and increases readability
Ex: String.Format(“{0} is {1}”, VarName1, Varname2)
IndexOf Returns the zero-based index of the first occurrence of a character in a
string
Ex: <Varname>.Indexof(“A”)
10
Common String Methods
Join Concatenates the elements in a collection and displays them as string
Ex: String.Join(“|”, <CollectionVariable>)
Replace Replaces all the occurrences of a substring in a string
Ex: <VariableName>.Replace(“original”, “replaced”)
Split Splits a string into substrings using a given separator
Ex: <VariableName>.Split(“|”c)(index)
Substring Extracts a substring from a string using the starting index and the length
Ex: <VariableName>.Substring(StartIndex, Length)
Demo
â—Ź String Manipulation
Date Formatting
13
Date Formats
Format E.g., Result
DateTime.Now.ToString("dd/MM/yyyy") 12/08/2022
DateTime.Now.ToString("MM/dd/yyyy") 08/12/2022
DateTime.Now.ToString("dd/MMM/yyyy") 12/Aug/2022
DateTime.Now.ToString("dd/MMMM/yyyy") 12/August/2022
DateTime.Now.ToString("dd MMMM yyyy") 12 August 2022
DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss tt") 12/08/2022 10:08:21 PM
DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss") 12/08/2022 22:10:08
DateTime.Now.ToString("hh:mm:ss tt") 10:11:32 PM
• dd - Represents the day of the month i.e., 03,05,18 or 30
• MM - Represents the month number with leading zero i.e., 01,08 or 12
• MMM - Represents the abbreviated month Name i.e., Jun, May or Dec
• MMMM - Represents the full month name i.e., April, June or December
• yyyy - Represents the year i.e., 2022
• hh - Represents the 12-hour clock with a leading 0 i.e., 07,02 or 12
• HH - Represents the 24-hour clock with a leading 0 i.e., 06,14 or 22
14
Methods for Date Formatting
Convert.ToDateTime Method
Convert.ToDateTime(String)
• Parameters
String - The String representation of a date
and Time.
• Returns
DateTime
• Example
Convert.ToDateTime(“08/12/2022”)
DateTime.ParseExact Method
ParseExact(String, String, IFormatProvider)
• Parameters
String - A string that contains a date and time to convert.
Format - A format specifier that defines the required format of
String.
Provider - An object that supplies culture-specific format
information about String.
• Returns DateTime
• Example
DateTime.ParseExact("12/04/2022", “dd/MM/yyyy”,
System.Globalization.CultureInfo.InvariantCulture)
Demo
â—Ź Date Formatting
Debugging and Exception
Handling in Studio
17
Debugging is the process of identifying and removing errors that prevent
the project from functioning correctly.
âž” During the design stage of the automation project, at activity, file and
project level.
âž” Debug can be executed from both Design or Debug tabs.
Debugging
Debug current file
Debug project
(starts from Main process)
18
Debugging Actions
Re-executes the previous
activity, and throws the exception
if it's encountered again.
Ignores an encountered
exception and continues the
execution from the next activity.
Debugs activities one by one.
Opens the workflows in “Invoke
Workflow File” activities.
Restarts the debugging process
from the first activity of the
project.
Completes the execution of
activities in the current container
and then pauses the debugging
at the current container level.
Step Over executes all
activities inside a
container without opening
the container.
19
Debugging Actions
â—Ź Breakpoints: Places a breakpoint to selected activity to pause the debug execution.
â—Ź Slow Step: Debugs at slower speeds and highlights each step of the execution flow.
â—Ź Execution Trail: Shows the exact execution path at debugging.
â—Ź Highlight Elements: UI elements are highlighted during debugging.
â—Ź Log Activities: Debugged activities are displayed as Trace logs in the Output panel.
â—Ź Continue on Exception: When enabled, exception is logged in the Output panel and
the execution continues.
20
Debugging Panels
21
The panel shows:
â—Ź Exceptions - the description and type of the
exception.
â—Ź Arguments
â—Ź Variables
â—Ź Properties of previously executed activity -
only input and output properties are
displayed.
â—Ź Properties of current activity
Debugging Panels
The Locals panel displays properties or activities and user-defined variables
and arguments.
The panel is only visible while debugging.
22
Debugging Panels
The Immediate panel can be used for
inspecting data available at a certain point
during debugging.
The Call Stack panel displays the
next activity to be executed and its
parent containers when the project
is paused in debugging.
These panels are only visible while debugging.
23
Debugging Panels
The Breakpoints panel displays all
breakpoints in the current project,
together with the file in which they are
contained.
The Watch panel displays the
values of variables or arguments,
and values of user-defined
expressions that are in scope.
The panel is only visible while
debugging.
24
Business
Exceptions
System
Exceptions
Exception Handling
Errors are events that a particular program can’t normally deal with.
Exceptions are events that are recognized (caught) by the program,
categorized, and handled.
25
Exception Handling
Holds the activity(s) that could throw an
exception.
Specifies the exception type and,
optionally, holds an activity that informs
the user about the found exception.
(e.g. Log message, Send mail)
Holds the activity(s) that should be
executed whether when an error is
caught (without being re-thrown) or Try
block executed successfully.
Try Catch
26
Error Handling
Throws an exception previously caught in an exception handling block.
â—Ź Must be the child of a Catch handler of a TryCatch activity.
Throws a custom error.
â—Ź new BusinessRuleException("message As String")
â—Ź new ApplicationException("message As String")
Throw & Rethrow
Demo
â—Ź TryCatch
â—Ź Throw & Rethrow in action
Leveraging Orchestrator
Assets
29
Leveraging Orchestrator Assets #1
Orchestrator Assets are configuration values, which are pulled at runtime by
automation solutions.
But, why use Assets, when I can just keep
the values locally in my automations?
Sure, but what data types can Orchestrator
Assets store?
Okay, but I need a value defined per
Robot/Account, so I can’t use Assets, right?
1
2
3
30
Leveraging Orchestrator Assets #2
Now that we know what Orchestrator Assets are and why we use them, we
need to how we use them.
Two main Activities for
interacting with Assets:
Get Asset
Get Credential
Though, you can also Set
Asset values!
1
2
1
2
Demo
â—Ź Orchestrator Assets
Making use of Orchestrator
Queues
33
Making use of Orchestrator Queues #1
An Orchestrator Queue is a list of items to be processed by automation
solution(s).
Orchestrator Queues:
Enforce Unique-ness
Support Robot Scaling
Provide Process Metrics
34
Making use of Orchestrator Queues #2
When making use of Queues, a common best practice is to split automation
solutions into Dispatchers (shown below) and Performers.
35
Making use of Orchestrator Queues #3
With the transaction items added to the Queue, the Performer will begin
retrieving items and processing them.
Demo
â—Ź Orchestrator Queues
How to publish a project in Studio
38
Publishing a Project in Studio
Once you have finished developing an automation solution, you can leverage
the publish functionality in Studio to package/push your code to Orchestrator.
Publishing:
Validation errors will prevent
successful publishing.
Deployment to Orchestrator
40
Deployment to Orchestrator
With our automation solution package in Orchestrator, we need to create a
new process and assign it our published package.
Demo
42
Log into UiPath Academy www.academy.uipath.com
> go to the Learning by Role page
> enroll for the RPA Developer Foundation course
> go through the lesson titled
- Email Automation with Studio,
- O”
Feel free to ask any questions in the UiPath Forum Please
remember to use the RPA Summer School Category or Tag
What’s next?
43
Happy Automating!

More Related Content

Similar to RPA Summer School Studio Session 4 AMER: Advanced practices with Studio and Orchestrator

NewSeriesSlideShare
NewSeriesSlideShareNewSeriesSlideShare
NewSeriesSlideShareSandeep Putrevu
 
Angular performance slides
Angular performance slidesAngular performance slides
Angular performance slidesDavid Barreto
 
Unit Testing in Flutter - From Workflow Essentials to Complex Scenarios
Unit Testing in Flutter - From Workflow Essentials to Complex ScenariosUnit Testing in Flutter - From Workflow Essentials to Complex Scenarios
Unit Testing in Flutter - From Workflow Essentials to Complex ScenariosFlutter Agency
 
Qtp material for beginners
Qtp material for beginnersQtp material for beginners
Qtp material for beginnersRamu Palanki
 
Vb6.0 intro
Vb6.0 introVb6.0 intro
Vb6.0 introJOSEPHINEA6
 
Design Patterns
Design PatternsDesign Patterns
Design Patternsimedo.de
 
Chapter 1 Data structure.pptx
Chapter 1 Data structure.pptxChapter 1 Data structure.pptx
Chapter 1 Data structure.pptxwondmhunegn
 
System verilog important
System verilog importantSystem verilog important
System verilog importantelumalai7
 
Qtp Basics
Qtp BasicsQtp Basics
Qtp Basicsmehramit
 
EKON 23 Code_review_checklist
EKON 23 Code_review_checklistEKON 23 Code_review_checklist
EKON 23 Code_review_checklistMax Kleiner
 
Introduction to Data Structure and algorithm.pptx
Introduction to Data Structure and algorithm.pptxIntroduction to Data Structure and algorithm.pptx
Introduction to Data Structure and algorithm.pptxesuEthopi
 
Ui path certificate question set 1
Ui path certificate question set 1Ui path certificate question set 1
Ui path certificate question set 1Majid Hashmi
 
OOP.pptx
OOP.pptxOOP.pptx
OOP.pptxsaifnasir3
 
Getting started with test complete 7
Getting started with test complete 7Getting started with test complete 7
Getting started with test complete 7Hoamuoigio Hoa
 
7\9 SSIS 2008R2_Training - Script Task
7\9 SSIS 2008R2_Training - Script Task7\9 SSIS 2008R2_Training - Script Task
7\9 SSIS 2008R2_Training - Script TaskPramod Singla
 
Getting started with_testcomplete
Getting started with_testcompleteGetting started with_testcomplete
Getting started with_testcompleteankit.das
 

Similar to RPA Summer School Studio Session 4 AMER: Advanced practices with Studio and Orchestrator (20)

myslide1
myslide1myslide1
myslide1
 
myslide6
myslide6myslide6
myslide6
 
NewSeriesSlideShare
NewSeriesSlideShareNewSeriesSlideShare
NewSeriesSlideShare
 
Angular performance slides
Angular performance slidesAngular performance slides
Angular performance slides
 
Unit Testing in Flutter - From Workflow Essentials to Complex Scenarios
Unit Testing in Flutter - From Workflow Essentials to Complex ScenariosUnit Testing in Flutter - From Workflow Essentials to Complex Scenarios
Unit Testing in Flutter - From Workflow Essentials to Complex Scenarios
 
Qtp material for beginners
Qtp material for beginnersQtp material for beginners
Qtp material for beginners
 
Qtp faqs
Qtp faqsQtp faqs
Qtp faqs
 
Vb6.0 intro
Vb6.0 introVb6.0 intro
Vb6.0 intro
 
Qtp Training
Qtp TrainingQtp Training
Qtp Training
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Chapter 1 Data structure.pptx
Chapter 1 Data structure.pptxChapter 1 Data structure.pptx
Chapter 1 Data structure.pptx
 
System verilog important
System verilog importantSystem verilog important
System verilog important
 
Qtp Basics
Qtp BasicsQtp Basics
Qtp Basics
 
EKON 23 Code_review_checklist
EKON 23 Code_review_checklistEKON 23 Code_review_checklist
EKON 23 Code_review_checklist
 
Introduction to Data Structure and algorithm.pptx
Introduction to Data Structure and algorithm.pptxIntroduction to Data Structure and algorithm.pptx
Introduction to Data Structure and algorithm.pptx
 
Ui path certificate question set 1
Ui path certificate question set 1Ui path certificate question set 1
Ui path certificate question set 1
 
OOP.pptx
OOP.pptxOOP.pptx
OOP.pptx
 
Getting started with test complete 7
Getting started with test complete 7Getting started with test complete 7
Getting started with test complete 7
 
7\9 SSIS 2008R2_Training - Script Task
7\9 SSIS 2008R2_Training - Script Task7\9 SSIS 2008R2_Training - Script Task
7\9 SSIS 2008R2_Training - Script Task
 
Getting started with_testcomplete
Getting started with_testcompleteGetting started with_testcomplete
Getting started with_testcomplete
 

More from Diana Gray, MBA

Intelligent Automation in Accounting and Finance with IMA Queens College Stud...
Intelligent Automation in Accounting and Finance with IMA Queens College Stud...Intelligent Automation in Accounting and Finance with IMA Queens College Stud...
Intelligent Automation in Accounting and Finance with IMA Queens College Stud...Diana Gray, MBA
 
What it Takes to Automate Your Organization and Develop a Mature Automation S...
What it Takes to Automate Your Organization and Develop a Mature Automation S...What it Takes to Automate Your Organization and Develop a Mature Automation S...
What it Takes to Automate Your Organization and Develop a Mature Automation S...Diana Gray, MBA
 
2022.11 - Women in Automation - Introduction to RPA_PD.pptx
2022.11 - Women in Automation - Introduction to RPA_PD.pptx2022.11 - Women in Automation - Introduction to RPA_PD.pptx
2022.11 - Women in Automation - Introduction to RPA_PD.pptxDiana Gray, MBA
 
Generate Metrics from Transactions - Chicago Meetup
Generate Metrics from Transactions - Chicago MeetupGenerate Metrics from Transactions - Chicago Meetup
Generate Metrics from Transactions - Chicago MeetupDiana Gray, MBA
 
Women in Automation: Launch Your Career with RPA - Part 2 of 3
Women in Automation: Launch Your Career with RPA - Part 2 of 3Women in Automation: Launch Your Career with RPA - Part 2 of 3
Women in Automation: Launch Your Career with RPA - Part 2 of 3Diana Gray, MBA
 
FORWARD 5 Key Highlights and Product Updates - Philadelphia Chapter
FORWARD 5 Key Highlights and Product Updates - Philadelphia ChapterFORWARD 5 Key Highlights and Product Updates - Philadelphia Chapter
FORWARD 5 Key Highlights and Product Updates - Philadelphia ChapterDiana Gray, MBA
 
Assisted Task Mining: Driving Continuous Discovery
Assisted Task Mining: Driving Continuous DiscoveryAssisted Task Mining: Driving Continuous Discovery
Assisted Task Mining: Driving Continuous DiscoveryDiana Gray, MBA
 
Women in Automation: Exploring RPA - Part 1 of 3
Women in Automation: Exploring RPA - Part 1 of 3Women in Automation: Exploring RPA - Part 1 of 3
Women in Automation: Exploring RPA - Part 1 of 3Diana Gray, MBA
 
UiPath Apps - Data Service, Entity and DS, and Table Control - Developer Seri...
UiPath Apps - Data Service, Entity and DS, and Table Control - Developer Seri...UiPath Apps - Data Service, Entity and DS, and Table Control - Developer Seri...
UiPath Apps - Data Service, Entity and DS, and Table Control - Developer Seri...Diana Gray, MBA
 
Consumindo APIs com UiPath
Consumindo APIs com UiPathConsumindo APIs com UiPath
Consumindo APIs com UiPathDiana Gray, MBA
 
Introduction to RPA and Document Understanding
Introduction to RPA and Document UnderstandingIntroduction to RPA and Document Understanding
Introduction to RPA and Document UnderstandingDiana Gray, MBA
 
Partner Training: UiPath Digital Marketing Center
Partner Training: UiPath Digital Marketing CenterPartner Training: UiPath Digital Marketing Center
Partner Training: UiPath Digital Marketing CenterDiana Gray, MBA
 
Document Understanding: CĂłmo prepararse para una implementaciĂłn exitosa
Document Understanding: CĂłmo prepararse para una implementaciĂłn exitosaDocument Understanding: CĂłmo prepararse para una implementaciĂłn exitosa
Document Understanding: CĂłmo prepararse para una implementaciĂłn exitosaDiana Gray, MBA
 
Technology Series: Intelligently automate core business apps with UiPath and ...
Technology Series: Intelligently automate core business apps with UiPath and ...Technology Series: Intelligently automate core business apps with UiPath and ...
Technology Series: Intelligently automate core business apps with UiPath and ...Diana Gray, MBA
 
UiPath Apps - Functions, Expressions, Inline Validations & Function - Develop...
UiPath Apps - Functions, Expressions, Inline Validations & Function - Develop...UiPath Apps - Functions, Expressions, Inline Validations & Function - Develop...
UiPath Apps - Functions, Expressions, Inline Validations & Function - Develop...Diana Gray, MBA
 
REFramework: Debugging/Workflow Analyzer/Validation - Developer Series - Part...
REFramework: Debugging/Workflow Analyzer/Validation - Developer Series - Part...REFramework: Debugging/Workflow Analyzer/Validation - Developer Series - Part...
REFramework: Debugging/Workflow Analyzer/Validation - Developer Series - Part...Diana Gray, MBA
 
UiPath Apps - Containers, Controls and Events - Developer Series - Part 1 of 4
UiPath Apps - Containers, Controls and Events - Developer Series - Part 1 of 4UiPath Apps - Containers, Controls and Events - Developer Series - Part 1 of 4
UiPath Apps - Containers, Controls and Events - Developer Series - Part 1 of 4Diana Gray, MBA
 
REFramework: Queues, Configuration and Creating within the States - Developer...
REFramework: Queues, Configuration and Creating within the States - Developer...REFramework: Queues, Configuration and Creating within the States - Developer...
REFramework: Queues, Configuration and Creating within the States - Developer...Diana Gray, MBA
 
How to Scale Your Automation Program
How to Scale Your Automation ProgramHow to Scale Your Automation Program
How to Scale Your Automation ProgramDiana Gray, MBA
 
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...Diana Gray, MBA
 

More from Diana Gray, MBA (20)

Intelligent Automation in Accounting and Finance with IMA Queens College Stud...
Intelligent Automation in Accounting and Finance with IMA Queens College Stud...Intelligent Automation in Accounting and Finance with IMA Queens College Stud...
Intelligent Automation in Accounting and Finance with IMA Queens College Stud...
 
What it Takes to Automate Your Organization and Develop a Mature Automation S...
What it Takes to Automate Your Organization and Develop a Mature Automation S...What it Takes to Automate Your Organization and Develop a Mature Automation S...
What it Takes to Automate Your Organization and Develop a Mature Automation S...
 
2022.11 - Women in Automation - Introduction to RPA_PD.pptx
2022.11 - Women in Automation - Introduction to RPA_PD.pptx2022.11 - Women in Automation - Introduction to RPA_PD.pptx
2022.11 - Women in Automation - Introduction to RPA_PD.pptx
 
Generate Metrics from Transactions - Chicago Meetup
Generate Metrics from Transactions - Chicago MeetupGenerate Metrics from Transactions - Chicago Meetup
Generate Metrics from Transactions - Chicago Meetup
 
Women in Automation: Launch Your Career with RPA - Part 2 of 3
Women in Automation: Launch Your Career with RPA - Part 2 of 3Women in Automation: Launch Your Career with RPA - Part 2 of 3
Women in Automation: Launch Your Career with RPA - Part 2 of 3
 
FORWARD 5 Key Highlights and Product Updates - Philadelphia Chapter
FORWARD 5 Key Highlights and Product Updates - Philadelphia ChapterFORWARD 5 Key Highlights and Product Updates - Philadelphia Chapter
FORWARD 5 Key Highlights and Product Updates - Philadelphia Chapter
 
Assisted Task Mining: Driving Continuous Discovery
Assisted Task Mining: Driving Continuous DiscoveryAssisted Task Mining: Driving Continuous Discovery
Assisted Task Mining: Driving Continuous Discovery
 
Women in Automation: Exploring RPA - Part 1 of 3
Women in Automation: Exploring RPA - Part 1 of 3Women in Automation: Exploring RPA - Part 1 of 3
Women in Automation: Exploring RPA - Part 1 of 3
 
UiPath Apps - Data Service, Entity and DS, and Table Control - Developer Seri...
UiPath Apps - Data Service, Entity and DS, and Table Control - Developer Seri...UiPath Apps - Data Service, Entity and DS, and Table Control - Developer Seri...
UiPath Apps - Data Service, Entity and DS, and Table Control - Developer Seri...
 
Consumindo APIs com UiPath
Consumindo APIs com UiPathConsumindo APIs com UiPath
Consumindo APIs com UiPath
 
Introduction to RPA and Document Understanding
Introduction to RPA and Document UnderstandingIntroduction to RPA and Document Understanding
Introduction to RPA and Document Understanding
 
Partner Training: UiPath Digital Marketing Center
Partner Training: UiPath Digital Marketing CenterPartner Training: UiPath Digital Marketing Center
Partner Training: UiPath Digital Marketing Center
 
Document Understanding: CĂłmo prepararse para una implementaciĂłn exitosa
Document Understanding: CĂłmo prepararse para una implementaciĂłn exitosaDocument Understanding: CĂłmo prepararse para una implementaciĂłn exitosa
Document Understanding: CĂłmo prepararse para una implementaciĂłn exitosa
 
Technology Series: Intelligently automate core business apps with UiPath and ...
Technology Series: Intelligently automate core business apps with UiPath and ...Technology Series: Intelligently automate core business apps with UiPath and ...
Technology Series: Intelligently automate core business apps with UiPath and ...
 
UiPath Apps - Functions, Expressions, Inline Validations & Function - Develop...
UiPath Apps - Functions, Expressions, Inline Validations & Function - Develop...UiPath Apps - Functions, Expressions, Inline Validations & Function - Develop...
UiPath Apps - Functions, Expressions, Inline Validations & Function - Develop...
 
REFramework: Debugging/Workflow Analyzer/Validation - Developer Series - Part...
REFramework: Debugging/Workflow Analyzer/Validation - Developer Series - Part...REFramework: Debugging/Workflow Analyzer/Validation - Developer Series - Part...
REFramework: Debugging/Workflow Analyzer/Validation - Developer Series - Part...
 
UiPath Apps - Containers, Controls and Events - Developer Series - Part 1 of 4
UiPath Apps - Containers, Controls and Events - Developer Series - Part 1 of 4UiPath Apps - Containers, Controls and Events - Developer Series - Part 1 of 4
UiPath Apps - Containers, Controls and Events - Developer Series - Part 1 of 4
 
REFramework: Queues, Configuration and Creating within the States - Developer...
REFramework: Queues, Configuration and Creating within the States - Developer...REFramework: Queues, Configuration and Creating within the States - Developer...
REFramework: Queues, Configuration and Creating within the States - Developer...
 
How to Scale Your Automation Program
How to Scale Your Automation ProgramHow to Scale Your Automation Program
How to Scale Your Automation Program
 
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
 

Recently uploaded

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 

Recently uploaded (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

RPA Summer School Studio Session 4 AMER: Advanced practices with Studio and Orchestrator

  • 1. UiPath Studio Session 4 Advanced practices with Studio and Orchestrator
  • 2. 2 â–Ş Send Email using Automation â–Ş Basic String Manipulation â–Ş Date Formatting â–Ş Debugging and error handling in Studio â–Ş Leveraging Orchestrator Assets â–Ş Making use of Orchestrator Queues â–Ş How to publish a project in Studio â–Ş Deployment to Orchestrator â–Ş Wrap up and Overview of UiPath Academy Agenda
  • 3. Send Email using Automation
  • 4. 4 Email Automation using Studio â—Ź Install the UiPath Mail Activities Pack to send, retrieve, and filter emails â—Ź 'System.Net.Mail.MailMessage' represents the main data type when working with emails in UiPath â—Ź The following can be configured while using the activities in Studio to send emails: • Add a subject • Custom body • Attachments • Even use a template
  • 5. 5 Email Automation using Studio â—Ź The activities grouped under App Integration cover various protocols such as IMAP, POP3, and SMTP, or are specialized in working with Outlook and Exchange. â—Ź Outlook activities are easier to configure and do not require you to set up servers, users or other details, as they work with the API of the desktop application and with already existing Outlook accounts.
  • 8. 8 String Manipulation using Studio â—Ź Strings are the data type corresponding to text. â—Ź Anytime a text needs to be captured, processed, sent between applications, or displayed, strings come in handy â—Ź String manipulation is done by using String Methods borrowed from VB.Net â—Ź Full list of String Methods from Microsoft can be found at: https://docs.microsoft.com/en-us/dotnet/api/system.string?view=netframework- 4.8#methods
  • 9. 9 Common String Methods Concat Concatenates the string representations of two specified objects Ex: String.Concat(Var1, Var2) Contains Checks whether a specified substring occurs within a string and returns true or false Ex : <VarName>.Contains(“Test”) Format Converts an entire expression into a string (and Inserts them into another text). Reduces complexity and increases readability Ex: String.Format(“{0} is {1}”, VarName1, Varname2) IndexOf Returns the zero-based index of the first occurrence of a character in a string Ex: <Varname>.Indexof(“A”)
  • 10. 10 Common String Methods Join Concatenates the elements in a collection and displays them as string Ex: String.Join(“|”, <CollectionVariable>) Replace Replaces all the occurrences of a substring in a string Ex: <VariableName>.Replace(“original”, “replaced”) Split Splits a string into substrings using a given separator Ex: <VariableName>.Split(“|”c)(index) Substring Extracts a substring from a string using the starting index and the length Ex: <VariableName>.Substring(StartIndex, Length)
  • 13. 13 Date Formats Format E.g., Result DateTime.Now.ToString("dd/MM/yyyy") 12/08/2022 DateTime.Now.ToString("MM/dd/yyyy") 08/12/2022 DateTime.Now.ToString("dd/MMM/yyyy") 12/Aug/2022 DateTime.Now.ToString("dd/MMMM/yyyy") 12/August/2022 DateTime.Now.ToString("dd MMMM yyyy") 12 August 2022 DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss tt") 12/08/2022 10:08:21 PM DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss") 12/08/2022 22:10:08 DateTime.Now.ToString("hh:mm:ss tt") 10:11:32 PM • dd - Represents the day of the month i.e., 03,05,18 or 30 • MM - Represents the month number with leading zero i.e., 01,08 or 12 • MMM - Represents the abbreviated month Name i.e., Jun, May or Dec • MMMM - Represents the full month name i.e., April, June or December • yyyy - Represents the year i.e., 2022 • hh - Represents the 12-hour clock with a leading 0 i.e., 07,02 or 12 • HH - Represents the 24-hour clock with a leading 0 i.e., 06,14 or 22
  • 14. 14 Methods for Date Formatting Convert.ToDateTime Method Convert.ToDateTime(String) • Parameters String - The String representation of a date and Time. • Returns DateTime • Example Convert.ToDateTime(“08/12/2022”) DateTime.ParseExact Method ParseExact(String, String, IFormatProvider) • Parameters String - A string that contains a date and time to convert. Format - A format specifier that defines the required format of String. Provider - An object that supplies culture-specific format information about String. • Returns DateTime • Example DateTime.ParseExact("12/04/2022", “dd/MM/yyyy”, System.Globalization.CultureInfo.InvariantCulture)
  • 17. 17 Debugging is the process of identifying and removing errors that prevent the project from functioning correctly. âž” During the design stage of the automation project, at activity, file and project level. âž” Debug can be executed from both Design or Debug tabs. Debugging Debug current file Debug project (starts from Main process)
  • 18. 18 Debugging Actions Re-executes the previous activity, and throws the exception if it's encountered again. Ignores an encountered exception and continues the execution from the next activity. Debugs activities one by one. Opens the workflows in “Invoke Workflow File” activities. Restarts the debugging process from the first activity of the project. Completes the execution of activities in the current container and then pauses the debugging at the current container level. Step Over executes all activities inside a container without opening the container.
  • 19. 19 Debugging Actions â—Ź Breakpoints: Places a breakpoint to selected activity to pause the debug execution. â—Ź Slow Step: Debugs at slower speeds and highlights each step of the execution flow. â—Ź Execution Trail: Shows the exact execution path at debugging. â—Ź Highlight Elements: UI elements are highlighted during debugging. â—Ź Log Activities: Debugged activities are displayed as Trace logs in the Output panel. â—Ź Continue on Exception: When enabled, exception is logged in the Output panel and the execution continues.
  • 21. 21 The panel shows: â—Ź Exceptions - the description and type of the exception. â—Ź Arguments â—Ź Variables â—Ź Properties of previously executed activity - only input and output properties are displayed. â—Ź Properties of current activity Debugging Panels The Locals panel displays properties or activities and user-defined variables and arguments. The panel is only visible while debugging.
  • 22. 22 Debugging Panels The Immediate panel can be used for inspecting data available at a certain point during debugging. The Call Stack panel displays the next activity to be executed and its parent containers when the project is paused in debugging. These panels are only visible while debugging.
  • 23. 23 Debugging Panels The Breakpoints panel displays all breakpoints in the current project, together with the file in which they are contained. The Watch panel displays the values of variables or arguments, and values of user-defined expressions that are in scope. The panel is only visible while debugging.
  • 24. 24 Business Exceptions System Exceptions Exception Handling Errors are events that a particular program can’t normally deal with. Exceptions are events that are recognized (caught) by the program, categorized, and handled.
  • 25. 25 Exception Handling Holds the activity(s) that could throw an exception. Specifies the exception type and, optionally, holds an activity that informs the user about the found exception. (e.g. Log message, Send mail) Holds the activity(s) that should be executed whether when an error is caught (without being re-thrown) or Try block executed successfully. Try Catch
  • 26. 26 Error Handling Throws an exception previously caught in an exception handling block. â—Ź Must be the child of a Catch handler of a TryCatch activity. Throws a custom error. â—Ź new BusinessRuleException("message As String") â—Ź new ApplicationException("message As String") Throw & Rethrow
  • 27. Demo â—Ź TryCatch â—Ź Throw & Rethrow in action
  • 29. 29 Leveraging Orchestrator Assets #1 Orchestrator Assets are configuration values, which are pulled at runtime by automation solutions. But, why use Assets, when I can just keep the values locally in my automations? Sure, but what data types can Orchestrator Assets store? Okay, but I need a value defined per Robot/Account, so I can’t use Assets, right? 1 2 3
  • 30. 30 Leveraging Orchestrator Assets #2 Now that we know what Orchestrator Assets are and why we use them, we need to how we use them. Two main Activities for interacting with Assets: Get Asset Get Credential Though, you can also Set Asset values! 1 2 1 2
  • 32. Making use of Orchestrator Queues
  • 33. 33 Making use of Orchestrator Queues #1 An Orchestrator Queue is a list of items to be processed by automation solution(s). Orchestrator Queues: Enforce Unique-ness Support Robot Scaling Provide Process Metrics
  • 34. 34 Making use of Orchestrator Queues #2 When making use of Queues, a common best practice is to split automation solutions into Dispatchers (shown below) and Performers.
  • 35. 35 Making use of Orchestrator Queues #3 With the transaction items added to the Queue, the Performer will begin retrieving items and processing them.
  • 37. How to publish a project in Studio
  • 38. 38 Publishing a Project in Studio Once you have finished developing an automation solution, you can leverage the publish functionality in Studio to package/push your code to Orchestrator. Publishing: Validation errors will prevent successful publishing.
  • 40. 40 Deployment to Orchestrator With our automation solution package in Orchestrator, we need to create a new process and assign it our published package.
  • 41. Demo
  • 42. 42 Log into UiPath Academy www.academy.uipath.com > go to the Learning by Role page > enroll for the RPA Developer Foundation course > go through the lesson titled - Email Automation with Studio, - O” Feel free to ask any questions in the UiPath Forum Please remember to use the RPA Summer School Category or Tag What’s next?