反馈已提交

网络繁忙

筛选过滤

  • 文档创建者:文档助手1
  • 历史版本:26
  • 最近更新:Catqiu 于 2024-01-10
  • 1. 概述

    1.1 预期效果

    我们想从大量的数据当中,获取到符合条件的数据,例如在网格式报表中,仅展示已付订单的记录,如下图所示:

    1571297688684688.png

    1.2 实现思路

    方法一:直接通过 SQL 语句取出满足条件的的数据,如修改数据集 SQL 语句为:SELECT * FROM 订单 where 是否已付 = 'true'

    方法二:通过数据列过滤来解决,本节详细介绍该方案的用法。

    方法三:通过查询框来过滤解决,如在定义数据集时,通过在 SQL 语句中添加自定义参数${a}定义完成后,即可在参数面板中添加相关参数控件进行筛选过滤

    2. 模板准备

    在 FineReport 设计器中打开报表%FR_HOME%\webroot\WEB-INF\reportlets\doc\Primary\DetailReport\预警和间隔背景色.cpt

    点击下载模板:预警和间隔背景色.cpt

    3. 方法一:通过 SQL 语句筛选过滤

    3.1 修改模板数据集

    修改 ds1 的 SQL 语句为:SELECT * FROM 订单 where 是否已付 = 'true',如下图所示:

    8.png

    3.2 效果查看

    3.2.1 PC 端

    保存模板,点击「分页预览」,效果如本文 1.1 节所示。

    3.2.2 移动端

    App 及 HTML5 端效果如下图所示:

    2.jpg

    4. 方法二:通过数据列过滤实现

    4.1 添加过滤条件

    选中 A2 单元格,在单元格元素属性面板编辑过滤条件,设置过滤条件是否已付等于'true',如下图所示:

    1605249591482013.png

    注1:由于单元格的计算顺序,过滤条件需要设置在单元格的父格上,如这里的订单 ID,先取出已付的订单号,而其子格会自动继承父格条件,将父格子作为过滤条件。

    注2:若数据集中具有重复的列名,单元格过滤时以最后一个列的内容为准,进行过滤。

    4.2 效果查看

    效果可参考本文 3.2 节。

    5. 方法三:通过查询框筛选过滤

    5.1 具体步骤

    1)修改 ds1 语句为:SELECT * FROM 订单 where 是否已付 = '${a}'

    2)编辑参数面板,点击「全部添加」按钮,如下图所示:

    1635750560813266.png

    2)选择标签控件,修改控件值为是否已付:,设置名称为 a 的控件为下拉框控件,如下图所示:

    1605250485339289.png

    1635750801238978.png

    4)选中下拉框控件,数据字典类型设置选择自定义,实际值和显示值相同,分别为:true、false。如下图所示:

    1605250776677303.png

    5)双击 A2 单元格,在可选列 选是否已付,等于参数a

    5.2 效果查看

    5.2.1 PC 端

    保存模板,点击「分页预览」,效果如下图所示:

    1605251271982375.gif

    5.2.2 移动端

    App 及 HTML5 端效果如下图所示:

    2.gif

    6. 已完成模板

    1)方法一:

    已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Parameter\通过SQL语句筛选过滤.cpt

    点击下载模板:通过SQL语句筛选过滤.cpt

    2)方法二:

    已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Parameter\通过数据列过滤.cpt

    点击下载模板:通过数据列过滤.cpt

    3)方法三

    已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Parameter\通过查询框筛选过滤.cpt

    点击下载模板:通过查询框筛选过滤.cpt

    附件列表


    主题: 报表应用
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

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

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

    不再提示

    10s后关闭

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