数据助手
## 1 数据助手介绍
数据助手是可以将当前所录入的数据以及当前表单已录入的数据作为数据源对数据进行各种操作,操作后的数据可通过指定条件对目标表单进行相应的增、删、改、查等操作。
数据助手的更新可帮助用户更灵活的设计个性化功能,让用户不再单一的依赖功能模块。
### 1.1输入数据
> 1.1.1输入数据
即以表单当前所录入的数据作为数据源,可与其他表单或本表单已经录入的数据进行各种数据处理操作
计划任务的助手设计界面没有输入数据这个节点。
输入数据仅指当前所操作的数据
> 1.1.2数据源
即以当前已存在的表单已经录入的数据作为数据源,可与其他表单或本表单已经录入的数据进行各种数据处理操作。
### 1.2数据处理
即通过横向连接、追加合并等数据处理方式将几个表单的数据最终输出为所需数据。
> 1.2.1数据操作
即我们将输入的数据进行各种数据处理后,将输出的数据通过制定条件对目标表单进行增、删、改、查的操作。
> 1.2.2横向连接
通过内连接、左连接以及右连接的方式输出为一个新的数据源。

位于连接符号左右方向上的表单分别为左侧表单和右侧表单。
#### 内连接
根据连接字段,返回左右两侧表单连接字段相等的数据,即返回左右两个表单的数据交集。

#### 左连接
返回左侧表单的全部数据,根据连接字段,逐行匹配并连接右侧表单的数据,匹配不到则留空。

#### 右连接
返回右侧表单的全部数据,根据连接字段,逐行匹配并连接左侧表单的数据,匹配不到则留空。

> 1.2.3追加合并
支持将2-4张数据表,按照字段对应关系纵向连接,合并为1张数据表,可用于整合分散的同类数据。

默认将同类型且同名的字段合并为一列,同类型不同名的字段可以通过拖拽的方式合并为一列,不同类型的字段不可合并。
> 1.2.4数据筛选
支持给单张数据表添加筛选条件,可用于过滤掉无用的数据,只保留需要的数据。

> 1.2.5分组汇总
分组汇总其实就是先分组再汇总。
分组就是把分组字段值相同的数据分为一组,而汇总则是将分好组的数据各自按照指定的汇总方式计算汇总字段的值。

#### 分组
可添加多个分组字段,至少一个;
支持的字段数据类型为文本、日期、地址(包括定位)、成员/部门单选。
在选择日期和地址(包括定位)字段时,会额外多出一行,可自行选择分组方式。
日期默认选择年-月,地址默认选择省-市。
#### 汇总
文本、日期、地址类型,汇总方式只支持计数,计算该分组内该字段(非空)的记录总数。
数字类型,支持的汇总方式有求和、平均、最大值 、最小值、计数、无,默认求和。
> 1.2.6字段设置
可以对数据表中的字段进行排序、隐藏;也可以增加计算字段,对当前表单数据进行简单计算。

> 1.2.7字段排序
按单张表中的指定字段进行排序操作。

### 1.3执行动作
即将与之连接的输出结果集,根据指定条件,对目标表单进行相应的增、删、改、查等操作
> 1.3.1新增数据
页面录入数据后,和其他输入源的数据可以进行数据操作,将结果作为一条新的记录集写入到目标表单当中。

> 1.3.2修改数据
页面录入数据后,修改其他表单中的数据为当前输入的内容。

> 1.3.3删除数据
页面录入数据后,删除目标表单符合条件的数据。

> 1.3.4数据联动
页面录入数据后,根据当前录入内容,查询到需要的内容并将结果返回到前端页面

> 1.3.5功能模块
页面录入数据后,通过不同的功能模块对目标表单的数据进行操作。
### 1.4数据助手基本规则
```
数据助手的设置方式采用输入 >> 处理数据 >> 输出>>对目标表单进行操作的流程节点式设置。
默认分别有一个输入和输出节点,输入端为起点。
输入没有节点入口、可以有多个节点出口,不可命名(取其所使用的表单名字,输入数据节点以输入数据为名)。
输出只有一个节点入口、可以命名,其结果集直接展示在数据预览的数据页面。
中间计算端可以命名,横向连接只能有2个入口,追加合并至少要有2个入口,其他计算只能有一个入口;可以有多个出口,但是最多只能有一个出口是输出。
一个数据助手里面可以有多个数据操作流程,不能存在多个孤立的流程、不能存在孤立的节点,并且至少要有一个输入和输出节点。
```
### 1.5数据助手基本设置
> 1.5.1数据助手/数据节点命名
点击数据助手名称和数据节点名称,可以进行重命名。

「输入数据」、「数据源」名称不可更改,使用数据源的表单名称或直接以输入数据为名。
> 1.5.2 修改与删除
创建好的数据助手可以进行二次修改;当输入的数据发生修改后,如果触发了相应的动作数据会实时更新;不想要的数据助手还可以进行删除。

