查询多条数据节点
1. 简介
1.1 功能简介
查询多条数据,可以查询出目标表单中的多条数据,且查询结果(包括查询出的数据条数))支持被后续执行节点多次调用。
1.2 应用场景
该节点适用于查询出多条数据,供后续节点进行批量新增、删除、修改等操作的场景。如:
- 在车辆管理中,定期将过保的车辆查询出来,并标记为“待续保”;
- 在系统管理中,定期查询并删除过期的无用数据,防止数据冗杂;
- 在项目管理中,当某一项目的状态发生变更时,查询所有相关任务,并同步修改其任务状态。
1.3 预期效果
以项目管理场景为例,当「项目」表中某一项目的状态发生变更时,同步变更所有相关任务的状态。如下图所示:
2. 设置步骤
2.1 添加节点
根据业务需求,在已有节点后添加一个查询多条数据节点:
2.2 选择目标表单
目标表单是指,查询多条数据节点获取数据的表单,支持选择当前应用以及跨应用的表单:
2.3 添加查询条件
若仅需从目标表单中获取符合特定条件的数据,可以添加一或多个查询条件。
查询条件需要设置的内容及说明如下:
- 多个条件的关系:当存在多个查询条件时,可以选择满足「所有」或「任一」条件;
- 所有:查询条件之间的关系为「且」,仅查询出满足所有条件的数据;
- 任一:触发条件之间的关系为「或」,可查询出满足任一条件的数据;
- 目标表单字段:选择目标表单中的字段,或部分系统字段(提交人、提交时间、更新时间、流程状态);
- 过滤关系:根据目标表单的字段类型,设置不同的过滤关系,如等于/不等于、包含/不包含、为空/不为空等;
- 过滤值:可选择「节点字段值」、「自定义」或「空值」,选择自定义时,字段值需手动输入。
注:
1)不同类型的目标表单字段可设置的过滤关系与过滤值不同。如需使用子表单字段作为过滤值,则需要将过滤关系设置为「等于任意一个/不等于任意一个/同时包含/包含任意一个」,详情参见:过滤值说明;
2)支持引用字段值的前置节点包括:触发节点、查询单条/多条数据节点、新增数据(单条/多条)、计算节点和插件节点。其中,当触发方式为「定时触发 >> 自定义时间」时,不可引用触发节点的字段值;
3)目标表单中的部分字段不能设置查询条件,包括:分割线、查询、选择数据、手机、微信头像、文字识别、按钮、当前节点以及当前负责人。
2.4 设置数据获取规则
查询多条数据节点在获取最终数据时,会依据「排序规则」和「查询结果条数」设置,取排序后的前 N 条数据进行存储,便于后续节点调用。具体设置如下:
1)排序规则可分为如下两个部分:
- 排序字段:支持按照目标表单中的如下字段值进行排序:
- 表单字段:单行文本、数字、日期时间、单选按钮组、下拉框、流水号、聚合计算
- 系统字段:提交时间、更新时间、微信 OpenID、微信昵称、扩展字段
- 排序顺序:支持设置为「升序」或「降序」
2)查询结果条数:设定需要获取的最大数据条数,默认为 200 条。
注:
1)每个字段只能被添加为排序规则一次,且最多支持添加 5 个排序规则;
2)若未添加排序规则,查询多条数据节点将无顺序地从目标表单中获取 N 条数据。
3. 注意事项
3.1 通用说明
1)查询多条数据节点每次最多查询出 200 数据。
2)当查询多条数据节点的查询结果被后续执行节点调用时,若查询结果为空,则会对后续节点的执行效果产生影响,详情参见:执行节点详解。
3.2 调用「数据条数」变量
在调用「查询多条数据节点」的查询结果时,该节点会提供一个可作为单值的数字类型字段的节点变量「数据条数」供调用,且变量值为查询出的数据条数。具体说明如下:
1)调用说明
「数据条数」为动态值,会始终获取最新查询出的数据总数。即,如果查询多条数据节点在一次执行中,查询出了 2 条数据,但随后这些数据被删除,节点能够查询出的数据条数为 0,则调用数据条数变量时,变量值为 0。
2)场景举例
以生成供应商对账单为例,在提交对账申请时,查询出供应商在对应周期内的所有采购单,并回写至对账申请中,同时,需通过调用「数据条数」变量,将采购总次数,一同回写至对账申请中。
则,「数据条数」变量的调用方式如下图所示: