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