> 如:在【表单提交数据】处新建了数据助手而后修改数据助手后,当我们在提交数据时会按最新的设置操作其他表单。
### 1.6数据助手日志
> 1.6.1 日志查看
【管理应用】——【表单】——【表单设置】——【数据助手日志】可查看数据助手日志,日志只记录最新100条,运行时长超过阈值和系统错误的会进行记录。

## 2 新建数据助手
数据助手可以对一个或多个表单进行数据合并、数据筛选、数据排序、数据关联等操作,将处理结果输出为新的数据表。然后根据输出表的数据对其他表数据进行增删改查等
数据助手的数据源可以是当前表单或本应用表单。
## 3 设计数据助手
### 3.1数据助手创建
在工作台页面选择需要创建数据助手的的应用,点击编辑应用。
在应用编辑页面后的操作步骤:【表单】——【字段属性、表单属性等可创建数据助手处】。

### 3.2新建数据助手
在功能扩展处点击【数据助手】——【新建】即可新建一个数据助手

### 3.3设计数据助手
点击【编辑】进入数据助手设计界面,未设计的数据助手,会默认一个输入节点和一个输出节点,如果有多个输入源可以再继续添加,目前仅支持一个输出节点。【输出表】节点不可删除。

数据助手设计页面可进行删除节点、设置具体操作与数据助手执行的先后顺序等

> 3.3.1后置/前置执行
前置执行:表示前置提交,先执行数据助手,再提交数据。
后置执行:表示后置提交,先提交数据,再执行数据助手。
> 3.3.2助手触发条件
即设置整个数据助手执行的条件
> 3.3.3添加模拟数据
即当数据源为【输入数据】时可添加模拟数据预览效果,如不添加模拟数据,预览数据无效果
> 3.3.4执行动作顺序
设置五个执行动作的执行先后顺序
> 3.3.5禁用/开启
即可禁用或开启数据助手
## 4 节点选择-输入数据
> 数据助手的节点有四种,分别是输入节点、数据处理节点、执行动作和输出表,根据实际需求拖拉节点并设置即可。注意:输出表不可删除。
### 4.1输入数据
输入数据有两种选择,数据来源为本表即选择[输入数据],数据来源为他表即选择[数据源],根据需求可拖拉多个数据源。
『输入数据』即以当前表单所录入的数据作为数据源,可与其他表单或本表已录入数据进行各种数据操作。输入数据仅指当前所操作的数据。
> 计划任务的助手设计界面没有输入数据这个节点。
如: 页面录入数据后,和其他输入源的数据可以进行横向连接、追加合并、分组汇总等操作。
下图以追加合并为例

> 4.1.1节点配置
『输入数据』无需进行节点配置,默认显示当前表单的所有字段,如需展示系统字段(提交人、提交时间、更新时间)可点击【选择字段】——【全选】即可展示全部字段

> 4.1.2数据预览
输入数据的数据预览页面只是效果预览,如需查看效果可『添加模拟数据』,注意:如果不添加模拟数据,预览页面不会显示数据。

输入数据是当前操作的单条数据,比如提交数据时的单条数据数据 、编辑数据时的单条数据
### 4.2数据源
『数据源』即以当前已存在的表单已经录入的数据作为数据源,可与其他表单或本表单已经录入的数据进行各种数据处理操作。
如: 页面录入数据后,和其他输入源的数据可以进行横向连接、追加合并、分组汇总等操作。
下图以追加合并为例

> 4.2.1更改数据源
如需更改数据源,可点击【更改数据源】然后重新设置表单以及显示字段

> 4.2.2过滤条件
过滤条件可筛选出符合条件的数据进行数据处理,可选择筛选出符合所有或任一条件的数据

> 4.2.3数据预览
展示过滤后符合条件的数据,只展示前200条数据

### 4.3输入数据含有子表单的处理
在选择数据源的时候,如果数据源含有子表单,那么表单将会被拆分为主表单字段和子表单字段。
如果有多个子表单,那么数据源将被拆分为主表+子表1+子表2+…

> 4.3.1主表作为数据源
当我们选择主表作为数据源的时候,仅主表字段参与到数据处理。默认选择主表所有字段和第一个子表单。

> 4.3.2子表作为数据源
若需要子表字段参与数据处理,还可以选择子表字段。

当选择子表作为数据源的一部分时,那么一条数据中的多个子数据将被拆分成独立的单条数据。

> 1.如果有多个子表单,只能选择其中一个子表单作为数据源。
> 2.在没有选择具体的主表单或子表单时,默认选择主表单作为数据源。
## 5 节点选择-数据处理
> 正在马不停蹄加载中.....
## 6 节点选择-执行操作
> 正在马不停蹄加载中.....
## 7 节点选择-输出表
> 正在马不停蹄加载中.....
## 8 案例-修改商品单价
> 正在马不停蹄加载中.....