欢迎光临散文网 会员登陆 & 注册

【RPA之家UiPath官方教程】变量,数据类型和控制流

2020-06-01 09:13 作者:RPA之家  | 我要投稿

本课程涵盖使用任何软件过程中基本的三种构造:变量,参数和控制流。

受众:RPA开发人员

学习目标

在本课程结束时,您应该能够:

区分UiPath中最常用的变量和参数类型;

创建自动化项目中所需的变量,并根据规范配置其属性;

使用控制流的概念来构建可靠且有效的自动化项目;

区分UiPath中使用的最常见的控制流语句(If语句,Loops和Switch),并根据规范进行配置。

 

关于本课程

介绍

本课程涵盖了两个单独的构造,它们是任何软件过程中的基础:

变量和参数,或如何在各种活动和工作流程之间收集,存储,处理和传递数据;

控制流,或在整个过程中如何执行活动,指令和函数调用。

受众:RPA开发人员

 

课程时间:4小时

 

完成课程的要求:通过最低80%的分数通过课程测验

 

先决条件:

基本编程知识

RPA开发人员角色课程简介

学习目标

在本课程结束时,您将能够:

1区分UiPath中最常用的变量和参数类型;

2创建自动化项目中所需的变量,并根据规范配置其属性;

3使用控制流的概念来构建可靠且有效的自动化项目;

4区分UiPath中使用的最常见的控制流语句(If语句,Loops和Switch),并根据规范进行配置。

注意:本课程是使用UiPath Studio 2019.7创建的。最新的Community Edition版本中的某些元素可能有所不同。

使用说明

在浏览本课程时,请记住以下几点:

1您可以按任何顺序学习这些课程,也可以随时对其进行复习。

2要完成课程,您必须一直向下滚动页面。指示下一课的按钮将变为可见。

3每个视频下方使用的项目都可以下载。

4视频将使用内置播放器播放。请按照以下说明习惯视频播放器的基本功能。

变量和参数

变量是可以容纳相同数据类型的多个数据条目(值)的容器。 例如,emailAddress可以是一个变量,其值为“ rpadeveloper@uipath.com”。 变量的值可以通过外部输入,数据操作或从一种活动传递到另一种活动来更改。

变量通过它们的属性进行配置。 您可以在“变量”面板中进行设置。 UiPath的主要属性是:

--名称

它应尽可能具有描述性,以使您的自动化易于被其他开发人员阅读并节省时间。

--类型

定义可以在变量中存储的数据类型。 在UiPath中,类型是在创建变量时声明的,但是有些特定类型更通用,可以容纳不同类型的数据。 下面是有关变量类型的更多信息。

--默认值

通常,变量的初始值会在整个过程中发生变化。 如果在创建变量时未分配任何初始值,则通常会有一个默认规则来分配一个值。

--范围

工作流中可以使用变量的部分。 一些变量可以是全局变量,其他变量可以是局部变量。 在实际的自动化方案中,有许多变量在使用。 使多个变量不必要地全局化可能会导致效率问题以及混乱的可能性。

 

UiPath中的开发人员不会处理必须使用其他编程语言进行管理的其他属性(例如生存期或内存位置)。

 

创建变量

在UiPath中有3种创建变量的方法:

1.在“变量”面板中–打开“变量”面板,选择“创建新变量”选项,然后根据需要填写字段。 需要时,在“设计器”面板或所需的“属性”字段中提供其名称。

2.在“设计器”面板中–拖移一个可见变量字段(即“分配”)的活动,然后按Ctrl + K。 将其命名,然后在“变量”面板中检查其属性。

3.在“属性”面板中–在活动的“属性”面板中,将光标放在需要变量的字段(即“输出”)中,然后按Ctrl + K。 将其命名,然后在“变量”面板中检查其属性。

 

创建变量的良好习惯

使用清晰一致的命名约定-最常见的命名约定之一是Camel大小写(词组中间的每个单词均大写)

确保正确定义每个变量的范围-请记住,在有限范围内定义的变量不能全局使用。 同时,在实际的自动化方案中,仅在变量的使用范围内定义变量至关重要。 使多个变量不必要地全局化可能会导致效率问题以及混乱的可能性。

 

