FineReport-扩展和父子格

本文详细介绍了单元格的横向、纵向扩展及不扩展方式,解析了单元格之间的父子格关系,包括左父格和上父格的概念,以及如何实现group展示效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

单元格扩展

  • 分为 横向扩展、纵向扩展、不扩展三种

    简单介绍一下 :
    1. 单元格横向扩展,就是一个单元格的所有数据集合横向输出
    在这里插入图片描述
    在这里插入图片描述
    2. 单元格纵向扩展,就是一个单元格的所有数据集合纵向输出
    在这里插入图片描述

    在这里插入图片描述
    3. 不扩展 - 就是有什么输出什么到同一个单元格里(逗号隔开)
    在这里插入图片描述在这里插入图片描述

单元格之间的联系 - 父子格

简单总结一下什么叫做父子格:
  父子格从字面上讲,就是父格汇总,子格详细,我们可以近似的理解成两个单元格之间的一种group展示效果。
  有两种情况,一种叫左父格,一种叫上父格
  1. 左父格 - 左边的单元格做一个分组的组名,右边的单元格是组内的详细数据:
在这里插入图片描述
在这里插入图片描述

  2. 上父格 - 上边的单元格做一个分组的组名,下边的单元格是组内的详细数据(上边的单元格必须是横向扩展):
在这里插入图片描述
在这里插入图片描述

  1. 当然还可以支持自定义的父子格 - 可以不挨在一起去扩展父子格
    在这里插入图片描述
  2. 如果是‘无’的话 两列直接没有任何的分组汇总的关系
    在这里插入图片描述
<think>嗯,用户问的是如何在帆软FineReport中实现报表查询结果的筛选功能。首先我需要回忆一下之前学过的相关知识,特别是参考提供的引用内容。引用[2]提到的是制作带筛选按钮的报表图表,里面涉及到了模板参数、下拉框控件、数据字典过滤条件设置。这些应该都是实现筛选功能的关键步骤。 首先,用户可能需要先连接数据库,然后新建一个普通报表。接下来要创建数据集,可能通过SQL查询获取数据。然后设置模板参数,比如添加一个参数比如“地区”,然后绑定到下拉框控件,这样用户就可以选择不同的地区来筛选数据。数据字典的设置也很重要,这样下拉框才能显示正确的选项。之后,在数据集里设置过滤条件,把控件选择的参数值传递给查询条件,这样报表数据就会根据用户的选择动态过滤了。引用[2]里的步骤4到步骤21详细说明了这些过程,特别是步骤14到21关于参数过滤条件的设置。 另外,用户可能需要了解如何将这些参数应用到图表上,比如柱形图的数据也需要根据筛选条件动态变化。这时候需要确保图表的数据集使用的是同一个参数,并且父子设置正确,避免扩展方向的问题。预览的时候,用户选择不同的参数值,报表图表都应该实时更新显示对应的数据。 可能还需要考虑多个参数的组合筛选,比如同时选择地区产品类别。这时候需要在模板参数中添加多个参数,并在数据集的过滤条件中使用多个条件,用AND或者OR连接。同时,下拉框控件的数据字典也要对应不同的字段。 用户可能遇到的问题包括参数绑定不正确导致筛选失效,或者数据字典没有正确配置导致下拉框选项为空。这时候需要检查参数名称是否一致,数据字典是否选择了正确的数据库表字段,以及过滤条件中的字段是否匹配。 总之,步骤应该是:创建参数、绑定控件、设置数据字典、配置过滤条件,最后预览测试。确保每一步都正确无误,参数传递过滤条件生效,就能实现查询结果的筛选功能了。</think>在帆软FineReport中实现报表查询结果的筛选功能,主要通过**模板参数****控件联动**实现。以下是具体操作步骤及原理--- ### 一、基础筛选功能实现 1. **新建模板参数** - 进入菜单栏:`模板 > 模板参数`,添加参数(如`region`)[^2] - 设置参数默认值(可选)或留空实现动态筛选 2. **绑定下拉框控件** ```python # 类似逻辑(非实际代码) # 控件类型=下拉框,数据字典绑定数据库字段 Dropdown(name="地区选择", bind_param="region", dataDict="SELECT DISTINCT 地区 FROM 销售表") ``` - 控件数据字典需选择对应数据库表的字段 3. **设置数据集过滤** ```sql -- 原始数据集SQL SELECT * FROM 销售表 WHERE 1=1 ${if(len(region)==0,""," AND 地区='"+region+"'")} ``` - 通过参数动态拼接WHERE条件 --- ### 二、进阶筛选功能 1. **多条件组合筛选** - 添加多个模板参数(如`product`,`date_range`) - 控件组合使用:下拉框、日期控件、复选框等 - SQL条件示例: ```sql WHERE 产品 IN (${product}) AND 日期 BETWEEN ${date_range[0]} AND ${date_range[1]} ``` 2. **图表联动筛选** - 在图表属性中绑定相同模板参数 - 设置`图表数据 > 过滤`,使用参数值过滤系列数据 --- ### 三、关键配置验证点 | 配置项 | 检查要点 | 常见问题处理 | |--------------|-----------------------------------|---------------------------| | 模板参数 | 参数名是否与SQL条件中的变量一致 | 大小写敏感问题 | | 控件数据字典 | 是否指向正确的数据库表/字段 | 未设置「实际值」导致传值错误 | | 过滤条件 | 是否包含参数引用的`${}`符号 | SQL语法错误 | | 父子设置 | 扩展方向是否冲突(尤其图表部分) | 数据重复或丢失 | --- ### 四、操作示例(含关键截图) 1. 参数面板设计 ![参数面板](https://dummyimage.com/600x400/000/fff&text=参数面板示例) *通过拖拽控件到参数面板区实现布局[^2]* 2. 数据字典配置 ![数据字典](https://dummyimage.com/600x400/000/fff&text=数据字典配置) *需同时设置「实际值」「显示值」[^2]* ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

比特本特

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值