Switch
Switch 类似于选择控制语句。可用于为工作流定义多个可能的执行路径。
在 Switch 操作中,您可以添加一个或多个 Case。每个 Case 都包含一个或多个条件,且在满足定义的条件时还将执行下一步。此操作还包括一个默认块,用于指定在未满足任何条件时将执行的操作。此操作使您可以更轻松地添加复杂工作流,并减少整体的工作流执行时间。
使用 Switch 操作
要在工作流中使用此操作,请将其连接至 ThingWorx Flow。要连接到工作流,请执行以下操作:
1. 单击 并将“开发者工具”实用程序下的 Switch 操作拖动至工作区,然后将指针置于该操作上并单击 或双击该操作。Switch 操作窗口随即打开。
2. 单击 Case
3. 使用条件块指定 Case 1 的条件。可使用“与”“或”运算符指定多个条件。组内不能添加 运算符。要使用 Switch 实用工具,需将复杂的条件解析为简单级别逻辑。
* 
如果将条件设置为下列条件之一:Is True、Is Date、Is Number、Is Alphanumeric、Is Empty、Is An Array,则切勿输入“预期”值。
4. “选择操作”字段中,选择当满足用例 1 下指定条件时要执行的操作。单击“添加 Case”可添加多个用例。
5. 在“默认”部分的“选择操作”字段中,选择在未满足任何条件时要执行的操作。
6. 单击“完成”。这样便会在 Switch 与其相应操作之间自动创建连接。您无法手动创建这些连接。
示例
假设我们的要求是:只要有新文件从某供应商上载到 OneDrive 帐户,则会下载该文件并通过邮件将其作为附件发送到客户端。但是,由于存在某些下载限制,因此,当文件大小大于指定限制时,将通过邮件发送下载文件 URL 而不是附加文件。
添加和配置 OneDrive 触发器
让我们设置一个每当有新文件上载到 OneDrive 都会被触发的 OneDrive 触发器。
1. 将指针置于“开始” 图标上,然后单击 ,或双击 。触发器列表随即出现。
2. 选择 OneDrive 触发器。OneDrive 触发器配置窗口随即打开。
3. 在触发器窗口中输入信息,然后单击“保存”
配置 Switch 操作
现在,我们将在“切换”操作中定义以下条件:
如果上载文件的大小超过 1 MB,则通过邮件发送下载文件 URL。
如果上载文件的大小小于 1 MB,则会下载文件并将其以电子邮件附件形式发送。
要配置 Switch 操作,请完成下列步骤。
1. 单击 并将“开发者工具”实用工具下的 Switch 操作拖动至工作区,然后将指针置于该操作上并单击 或双击该操作。Switch 操作窗口随即打开。
2. 单击 Case。新的 Case 块随即打开。
3. 定义条件,并指定满足规定条件时将执行的操作。在第一个 Case 下,我们将检查文件大小是否大于 1024 个字节。
a. “输入”字段内,于 Switch 配置窗口右侧的“触发器数据”部分中添加数据参数“大小”。该操作会返回文件的大小。
b. “条件”列表中,选择“(数字) 大于”运算符。
c. “预期”字段中,输入 1024
d. 指定满足该条件时将执行的操作。在“选择操作”字段中,选择 Send file URL over Email 操作。
此字段会自动获取工作区上的所有可用操作,并将其显示在列表中。
4. “默认”部分下的“选择操作”字段中,指定未满足指定条件时将执行的操作。
“下一个操作”字段中,选择“下载文件”
5. 单击“完成”ThingWorx Flow 会自动将 Switch 操作与 Switch 配置窗口中指定的其他操作相连接;从而为各个 Case 创建不同的路径。
您无法手动创建、编辑或删除这些连接。若您要更改这些连接,您需要更改 Switch 配置窗口中的设置。
配置工作流中的其他操作
我们现在将配置余下操作以完成工作流。以下部分仅提供有关字段映射的信息。您可能需要输入每个操作的其他信息。
“开发者工具”-“下载文件”
1. “触发器数据” 部分下的“下载 URL”参数映射到 URL 字段。
2. “触发器数据”部分下的“名称”参数映射到“已下载文件的名称”字段。
Office 365 -“发送电子邮件”
1. “标签”字段中,输入 Send file URL over Email
2. “触发器数据”部分下的“下载 URL”参数映射到“正文”字段。
Office 365 -“发送电子邮件”
1. “标签”字段中,输入 Attach File to Mail
2. “下载文件”部分下的“文件/文件夹路径”参数映射到“源文件路径”字段。
输出架构
“切换”操作返回的输出架构如下图所示: