表单 -> 关联子表查询
关联子表查询
用户可以通过这个功能实现多个表单的关联合并查询和导出Excel。
通过解析数据中的URL字段类型,得到所有需要导出的子表单,并且将子表单的数据都导入到一个Excel中,
这里需要子表单和子表单模板之间有一些相同的字段,系统根据字段名称进行导出,如果没有任何一个相同名称的字段则这个子表的数据无法导出。
点击...更多图标按钮或者在数据上点击右键(如果存在针对行的关联子表查询),进入关联子表查询
系统支持如下几种方式:
- 普通查询: 普通的将各表数据查询导出
- 针对行查询(在行数据上右键进行选择导出): 根据某一条数据的值来初始化搜索条件然后查询导出
- 额外表查询: 查询的同时还可以主动关联另外的其他表单进行查询导出
普通查询
普通查询需要配置如下相关的信息:
- 标题: 查询模板的名称,高级用户保存后,其他用户可以直接使用这个模板进行查询。
- 子表单的关联字段: 一个url类型的字段(值中包含formId的信息,例如app/form/xxxxxx),系统会根据这个字段解析出表单,然后把这个表单的数据根据下面的“关联子表的查询条件”刷选后导出到excel中。
- 子表单模板: 设置是根据哪个表单(一般来说子表都是从这个表复制或者根据这个表产生)导出子表的信息,所有导出的子表应该和这个表单有一些相同的字段,系统根据字段名称进行导出,如果没有任何一个相同名称的字段则这个子表的数据无法导出。
- 选择导出/展示字段: 选择子表导出哪些字段。
- 查询条件(主表、子表): 这个就是在导出的时候刷选主表解析哪些数据,然后子表的是刷选导出哪些数据。
查询导出到Excel的结果如下
针对行查询(在行数据上右键进行选择导出)
根据某一条数据的值来初始化搜索条件然后查询导出
配置基本和上面的一样,只有在“主表查询条件”那里有区别,这里的查询条件可以使用一定规则,比如图中的 ${性别}==${this}的含义是
在一条数据上右键菜单选择查询的时候,如果这条数据的性别是“男”, 那么这个条件会变成 ${性别} == 男,那就会刷选出主数据中这个条件的数据然后进行子表的查询导出。
额外表查询(请注意,如果主表没有设置查询条件,额外查询不会执行)
这是一个比较特殊的模式,主要用于如果除了url中解析出来的子表单,还有另外一个表单(额外子表)的数据需要查询出来,需要使用到这个功能。
系统会将主表单的查询条件应用到额外主表上,然后查找出额外主表符合条件的数据,通过额外主表和额外子表的关联字段查找额外子表中是否有记录,如果有记录就插入到excel中,
这里额外子表和子表的模板可能字段不一样,做一个map即可,map的意思即是额外子表的字段映射到子表模板的哪个字段(Excel导出的字段)
- 额外主表和子表的字段关联: 额外主表和额外子表的关联字段,需要这两个字段的值一样,才会通过额外主表的数据找到对应的额外子表的数据,比如额外主表中的“文本”字段值为“测试”,那么额外子表中的数据中字段“文本”的值为“测试”的数据才是符合要求的,才会导入到Excel中。
额外子表与子表模板的字段映射:
« 查看创建多个表单
自定义API对接 »