1. 概述
1.1 应用场景
如果设计填报表格时,并不是拖入数据集字段进行单元格扩展,而是多个固定单元格组成的同一列进行填报,如下图中的「期初余额」和「期末余额」列:
此时需要使用「智能添加单元格组」,将需要填入同一个字段的单元格绑定在一起提交:
1.2 功能简介
FineReport 支持在一个内置 SQL 中为单个数据表字段绑定多个单元格,即单元格组。在提交的时候,会将单元格组拆分为多个内置 SQL进行提交。智能添加单元格组的方法如下图所示,可以拖动选中多个连续的单元格,也可以分开点击选中不连续的单元格:
注:使用单元格组绑定多个单元格时,被绑定的单元格不能是扩展的数据。
2. 示例
2.1 准备数据
新建数据查询数据集 ds1,SQL 语句为:SELECT * FROM 科目余额表,预览表信息如下图所示:
2.2 设计表格
将数据集前 8 条记录的科目代码和会计科目先填入单元格,期初余额和期末余额添加文本控件用于填报,如下图所示:
2.3 设置填报属性
添加数据集中的 4 个字段,然后添加单元格组,如下图所示:
2.4 效果预览
保存报表,点击「填报预览」,填报前 4 条记录的期初余额和期末余额,如下图所示:
提交成功后,可以看到数据库表中前 4 条记录的数据已经改变,如下图所示:
支持移动端填报,效果如下图所示:
3. 模板下载
已完成模板参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\TypicalApp\CellsArrayForm.cpt
点击下载模板:CellsArrayForm.cpt
4. 注意事项
所有设置了单元格组的字段,其绑定的单元格数要保持一致,不能出现下图所示不一致的情况:
如果出现不一致的情况,会有下图所示提醒: