Breaking News

Level 1 – Foundation Training Course (Part 1)

Course 2018.3

The course contains 13 lessons. At the end of each lesson you must take a simple exam. The purpose is to test your knowledge. Also it’s a good practice to identify your strengths and weaknesses.

At the end of all 13 lessons you have to take the final exam and this will complete the course.

Lesson 1

This is an introductory module where you will see a complete demonstration of UiPath. In conclusion, you will learn about the company, who UiPath is, what you can achieve with their product and what solutions they are offering. Cosmin Simion will be our instructor. Thank you, Cosmin!

At first sight, the studio resembles SQL Server Integration Services and the reason why I say it is because UiPath is built on top of the Windows Workflow Foundation.

(SQL Server Integration Services is a component of the Microsoft SQL Server database software that can be used to perform a broad range of data migration tasks. SSIS is a platform for data integration and workflow applications. It features a data warehousing tool used for data extraction, transformation, and loading. source: Wikipedia)

I hope my experience with SSIS will help me understand the product faster and better.

Link: lesson 1 documentation

Lesson 2 – Variables, Data types & Control flows

With the second lesson, things got more interesting. You learn about variables, data types, control flows and you build your first application. Have a look at what I have built. This is a simple application where I display the following message: “Hello, World!”.

For all the beginners out there, if you decided to study this course and learn UiPath, I want to congratulate you. Nowadays, learning a new programming language is important as learning how to write and read. The reason why I am telling you this is because I want to highlight the importance of this second lesson. In my own opinion, this is the FOUNDATION. If you have trouble understanding the content of the lesson I advise going through it again. You can’t build something great if your foundation is fragile. So, create a strong foundation for your knowledge.

Flows

With UiPath, you can organize and group your activities in 2 different ways:

  • Sequence for short and simple linear workflows. It can be reused as standalone automation or as part of a state machine or flowchart
  • Flowchart for more complex workflows and high-level organization. It offers you higher flexibility regarding the connection between Activities.

Main data types

Integer, String, DateTime, Boolean, Generic, Array of…

Loops

While, Do While, Foreach

Best practise

  • Use relevant names for the Activities

Lesson 3 – Data manipulation

The third lesson teaches you how to manipulate data.

Variable Categories

Most of the variables used with UiPath fit into one of the following categories:

  • Scalar variables: Characters, Booleans, Numbers, Date Times
  • Collections: Arrays, Lists, Queues, String data type, Dictionaries
  • Tables: two-dimensional structures which hold data indexed by rows and columns. The table is similar to an array of dictionaries where values are accessible by row index and column index.
  • Generic Value: special type, entirely unique to UiPath. It can represent basic types of data from text to numbers and datetimes.

Array vs List

The two entities are very similar to each other. The main difference is that an array has a fixed size, while the size of a list can be modified by adding or removing elements.

Declare an Array variable

Go to Variable panel and select the Variable type as an Array of [T]. From the newly open popup select the types. It can be an array of integers, strings and so on.

To add a default value to an array, type into the Default section: {“value1”, “value2”} for a string array or {0,1,2,3,4,5} for an int array.

Declare a List variable

Browse for the System.Collection.Generic, pick List<T> and select the required content type. For the default value type: new List(of String) from {“value1″,”value2”} or new List(of Int32) from {0,1,1,2,3,5,8,13,21,34}

Add/Remove elements from a List

Use the Invoke Method activity to add or remove elements from a List.

For Each activity

Both entities, Arrays and Lists can be iterated using For Each activity.

Declare a Dictionary variable

Browse for the System.Collection.Generic, pick Dictionary<Tkey,Tvalue> and select the required types for key and value. Usually the key is a string and the value is either a string or an object. For the default value type: new Dictionary(of String,String) from {{“key1″,”value1”},{“key2″,”value2”}}

String Methods

Tip: Escape character in UiPath is double quote: “… my favourite quote is “”Don’t count the day, make the day count“””.

These are the most common methods used by developers.

filePath = “Downloads/{0}/UiPath.pdf”

MethodSyntaxResult
ContainsfilePath.Contains(“.”)True
EndsWith/StarsWithfilePath.EndsWith(“.pdf”)True
FormatString.Format(filePath,sBookFolder)“Downloads/MyBooks/UiPath.pdf”
ReplacefilePath.Replace(“/”,”\”)“Downloads\{0}\UiPath.pdf”
SplitfolePath.Split(“/”,ToCharArray){“Downloads”,”{0}”,”UiPath.pdf”}
SubstringfilePath.Substring(10)“{0}/UiPath.pdf”
ToLower/ToUpperfilepath.ToUpper“DOWNLOADS/{0}/UIPATH.PDF”
Trimrandom.Trim“ASD”

Data tables

Use Data tables when working with Excel or CSV files. The Read CSV activity has a Data table Output.

Tip: Use Output Data Table activity to convert the Data table variable to string. This is helpful for debugging.

To iterate through each row use For Each Row activity.

Tip: To get a value from a fixed row index use this expression:

sampleData.Rows(0)(“ColumnName”).ToString or
sampleData.Rows(0)(0).ToString

Tip: To get the total number of rows

sampleData.Rows.Count

To filter a Data table variable use the select option. It goes through all the rows and looks for the ones that are matching the condition. It returns an array of System.Data.DataRow

Example: sampleData.Select(“Condition”)

Links: Manage variables, Sequence, Flowchart

About Valeriu B

RPA Developer (UiPath certified)

Leave a Reply

Your email address will not be published. Required fields are marked *