activities
latest
false
UiPath logo, featuring letters U and I in white

工作流活动

上次更新日期 2024年12月6日

Else If

UiPath.Core.Activities.IfElseIf

使您的项目能够根据是否满足一系列指定条件,采取多种不同的行动方案。 此活动包含一个 Condition分支、一个 Then 分支、可选的 Else If 分支和一个 Else 分支。 “ 条件” 字段必须包含一个布尔表达式,根据该表达式执行“ Then”、“ Else ”或“Else If ”分支。 Then 分支包含条件为真时要执行的活动。 可选的 Else 和 Else If 分支包含第一个条件为 false 时要执行的活动。 要添加其他 Else If 分支或 Else 分支,请在活动正文中单击“ 添加 Else If 或 Else ”,然后选择所需的分支。

此活动不需要嵌套在 IF 条件 活动中。

项目兼容性

视窗 | Windows - 旧版 | 跨平台

配置

  • 条件 - 单击 “加号”docs image 然后从菜单中选择 “条件生成器 ”,以定义执行“ Then ”分支中的活动所依据的条件。 或者,也可以选择 Excel 文件,然后选择包含条件语句的单元格,或者选择 “在高级编辑器中打开” 以输入 VB 表达式。

在条件生成器中:

  • 从“ 加号”中选择第一个值docs image 菜单。 您可以从项目笔记本、父级 Excel 文件或 Outlook 帐户中选择数据(Excel 中的单元格,Outlook 邮件中的字段),使用先前保存以备后用的另一个活动的输出值,输入文本或数字。
  • 从中间的下拉菜单中选择一个运算符,以评估第一个值:大于、大于或等于、小于、小于或等于、等于、不等于、为空、不为空、为 true , 为 false,表示开头为、结尾为、包含。
  • 如果适用,从 号中选择要与第一个值进行比较的第二个值docs image 按钮。 例如,要添加条件“Excel 单元格 B6 中的值大于 10”,对于在 Excel 中指定 B6 单元格的第一个值,您可以选择“ 大于 ”作为运算符,然后输入数字 10 作为第二个值。


要添加多个条件,请在“条件生成器”中单击“ 添加 ”,并为每个附加语句提供相同的信息。 添加多个语句时,窗口顶部会显示一个下拉菜单,您必须在其中选择何时满足条件: “全部” (AND) ,如果在所有语句都为真时满足条件,或“ 任意” (OR) 当任何语句为真时,如果满足条件。

  • Then - 包含在满足“条件”字段中的 条件 时执行的活动。
  • 添加 Else If 或 Else - 选择是否要添加 Else If 或 Else 分支:
    • Else If ” - 包含另一个 “条件” 字段,用于选择不满足第一个条件时检查的不同条件集,以及“ Then ” 分支,您可以在其中添加要在满足“ Else If ”条件时执行的活动。 您可以根据需要的不同条件集的数量添加更多 Else If 分支。
    • 否则 ” - 包含在不满足上述任何条件时执行的活动。   您无法在 Else 分支之后添加其他 Else If分支。

高级选项

选项
  • “显示名称”- 设计器面板中活动的显示名称
  • 条件 在活动主体中查看条件。
  • “私有” - 如果选中,则不记录活动中使用的数据。

Else If 活动示例:

在以下示例中,系统将对剪贴板中保存的值进行三次检查,前提是该值大于 5、 10或 15。如果不满足第一个条件,则检查下一个条件。 在选中所有 Else if 分支之前,这种情况会一直发生。

如果不满足“ Else if ”分支中的任何条件,则执行“ Else ”分支中的活动,在我们的示例中,该分支配置为在“ 消息框” 活动中显示剪贴板的值。



解决竞争条件

观察到的行为

在使用 CurrentRowindex=0 时,即使仅验证 Then 条件,也会触发 Else IF 条件。

原因

该活动在实际执行活动之前首先评估所有条件。

分辨率

Else IF 条件中添加逻辑运算符(例如 AndAlso)以跳过索引位置 0。

备注:
在实际执行 Else If 活动之前,系统会先评估所有条件。这可能会导致异常等副作用。为避免这种情况,请在 ELSE 条件中添加额外的检查。
  • 项目兼容性
  • 配置
  • 高级选项
  • 解决竞争条件

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。