记录查询图元
记录查询图元的作用
配置该图元能够根据条件查询平台对象的实例记录,类似于数据库中的SELECT命令。
如何使用记录查询图元
- 在基本中,拖拽“记录查询”图元至画布中。
- 选中记录查询图元,单击,设置基本信息。
- 单击,在“记录查询”页面进行配置。
- 若上一步勾选“使用快速查询模式”,则需要指定一个预先定义的对象变量或者对象变量数组,并将该对象变量或对象变量数组拖拽到“变量”输入框中,并设置条件以及选择排序方式,即可实现根据条件和排序方式将查询结果保存在对象变量中。如下图所示,根据条件查询对象数据,并将查询结果保存在对象变量“Account”中。
图1 快速查询模式
表2 快速查询模式参数说明 参数
参数说明
变量
预先定义的对象变量或者对象变量数组。
查询结果自动保存在对象变量或者对象变量数组中。如果对象变量不是数组,则仅保存第一条符合条件的记录。如果对象变量为数组,则保存所有返回的记录。
从全局上下文拖拽或直接输入对象变量/对象变量数组。
无记录时配置空值
当根据条件查询无记录时,则变量为空值。
默认为勾选。
条件
选中对象后,该条件区域“字段”列会出现该对象的字段。单击“新增行”,可设置查询数据的条件。
在“字段”中选择要进行判断的对象字段,在“比较符”中选择相应的比较符,“值”则可从全局上下文拖拽变量或者直接输入“{!变量名}”。
(排序)排序字段/顺序
使查询结果根据某个字段进行升序或者降序排序。
- 若上一步未勾选“使用快速查询模式”,则需要指定对象并在条件中设置指定对象部分字段的值,根据条件查询符合条件的对象记录,并赋值到设置的变量上。如下图所示,查询“Account”对象“name”为“Lily”的记录,并将查询得到的对象id赋值到"var_record_id"变量上。
图2 普通查询模式
表3 普通查询模式参数说明 参数
参数说明
对象
查询的具体对象名。
剔重
若查询记录有重复值,是否需要删掉重复记录只保留一条记录。
默认不勾选,表示不删掉重复记录。
条件
选中对象后,该条件区域“字段”列会出现该对象的字段。单击“新增行”,可设置查询数据的条件。
在“字段”中选择要进行判断的对象字段,在“比较符”中选择相应的比较符,“值”则可从全局上下文拖拽变量或者直接输入“{!变量名}”。
(排序)排序字段/顺序
使查询结果根据某个字段进行升序或者降序排序。
记录行的偏移量
分页,跳过前n条记录,从第n+1条记录开始。
从全局上下文拖拽数值变量或者直接输入“{!数值变量名}”,也可以是常量。
记录行的最大数目
分页,每页最多显示的记录数。
从全局上下文拖拽数值变量或者直接输入“{!数值变量名}”,也可以是常量。
记录的总行数存入变量
查询出来的总记录数存入变量中。
从全局上下文拖拽数值变量或者直接输入“{!数值变量名}”。
(输出)源/目标
输出结果,单击“新增行”,可进行添加。
“源”为需要查询的字段,可从下拉框中选择,“目标”可从全局上下文拖拽变量或者直接输入变量名。
无记录时配置空值
当根据条件查询无记录时,则变量为空值。
默认为勾选。
- 若上一步勾选“使用快速查询模式”,则需要指定一个预先定义的对象变量或者对象变量数组,并将该对象变量或对象变量数组拖拽到“变量”输入框中,并设置条件以及选择排序方式,即可实现根据条件和排序方式将查询结果保存在对象变量中。如下图所示,根据条件查询对象数据,并将查询结果保存在对象变量“Account”中。
如何查多条数据
通过配置记录查询图元,输出对象的多行数据列表。
例如,应用中已创建设备对象“CNAME1__Equipment__CST”,且已有如下两条数据记录,通过在服务编排中配置记录查询图元,查询出该对象数据记录中所有的设备名称。实现步骤如下:
- 创建一个服务编排,名称和标签为“queryEquipment”。
图3 创建服务编排queryEquipment
- 定义服务编排的变量。
- 新增并配置记录查询图元。
- 从左侧图元列表中,拖拽“基本”下的“记录查询”至画布中。
图5 拖拽记录查询到画布中
- 选中记录查询图元,单击,如下图所示配置该图元。
图6 配置记录查询图元
表4 普通类型记录查询参数说明 参数
参数说明
对象
查询的具体对象名,从下拉框中选择对象“CNAME1__Equipment__CST”。
剔重
若查询记录有重复值,是否需要删掉重复记录只保留一条记录。
默认不勾选,表示不删掉重复记录。
条件
单击“新增行”,可设置查询数据的条件。
(排序)排序字段/顺序
将查询结果,根据某个字段,进行升序或降序排序。
记录行的偏移量
分页,跳过前n条记录,从第n+1条记录开始。
从全局上下文拖拽数值变量或者直接输入“{!数值变量名}”,也可以是常量。
记录行的最大数目
分页,每页最多显示的记录数。
从全局上下文拖拽数值变量或者直接输入“{!数值变量名}”,也可以是常量。
记录的总行数存入变量
限定查询出来的总记录数。
从全局上下文拖拽数值变量或者直接输入“{!数值变量名}”,也可以是常量。
(输出)源/目标
输出结果,单击“新增行”,可进行添加。
- “源”配置为需要查询的设备名称字段“name”,可从下拉框中选择。
- “目标”从全局上下文拖拽对象变量的“name”字段,拖拽后。
- “目标”取值为“Equipment[0].name”。
无记录时配置空值
当根据条件查询无记录时,则变量为空值。
默认为勾选。
- 将目标“Equipment[0].name”中的“0”修改为通配符“*”。
如果不改为通配符,只能查询出一条数据。
图7 将“0”修改为通配符
- 从左侧图元列表中,拖拽“基本”下的“记录查询”至画布中。
- 连接开始和记录查询图元。
在画布上,把鼠标放在起点图元上,从“+”拖动鼠标,在起点图元和记录查询图元间增加连线。
图8 连接开始和记录查询图元
- 单击画布的空白处,单击右侧,设置服务编排的出参,从全局上下文里的对象变量中拖入。
图9 设置服务编排的出参
- 单击服务编排页面上方的,保存服务编排。
- 测试服务编排能否正常执行。
- 启用服务编排。
测试成功后,单击服务编排编辑器上方的,启用服务编排。
如果服务编排创建完成后,未启用默认是属于编辑状态,不能被页面或者其他服务调用。