反馈已提交

网络繁忙

行式引擎简介

  • 文档创建者:Suki陈
  • 历史版本:7
  • 最近更新:Carly 于 2024-01-25
  • 1. 概述

    1.1 版本

    报表服务器版本
    11.0

    1.2 功能简介

    注1:行式引擎适用于数据量较大且结构不复杂的报表。如需启用行式引擎,请先参考本文第二节确认报表环境是否支持启用。

            若不支持启用行式引擎,请参考本文第三节选取合适的替代方案。

    注2:FineReport 报表默认不启用行式引擎。

    FineReport 支持启用行式引擎,按页取数执行报表,能够大大缩短报表执行时间,提高用户体验。如下图所示:

    • 普通报表:取出全部数据后再执行报表,最后返回整体的报表结果给浏览器,用户访问到看到结果的时间=报表取数时间+报表执行时间。

    • 行式引擎报表:边取数边执行报表,执行到哪页用户就可以看到哪页,用户访问到看到结果的时间=首页数据读取时间+首页计算时间。

    2. 使用限制

    若用户在使用行式引擎时受到以下限制,可参考本文第三节选取其他合适的的分页方案。

    2.1 数据源限制

    行式引擎只适用于单数据源报表,对于多数据集报表,行式引擎无法对其实现分页显示数据。

    2.2 数据库限制

    行式引擎按页取数只适用于 Oracle,MySQL,HSQL 和 SQL Server 2012 及以上版本数据库。

    注:SQL Server 2012 及以上版本是支持行式引擎的,但在 SQL 中一定要写 order by。

    2.3 报表特性限制

    由于行式引擎是按页取数来执行报表,因此报表中每页的计算必须是独立的,即报表不能有单元格关联的复杂运算等。

    为了提高行式引擎的性能,FineReport 舍弃了一些复杂的功能,如下所示:

    • 不支持单元格过滤,不支持单元格字段汇总求和。

    • 不支持重复冻结功能。

    • 条件属性不支持行高、列宽、超级链接、行后分页、形态、控件。

    • 单元格属性仅支持从上到下扩展属性,其他属性设置均不支持。

    • 不支持悬浮元素,层次坐标,分栏,sheet 间运算。

    • 不支持展示图表,不支持子报表。

    • 不支持内容提示的单元格值,以及在自定义中使用公式。

    • 不支持分页分 sheet 导出 Excel 。

    • 不支持数据列的结果集筛选。

    • 不支持使用「$$$」进行传参。

    • 不支持存储过程。

    • 不支持报表在分页预览模式下的分组展示。

    注1:开启行式引擎后,分页预览模式下的分组效果受到影响,无法正常分组,如下图所示:
            填报预览、数据分析模式下的分组效果正常,不受影响。


    3. 示例索引

    本节提供以下方案,用于实现后台分页计算,提升报表的预览速度,用户可根据自身需求进行选择。

    适用场景方案

    单数据集表启用行式引擎,使用了行式引擎支持的数据库

    参考 启用行式引擎执行层式报表 开启行式引擎即可

    单数据集表启用行式引擎,使用了行式引擎不支持的数据库

    1)需先手动编写分页 SQL 

    注:分页预览模式下需编写分页 SQL ,填报预览、数据分析模式下无需编写分页 SQL。

    详情请参见:单数据集分页 SQL 实现层式报表 

    2)开启行式引擎即可

    详情请参见:启用行式引擎执行层式报表 

    多数据集实现分页查询

    1)使用数据库本身的行序号或者使用数据库函数生成行序号(即行号)

    2)在 where 条件中通过页码参数使得行号在一定范围内显示,并点击自定义的上一页下一页按钮时重新传入页码参数取出相应的数据

    详情请参见:多数据集实现层式报表

    行式引擎无法支持用户所需场景

    可尝试使用新计算引擎功能

    • 支持大部分主流 JDBC 数据源

    • 支持多数据源情况下的分页查询功能

    • 更少地报表特性限制

    详情请参见:新计算引擎功能

    附件列表


    主题: 性能优化
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持