历史版本18 :报表填报属性简介 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 描述编辑

在制作填报表时,最重要的步骤就是给数据库表中的字段绑定保存的值,通过设置模板>报表填报属性来控制。
在给字段绑定值时最常见的就是通过内置SQL绑定单元格,此时类似Excel中,可以智能添加单元格;除绑定单元格外,数据列的值还可以是常量、公式、参数等等。
还有一种方法是通过自定义事件来实现自定义提交,下面分别介绍。

2. 内置SQL编辑

点击菜单模板>报表填报属性,打开报表填报属性设置界面,增加内置SQL(一个内置SQL对应一张数据库表的操作),如下图:

222

内置SQL面板的设置步骤如下图:

2.1 选择提交类型
FineReport对于填报数据的提交类型提供了四种方式:智能提交插入提交删除提交更新提交,如下图:
222
提交类型的详细介绍请查看提交类型
注:默认的提交类型为智能提交,一般性使用的最多的也是智能提交。
2.2 选择数据库表
报表填报是指将数据填报至数据库中,那么填报到哪个数据库,哪个数据表中该怎么判断呢,因此需要在填报属性中选择填报入库的数据库表,如下图:
222
对于Oracle数据库来说,需要选择模式(oracle中的用户名),在选择表时可以通过首字母快速定位。
注:数据库名称和表名称,可下拉框选择,可手动输入名称,也可以输入参数名称实现动态填报,即动态修改填报的数据库或者是数据表,详细示例请查看动态改变填报数据库表(日报表、月报表填报)
2.3 添加字段
选择表后,点击智能添加字段按钮,会自动读取数据库中表中的所有字段,若不想添加全部,可以去掉字段前面的勾选,如下图:
222
除了使用智能添加字段来一次性添加多个字段之外,还可以直接点击添加字段按钮来添加单个字段,如下图:
222
选中某个字段,点击移除字段即可将其从列表中删除。
2.4 添加单元格
字段添加完成之后,点击智能添加单元格或者智能添加单元格组,就可以给数据列绑定单元格,如下图,点击智能添加单元格,在弹出的对话框中选择报表主体中的单元格,为数据列绑定单元格:
222
注:智能添加单元格组是指为一个数据列绑定多个单元格,将多个单元格中的数据全部填报至该字段中,详细设置使用过程请查看多个单元格绑定一个字段
我们不仅可以给数据列绑定单元格,还可以使用字符串、公式、参数等等不同类型的数据,双击报表填报属性对话框中值所在的单元格,会弹出值编辑器,如下图:
222
若用户在模板中插入了一行或一列,导致填报单元格整体偏移了一格,此时可以使用批量修改单元格,整体批量修改,如下图:
222
至此,填报属性的必要步骤设置完成。
2.5 设置提交条件
使用内置SQL填报数据,可以对填报数据进行过滤,如果web端提交的数据满足条件,则可以入库,不满足,则不入库,点击设置提交条件即可添加过滤条件,如下图:
222
提交条件是指填报数据执行sql语句的时候,如果当前执行的sql语句中的关于提交条件中的字段符合提交条件则正常执行,如果不符合条件则跳过不执行,即不入库,继续执行下一条sql语句,比如说设置提交条件为:成本价不为空,如果在填报的时候,某条记录的成本价为空,则该条记录不入库。
其应用示例请查看空白数据不入库(填报过滤)
3. 自定义事件
如下图,在报表填报属性页面,可增加自定义事件,自定义事件可通过FR提供的API接口来实现不同的类,接着将该类导入到设计器中,即可实现自定义事件,详细请参照填报自定义提交
222
注:添加了多个内置SQL后(不论几个sheet里面的内置SQL),提交时有一个执行不通过的话,后面的内置SQL就不会执行,前面的执行过的也会无效(FR填报支持事务回滚机制)。
另:在数据commit时出现异常,或者回滚时出现异常时, 如果最终是失败的,后台额外报错提示:前者是 “数据提交出错,无法回滚”,后者是 “数据回滚失败”。 前端都提示”失败”。