跳到主要内容

如何在报表中使用子表单数据进行报表分析

1. 子表单进行报表分析

表单流程表单中提交的数据,可以在报表页面中作为数据源,进行进一步的分析;

当一个表单中存在子表单时,为了支持分析,宜搭进行了一些额外的处理。


下面以一个具体场景(进货单)进行具体介绍

1.1 表单设计

进货单设计如下

进货单下有进货单号进货日期进货子表单三个组件

进货子表单下有商品名进货量两个组件


1.2 表单与报表中数据源的关系

  • 在报表页面需要选择数据集,即为流程表单/表单。报表数据集下的列字段,即为表单中的各个组件。(由于子表单组件的特殊性,不进行对应)
  • 子表单组件可以容纳其他的表单组件,并且一次可以提交多条数据
  • 子表单组件功能上是一个子表的功能,因此子表单组件会独立映射为报表中的一个独立的数据集,名称为 表单名称-子表单名称(比如:进货单子表单明细表)

选择好数据集之后,需要选择对应数据集下的列字段(对应表单里面的组件)

进货单数据集下,有进货单号,进货日期两个列字段

进货子表单数据集下,有商品名称进货量两个列字段


1.3 表单数据与报表数据的关系

  • 表单提交的每一条数据都有一个唯一的 ID,在报表那边对应的字段是实例 ID
  • 子表单组件中的数据会放在 报表子表单数据集下,这些数据都有一个字段父实例 ID,值都为当前表单实例的 ID。


下面以进货单

先在进货单下提交两条数据,效果如图:

  • 在报表中,进货单进货单-子表单两个数据集下的数据,效果如图:


进货子表单的数据会放在进货单-进货子表单这个报表数据集下,并且父实例 ID 等于主表的实例 ID。


2. 将表单数据和子表单数据一起展示

有些业务场景需要将表单数据以及子表单数据放在一起分析,这时可以用「多表关联」来实现

两张表的数据要联系在一起,可以用 主表的实例ID = 子表单数据的父实例ID进行关联


比如,要关联进货单进货单-进货子表单两张表的数据,我们可以这么配置:

  • 选择数据集时,选择多表关联」;
  • 数据表」选择「进货单进货单-进货子表单两张表;
  • 选择新增关联,主表选择进货单,字段选择「实例ID」; 关联表选择进货单-进货子表单,字段选择父实例ID」;
  • 选择两张表各自的字段;

2.1 关联关系介绍

左关联就是外关联,会把 A 表和 B 表的所有数据显示出来,内关联只展示 A 和 B 有关联关系的字段内容。

(1)内关联

两边数据关联,会取交集,只有两边都可以匹配上的数据才展示

(2)左关联

两边数据关联,以左表的数据为准


3. 注意事项

3.1 主表和子表都不能超过 1w 条数据。

3.2 聚合查询会使用到主子表的关联字段做分组,因此聚合查询时需要包含关联字段作为展示字段。

3.3 2.0报表多表关联不支持使用报表公式。

3.4 筛选条件/过滤条件 只能作用于主表。

3.5 关联字段不可使用多选/复选型字段。

3.6 子表单不支持报表筛选,可以考虑使用中间表达成诉求。



宜搭为了更好的优化宜搭使用手册内容和质量,占用您3-5分钟时间,辛苦填写一下文档反馈问卷。文档反馈问卷是匿名提交,同时问卷信息仅用于宜搭文档体验反馈收集,感谢您对宜搭的支持!

点此填写调研问卷


--------------------获取宜搭最新信息,欢迎关注我们--------------------

Copyright © 2024钉钉(中国)信息技术有限公司和/或其关联公司浙ICP备18037475号-4