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

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
 
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
 
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

TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024Stephen Perrenod
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxFIDO Alliance
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data SciencePaolo Missier
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfFIDO Alliance
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch TuesdayIvanti
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераMark Opanasiuk
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfSrushith Repakula
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Paige Cruz
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...panagenda
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...FIDO Alliance
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxFIDO Alliance
 
UiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewUiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewDianaGray10
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideStefan Dietze
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Hiroshi SHIBATA
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...ScyllaDB
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfalexjohnson7307
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform EngineeringMarcus Vechiato
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingScyllaDB
 

Recently uploaded (20)

TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data Science
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
UiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewUiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overview
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream Processing
 

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?