- 概述
- 标注
- 复杂场景
- 凭据
- Data Service
- 关于“Data Service”活动包
- 项目兼容性
- Create Entity Record (New)
- Update Entity Record (New)
- Delete Entity Record (New)
- Get Entity Record by Id (New)
- Query Entity Records (New)
- Upload File to Record Field (New)
- Download File from Record Field (New)
- Delete File from Record Field (New)
- Create Multiple Entity Records (New)
- Update Multiple Entity Records (New)
- Delete Multiple Entity Records (New)
- 表单
- FTP
- IPC
- 暂留
- Automation Ops 管道
- 系统
- 发行说明
- 关于“系统”活动包
- 项目兼容性
- 受支持的字符编码
- “正则表达式构建器”向导
- 添加数据列
- 添加数据行
- 添加日志字段
- 加减日期
- 添加事务项目
- 添加队列项目
- 将项目附加至集合
- 将项目附加至列表
- 附加行
- 提示音
- 中断/退出循环
- 浏览文件
- 浏览文件夹
- 构建集合
- 构建数据表
- 批量添加队列项目
- 更改文本大小写
- 更改类型
- 检查 False
- 检查 True
- 清除数据表
- 从集合到数据表
- 注释
- 压缩文件/Zip 文件
- 复制文件
- 复制文件夹
- 合并文本
- 注释掉/禁用的活动
- 继续/跳过当前
- 创建文件
- 创建文件夹
- 创建列表
- 自定义输入
- 删除
- 删除文件
- 删除文件夹
- 删除存储文件
- 删除队列项目
- 禁用本地触发器
- Do While 循环
- 从 URL 下载文件
- 下载存储文件
- 启用本地触发器
- 评估业务规则
- 存在于集合中
- 提取/解压缩文件
- 从文本中提取日期和时间
- 提取文本
- 文件更改触发器
- 文件已存在
- 筛选集合
- 筛选数据表
- 文件夹存在
- 遍历循环
- 适用于文件夹中的每个文件
- 文件更改触发器 v3
- 查找和替换
- 查找匹配模式
- 对于文件夹中的每个文件夹
- 对于数据表中的每一行
- 将日期格式设置为文本
- 为值添加格式
- 从文本中生成数据表
- 获取资产
- 获取凭据/获取 Orchestrator 凭据
- 获取当前作业信息
- 获取环境文件夹
- 获取环境变量
- 获取文件信息
- 获取文件夹信息
- 获取作业
- 获取进程
- 获取行项目
- 获取事务项目
- 获取用户名/密码
- 获取队列项目
- 全局变量更改触发器
- 输入对话框
- 调用代码
- 调用 COM 方法
- 调用 PowerShell
- 调用流程
- 调用 VBScript
- 调用工作流文件
- 是否为文本匹配
- 联接数据表
- 终止进程
- 启动工作流交互
- 列出存储文件
- 日志消息
- 查找数据表
- 手动触发器
- 合并集合
- 合并数据表
- 消息框
- 修改日期
- 修改文本
- 移动文件
- 移动文件夹
- 多重分配
- 向队列新增项目
- 通知全局变量已更改
- Orchestrator HTTP 请求
- 输出数据表
- 存在路径
- 推迟事务项目
- 流程终止触发器
- 流程启动触发器
- 发出警示
- 读取列表项目
- 读取文本文件
- 读取存储文本
- 删除数据列
- 删除数据行
- 删除重复行
- 从集合中删除
- 删除日志字段
- 替换匹配模式
- 重复次数
- 重复触发器
- 重命名文件
- 重命名文件夹
- 报告状态
- 重置计时器
- 恢复计时器
- 重试作用域
- 返回
- 运行本地触发器
- 运行并行流程
- 设置资产
- 设置凭据
- 设置环境变量
- 设置事务进度
- 设置事务状态
- 应停止
- 拆分文本
- 数据表排序
- 启动计时器
- 开始作业
- 停止作业
- 停止本地触发器
- 停止计时器
- 左侧/右侧的文本
- 要大写/小写的文本
- 时间触发器
- 触发器作用域
- 超时作用域
- 更新行项目
- 更新列表项目
- 上传存储文件
- 等待下载
- 等待队列项目
- 先条件循环
- 工作流占位符
- 写入存储文本
- 写入文本文件
- 添加数据行
- AddQueueItem
- 添加事务项目
- 附加行
- BulkAddQueueItems
- 清除数据表
- 压缩 Zip 文件
- 复制文件
- 创建文件
- 创建文件夹
- 删除文件或文件夹
- 删除队列项目
- 删除存储文件
- 下载存储文件
- 提取解压缩文件
- 筛选数据表
- 获取资产
- 获取凭据
- GetJobs
- 获取队列项目
- GetQueueItems
- 获取本地路径的资源
- 获取行项目
- 获取事务项目
- 调用流程
- 联接数据表
- 列出存储文件
- 查找数据表
- 合并数据表
- 移动文件
- Orchestrator HTTP 请求
- OutputDataTable
- 存在路径
- 推迟事务项目
- 读取存储文本
- 读取文本文件
- 删除数据列
- 删除重复行
- 替换
- 设置资产
- 设置凭据
- SetTransactionProgress
- 设置事务状态
- 数据表排序
- 开始作业
- 停止作业
- 更新行项目
- 上传存储文件
- 等待队列项目
- 写入存储文本
- 写入文本文件
- 测试
- 发行说明
- 关于“测试”活动包
- 项目兼容性
- 项目设置
- Address
- AddTestDataQueueItem
- AttachDocument
- BulkAddTestDataQueueItems
- DeleteTestDataQueueItems
- GetTestDataQueueItem
- GetTestDataQueueItems
- GivenName
- LastName
- RandomDate
- RandomNumber
- RandomString
- RandomValue
- VerifyAreEqual
- VerifyAreNotEqual
- VerifyContains
- VerifyExpression
- VerifyExpressionWithOperator
- VerifyIsGreater
- VerifyIsGreaterOrEqual
- VerifyIsLess
- VerifyIsLessOrEqual
- VerifyIsRegexMatch
- VerifyRange
- 工作流事件
- Workflow Foundation
工作流活动
Try Catch 异常处理
System.Activities.Statements.TryCatch
活动主体包含以下三个字段:
- “尝试 ” - 执行的可能引发错误的活动。
- 捕获 - 发生错误时要执行的活动或活动集。
- 异常 - 要查找的异常类型。 您可以添加多个异常。
-
“最后 ” - 在执行“ Try ” 和“ Catches ” 块后要执行的活动或活动集。 仅当未引发异常或发生错误并在“ 捕获 ”部分中捕获时,才会执行此部分。
备注:- 如果活动的“ 尝试 ”部分中包含,并且“出错时 继续 ”属性的值为“True”,则系统在执行项目时不会捕获任何错误。
- “ 尝试捕获” 活动不会捕获致命异常,例如:
- FatalException
- OutOfMemoryException
- ThreadAbortException
- FatalInternalException
常见
- “显示名称”- 活动的显示名称。
其他
-
“私有”- 选中后将不再以“Verbose”级别记录变量和参数的值。
注意: 按“Ctrl + T”会将所选活动置于“ 尝试捕获” 活动的“尝试”部分中。
为了更好地了解“ Try Catch” 活动的重要性,我们创建了一个自动化程序,该自动化程序从随机名称生成器网站收集多个名称,并将其写入 Excel 电子表格。
“ 构建数据表” 活动用于创建用于存储收集到的名称的表格。 将调用另一个工作流来读取网页数据。 最后,使用“ Excel 应用程序作用域 ”活动将收集的信息写入 Excel 文件。
首先,我们运行自动化以检查是否存在任何错误。 请注意,系统将显示“ 工作流异常 ” 窗口。 “ 异常类型 ” 字段告诉我们问题所在。 这在“ 尝试捕获 ”的“捕获”部分中用作要在工作流执行期间查找的异常类型。
如上面的屏幕截图所示,运行示例工作流时,“ 附加浏览器 ”容器选取器似乎存在问题。 问题在于选取器无法识别名称为“生成随机名称 - 假名生成器”的浏览器窗口。
如要捕获此异常,我们需要执行以下操作:
- 将“ Try Catch” 活动从“ 活动 ”面板中拖动到“ 调用”工作流 活动上方。
-
将“ 调用”工作流 活动放置在“ Try Catch” 活动的“尝试”部分中。 这将监视“ 调用”工作流 活动,以防引发错误。
-
在“ 捕获 ” 部分中,从下拉列表中选择
UiPath.Core.SelectorNotFoundException
异常。 如果不存在,您可以在“ 浏览并选择 .Net 类型 ” 窗口中找到它。 -
(可选)您可以在“ 捕获 ”部分添加“消息框”活动。 您可以在“ 内容 ” 字段中填写引号之间的信息性消息,在我们的示例中为“Internet Explorer 已关闭。 它现在将打开以继续执行工作流”。 这意味着,只要捕获到异常,就会显示此消息框,以通知用户即将打开浏览器,以便成功执行工作流。
- 拖动“ 最后 ”部分中的“存在元素”活动。 这用于检查是否在相关页面 (https://www.fakenamegenerator.com) 上打开了 Internet Explorer。
- 打开 Internet Explorer 并访问上文提到的页面。
- 使用“ 在屏幕上指示” 功能选择 Internet Explorer 窗口。
- 选择“ 存在元素” 活动并编辑其选取器,使其如下所示
<wnd app='iexplore.exe' title='Generate a Random Name - Fake Name Generator - Internet Explorer' />
。 此选取器可确保“ 存在元素” 活动仅查找打开了上述页面的活动 Internet Explorer 窗口。 - 在“ 输出 ” 属性中,创建一个具有相关名称的变量,例如
browser
。 这是一个布尔变量,可帮助您确定 Internet Explorer 在指定页面上是否处于活动状态。 - 在“ 存在元素” 活动下添加“如果”活动。 这用于在 Internet Explorer 关闭时打开它,否则将继续工作流。
- 在“ 条件” 字段中,写入
browser=false
。 此条件用于验证浏览器是否已打开,并根据其值执行其他操作。 - 在“ Then ”部分中拖动“打开浏览器”活动。 如果满足 条件 (浏览器已关闭),则使用“ 打开浏览器 ”活动将其打开,而不会影响工作流。
- 在“ URL ”字段中,键入 https://www.fakenamegenerator.com。
-
将“ 其他 ”部分留空,以便在指定网站上已打开 Internet Explorer 时工作流按预期继续。
- 运行工作流,并注意以下任一情况:
- 如果 Internet Explorer 处于关闭状态:系统会通知用户即将打开 Internet Explorer,以继续执行工作流。之后将打开浏览器,收集所有预期数据并将其写入 Excel 文件。
-
如果 Internet Explorer 已打开 - 工作流将按预期执行。