参数

在UiPath中,变量的范围不能超出定义它的工作流程。 由于业务自动化项目很少由单个工作流程组成,因此必须使用参数。

参数与变量非常相似–它们动态存储数据,具有相同的数据类型,并且支持相同的方法。 区别在于它们在工作流之间传递数据,并且为此具有一个附加属性-数据传递的方向。 方向可以是输入,输出和输入/输出。

数据类型

除了一些例外情况,我们将分别讨论,UiPath中的数据类型是从VB.Net借用的。 以下是一些最常用的方法:

--数字类型

用于存储数字。数值变量有不同的子类型:

Int32-System.Int32(有符号整数):10、299,-100、0x69

Long-System.Int64(长整数):5435435343O,-11332424D

Double-System.Double(允许小数,15-16位精度):19.1234567891011

 

--布尔型

System.Boolean:用于存储两个值之一-true或false。

 

--日期和时间(类别)

DateTime-System.DateTime:用于存储特定的时间坐标(mm / dd / yyyy hh:mm:ss)。这种变量提供了一系列特定的处理方法(减去天数,计算剩余时间与今天的比较等等)。例如,要获取当前时间,请将表达式DateTime.Now分配给DateTime类型的变量。

TimeSpan-System.TimeSpan:用于存储有关持续时间(dd:hh:mm:ss)的信息。您可以使用它来测量两个DateTime类型的变量之间的持续时间。例如,您可以将过程开始时的时间保存在一个变量(日期时间类型)中,将结束时的时间保存在另一个变量中(日期时间类型),并将差异存储在时间跨度类型的变量中。

 

--字符串

System.String:用于存储文本。这种类型的数据具有许多特定的处理方法,并将在另一课程“数据操作”中深入探讨。

 

--集合(类别)

该类别重新组合了所有对象集合,每个对象通过其在集合中的索引进行标识。集合主要用于处理和处理复杂数据。一些最常遇到的收藏是:

Array-ArrayOf <T>或System.DataType []:用于存储相同数据类型的多个值。大小(对象数)是在创建时定义的;

List-System.Collections.Generic.List <T>:用于存储相同数据类型的多个值,就像数组一样。与数组不同,它们的大小是动态的。

字典-System.Collections.Generic.Dictionary <TKey,TValue>:用于以(键,值)对的形式存储对象,其中两者中的每一个可以是单独的数据类型。

 

我们将在本课程的后面部分介绍数组,并在数据处理课程中更详细地介绍列表和字典。

--通用类型

