finereport基础(七)

编程入门 行业动态 更新时间:2024-10-19 12:35:30

finereport<a href=https://www.elefans.com/category/jswz/34/1770030.html style=基础(七)"/>

finereport基础(七)

之前做的报表都是将数据查询后展示出的报表

今天看新的类型,填报类型,可以实现数据插入、更新、删除

一、填报应用

预期一 

思路:

(1)首先是预览时可选择的报表的分类:

可以看到有三种预览:分页预览/填报预览/数据分析

其中可以选择填报预览 进行展示 填报预览不同之处在于可以对数据进行提交

 这样就满足了提交的属性

(2)可以看到我们需要为表填写数据,所以需要设置控件来进行输入

控件类型:

 

其中控件部门有很多细节

例如:

empno、sal、comm是数字类型,可以设置小数的位数

hiredate是日期类型,需要设置返回值是日期类型否则与emp表的字段数据类型不同,插入会失败

deptno、job、mgr可以设置成下拉框控件  仅仅在可选的范围进行输入 

取消自定义功能

 

(3)关于填报报表的原理

我们知道如果是用sql向表中插入数据,需要执行 insert语句

故当我们对填报报表属性进行设置: 内置sql 并将单元格的属性值指定给该表的合适的字段(并且保证在数据类型合适、不违反约束等前提下),我们可以想到这样的程序,通过变量赋值来完成自动的插入

这就是它的原理,所以程序需要获得数据,并将数据传递给正确的参数

这里的方式是:

智能添加单元格,通过&单元格读取该单元格的属性来传递给参数,完成insert的操作 

(4)填报报表的插入极其霸道,他没有rollback功能,提交即自动comiit

并且只有当设置主键后,update和delete才会生效

结果:

提交数据(没有设置主键时)

查询数据库:

 

 

二、填报报表进阶

预期二:

 与预期一不同的是,预期二多了一步数据校验

数据校验与思路:

(1)数据校验类似于约束,用来对输入的数据进行规范化检测,若不符合则不允许插入或修改

设置数据校验:

 如图所示,不规范则会提示 

(2)若执行delete或者update,必须为该模板表中设置主键,否则执行不成功

(3)可自己设置操作:插入行/删除行来进行操作,也可以在报表web属性中-------填报页面设置添加控件----删除/增加行

即 新增删除行功能

 

也自己自己设置:

设置按钮控件指定单元格需要选择A2,即empno主键 

模板:

 

结果:

 

三、小结

1.预览时可以选择不同的报表类型,填报报表需要合适的控件支持

2.填报报表可以修改表的数据,但也可以添加数据检验作为约束执行

3.执行delete和update需要主键 insert不需要

更多推荐

finereport基础(七)

本文发布于:2024-02-25 16:40:14,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1699636.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:基础   finereport

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!