案例

评估一个或多个条件并运行命令块。

命令可用性: 本地 IBM RPA SaaS 和 IBM RPA

依赖关系

只能将其与 When (when) 和 then (then) 命令配合使用。

脚本语法

IBM RPA 的专有脚本语言的语法与其他编程语言类似。 该脚本语法在脚本文件中定义命令的语法。 您可以在 IBM RPA Studio的 脚本 方式下使用此语法。

case [--name(String)] [--executeonce(Boolean)] [--priority(Numeric)] --switches(CaseSwitches) --minimum(Numeric) --maximum(Numeric) --quantity(Numeric) (Rule)=output

输入参数

下表显示了此命令中提供的输入参数的列表。 在表中,您可以看到在 IBM RPA Studio的脚本方式及其 Designer 方式等效标签中工作时的参数名称。

设计器方式标签 脚本方式名称 必需的 接受的变量类型 描述
名称 name Optional Text 指定规则的名称,将这些条件标记为一组规则。
执行一次 executeonce Optional Boolean 仅执行规则一次。
优先级 priority Optional Number 指定定义的规则之间的优先级。
选项 switches Required CaseSwitches 条件评估选项。
最小值 minimum 选项AtLeastBetween 时必需 Number 指定运行命令块必须满足的最小条件数。
最大值 maximum 选项Between 时必需 Number 指定运行命令块必须满足的最大条件数。
数量 quantity 选项N 时必需 Number 指定要运行命令块必须满足的条件量。

options 参数选项

此参数支持以下选项:

选项 描述
任意 至少一个条件必须为 true。
所有 所有条件都必须为 true。
NONE 所有条件都不得为真。
互斥 在所有条件中,只有一个条件可以为真。
N 定义必须为 true 的条件数。
至少 定义必须为 true 的最小条件数。
介于 定义必须为 true 的最小和最大条件数。

输出参数

设计器方式标签 脚本方式名称 接受的变量类型 描述
规则 output Rule 返回包含已定义条件的参数的规则。

示例

示例 1: 如果至少有一个条件为 true ,那么以下示例将打印一条消息。

defVar --name leftOperand --type Numeric --value 3
case --switches "Any"
    when --left "${leftOperand}" --operator "Equal_To" --right 3
    when --left "${leftOperand}" --operator "Less_Than" --right 3
    when --left "${leftOperand}" --operator "Greater_Than" --right 3
then
    logMessage --message "At least one of the conditions is true" --type "Info"
endCase
logMessage --message "End Case" --type "Info"
// Result: One of the conditions is true.
// End Case

示例 2: 以下示例不会运行块内的代码块,因为没有任何条件为 true。

defVar --name leftOperand --type String --value "The American flag is red, white and blue"
case --switches "CaseSwitchesAll"
    when --left "${leftOperand}" --operator "Contains" --right red
    when --left "${leftOperand}" --operator "Contains" --right white
    when --left "${leftOperand}" --operator "Contains" --right purple
then
    logMessage --message "All conditions are true." --type "Info"
endCase
logMessage --message "End Case" --type "Info"
// Result: End Case

示例 3: 以下示例显示在不满足 when 命令定义的条件时如何运行代码块。

defVar --name verifiedCase --type String --value Name
defVar --name leftOperand --type String --value leftOperandValue
defVar --name rightOperand --type String --value rightOperandValue
case --name "${verifiedCase}" --switches "CaseSwitchesAll"
    when --left "${leftOperand}" --operator "Equal_To" --right "${rightOperand}"
then
    logMessage --message "True verified condition." --type "Info"
otherwise
    logMessage --message "False verified condition." --type "Info"
endCase