这是UiPath专有变量类型,可以存储任何类型的数据,包括文本,数字,日期和数组。此类型主要用于我们不确定要接收哪种数`据的活动,但是通常使用此类型是临时的。

 

请记住,上面介绍的类型列表不是完整列表,而是最常用的类型列表。 在特定情况下可以使用其他类型。 在浏览或搜索时,您将在System和System.Collections类别下找到其中的大多数。

在某些情况下,变量是由活动自动生成的,并且变量的类型可能会有所不同-例如,定位并存储图形元素的活动将自动生成UiElement类型的变量。

 

数组变量

到目前为止,大多数示例都是简单变量,可以一次存储一个值。 是时候从数组变量开始研究集合变量了。

它是什么?

数组变量是一种变量,可以存储同一数据类型的多个值。 可以将其视为一组具有在创建时定义的大小的元素,并且可以通过其索引来标识每个项目。

在UiPath Studio中,您可以创建数字,字符串,布尔值等的数组。

 

我将在哪些业务场景中使用阵列?

当我们要将月份的名称保存到变量中时

当必须存储固定的银行帐户集合并在付款过程中使用时

当必须处理上个月支付的所有发票时

当必须在数据库中验证某个部门的雇员姓名时.

 

通用值变量

在开发自动化过程时,有些情况下您不确定要检索哪种类型的数据。 为了找出答案,您需要使用一个变量进行一些测试,该变量应具有足够广泛的频谱,可以捕获任何类型的输入。 我们建议在此处临时使用GenericValue变量。

它是什么?

GenericValue(UiPath.Core.GenericValue)变量是UiPath特有的一种变量,可以存储任何类型的数据,包括文本,数字,日期和数组。

UiPath Studio具有GenericValue变量的自动转换机制,您可以通过仔细定义它们的表达式来指导所需的结果。 请注意,表达式中的第一个元素用作Studio执行操作的准则。 例如,当您尝试添加两个GenericValue变量时,如果表达式中的第一个变量定义为String,则结果是两个变量的串联。 如果将其定义为Integer,则结果为它们的总和。

 

我将在哪些业务场景中使用GenericValue变量?

从UI字段中提取数据,然后将其转发到另一个工作流而不进行处理

同一Excel文件的两个版本正在逐列进行比较。 列的数据类型不同,唯一相关的是哪些条目有更改

 

控制流概述

它是什么?

它是在软件项目中执行或评估各个语句,指令或函数调用的顺序。

制定控制流程有两个概念:

自动化项目类型

工作流有4种预定义的类型 - 序列,流程图,状态机和全局异常处理程序。

我们将在“项目组织”课程中深入介绍它们,现在,让我们集中讨论序列和流程图之间的区别,因为我们将在整个课程的示例中广泛使用这两者。

1.在序列中,处理步骤将连续进行。 决策树很少使用。 顺序活动易于阅读和维护,因此强烈建议将其用于简单的线性工作流程。

2.在流程图中,单个活动很难阅读和编辑,但是它们之间的流程更加清晰。 当需要决策点和分支以适应复杂的场景,解决方法和决策机制时,请使用流程图。

 

控制流语句

用于定义工作流程执行期间要做出的决定的活动和方法。 最常见的控制流语句是if / else决策,循环和开关。 让我们一一关注。

它是什么?

在UiPath中,If语句正是您期望的样子:

已验证的条件(有2个潜在结果–对或错)

条件为真时要执行的一组操作(然后分支)

条件为假时要执行的一组操作(其他分支)

不同之处在于,根据所选的自动化项目类型,有两个相应的活动可以满足If语句的作用:

序列中的If语句

流程图中的流程决策

此外,如果决定可以用作活动内部的运算符。

 

我将在哪些业务场景中使用If语句?

每当有两个并非任意的操作过程时,很可能会使用If语句:

分别检查付款状态(已完成/未完成)并执行一系列操作

确保序列中先前操作的结果成功

检查帐户余额以确保有足够的钱来支付发票

检查系统中是否发生了某些事情,例如是否存在元素或图像,并基于此执行操作。

 

循环

这些是什么?

循环是基于给定条件的一组操作的重复。 在UiPath中,最重要的循环是:

--Do While

满足条件时执行特定的序列。 每次执行语句后都会评估条件。

例如,机器人可以在网站上执行刷新命令,然后检查是否加载了相关元素。 它将继续刷新-检查周期,直到元素被加载。

--While

满足条件时执行特定的序列。 在每次执行语句之前先评估条件。

在许多情况下,它可以与Do While互换,唯一的区别是进行条件验证的时间。 但是在某些情况下,一个比另一个更可取。 例如,如果一个机器人玩二十一点,它应该先计算手牌,然后再决定是否再抓一张牌。

--For Each

它对集合的每个元素执行一个活动或一系列活动。

这在数据处理中非常有用。 考虑一个整数数组。 对于每个,机器人可以检查每个数字项是否满足特定条件。

 

Switch

它是什么?

这是一种控制流语句,它根据特定表达式的值执行多个语句中的一组。 换句话说,当我们需要至少3个潜在的操作过程时,我们使用它代替If语句。 这是通过条件完成的,与If语句不同,该条件不是布尔值,而是多个。

我将在哪些业务场景中使用Switch?

具有3个潜在状态(未开始,待处理,已批准)的发票,每个发票有3套操作

根据特定条件自动向4个供应商订购原材料的过程


【RPA之家UiPath官方教程】变量,数据类型和控制流的评论 (共 条)

分享到微博请遵守国家法律