皕杰技术社区

 找回密码
 立即加入

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 326|回复: 1

这张报表为什么反应这么慢呢?

[复制链接]
发表于 2022-3-8 11:18:13 | 显示全部楼层 |阅读模式
下面是有人用皕杰报表工具设计的报表,共有80多列,加载和打开特别慢。为什么呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即加入

x
 楼主| 发表于 2022-3-8 11:18:52 | 显示全部楼层
      这是一个典型的报表优化问题,从设计者给出的部分设计内容看,用了很多getone函数到数据集中取值,每次getone函数取值都要进行条件判断,因而效率比select函数就要低很多了。用getone函数应该是有多个数据集,设计者反应sql执行的并不慢,可见反应慢的原因就出在报表的设计上用了太多的getone函数。优化的方法就是把多数据集尽量合并成一个数据集,然后用select函数取记录集,后面全部采用取值来跟随扩展。
     那么一张报表到底是使用单数据集好还是多数据集好呢?这主要看你把数据集合并后是否会多取很多数据,如果数据不多,就用一个数据集,如果会多出很多数据就用多数据集。用单数据集后就可以用select函数一次取出一个记录集,后面就直接取值,这样报表的效率就会提高很多。
    另外,能否合并为一个数据集还要看看是不是同一个数据源,如果不是同一个数据源只能用多数据集,因为在皕杰报表工具中每一个数据集是对应一个数据源的。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

本版积分规则

QQ|小黑屋|手机版|皕杰软件 ( 京ICP备14050931号 )

GMT+8, 2025-2-5 20:57 , Processed in 1.122170 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表