永洪社区

标题: 执行报表逻辑 [打印本页]

作者: yhdata_gOAju2Uq    时间: 2021-11-25 16:06
标题: 执行报表逻辑
用筛选组件对报表设置筛选过滤时,这个计算过程是报表前台过滤还是交给后台sql过滤?

作者: _贝贝    时间: 2021-11-25 16:06
数据集勾选数据库内计算的话 就是交给sql  没有勾选的话就是交给bi内存计算

数据库内计算

默认保留勾选,执行数据集查询时将会对SQL进行封装,计算将会下推到数据库内执行,取消勾选数据库内计算后,数据集的后续操作将不会在数据库内执行,计算将会交给内存处理。取消数据库内计算后点击刷新元数据,元数据列中原影响性能的橙色标识列将变为黑色,数据集将会放入后期处理,作用于当前数据集,调用此数据集的对象也受其影响。



作者: yhdata_gOAju2Uq    时间: 2021-11-25 16:31
永洪tech-zxx 发表于 2021-11-25 16:06
数据集勾选数据库内计算的话 就是交给sql  没有勾选的话就是交给bi内存计算

数据库内计算

感谢回答,那既然可以封装后下推到数据库计算,那sql数据集是不是没必要写成参数的形式了?sql数据集写参数的作用场景有哪些呢?
作者: yhdata_gOAju2Uq    时间: 2021-11-25 16:40
永洪tech-zxx 发表于 2021-11-25 16:06
数据集勾选数据库内计算的话 就是交给sql  没有勾选的话就是交给bi内存计算

数据库内计算

我的理解是:封装后sql应该和在sql过滤条件里写参数是一样的
作者: _贝贝    时间: 2021-11-25 16:42
数据量较大时,数据集及报表通过传参过滤相应数据,缩短报表加载时间。
数据集写了sql参数的保存后   打开报告时使用的时过滤后的数据  是已经查询出结果了的数据集
如果没写sql直接打开报告 再使用参数过滤   会先查询全部数据 再根据参数查询





欢迎光临 永洪社区 (https://club.yonghongtech.com/) Powered by Discuz! X3.4