帆软报表调用mysql存储过程_FineReport单行与数据库交互的方法
FineReport单行与数据库交互的方法
1. 问题描述
我们在做一张报表填报的时候经常会遇到需要在一行进行添加动作,将该行数据直接与数据库交互,执行存储过程过程。我们可以通过每一行增加帆软“插入”按钮实现插入动作,并且在控件事件中增加和数据库的交互,但当事件过多时帆软无法稳定地实现交互,会出现数据丢失或者数据库连接出错等问题。因此,这篇文档介绍一种单行数据和数据库交互的方法
2. 实现思路
在帆软报表的设计思路中,通过模板-->报表填报属性实现和数据库的交互才是常规手段,且过程稳定不容易出错。因此,采用在按钮事件中写入JS事件,调用填报属性,并且用填报条件来限制入库数据来实现单行填报。
3. 示例
我们假设产品库存量为现有量,然后申请订购后就从库存量里减去订购的数量,在每一行的数据进入数据库后,可以看到库存量的变化
3.1打开报表
3.2编辑Js语句记录订购产品名
右键产品名称-->控件设置-->事件编辑-->新建事件-->编辑结束。写js语句,contentPane.setCellValue("G1",null,this.getValue());。将新增记录在G1单元格。
3.3调用填报功能,设置填报条件
模板-->报表填报属性-->内置SQL-->提交类型选择智能提交,在提交内容中分别将要提交的字段和单元格一一对应。
通过验证添加的数据是否是最新的数据来进行筛选。注意,G1单元格一定要设置成文本控件
3.4编辑添加按钮,调用填报事件
在倒数第二个单元格添加按钮控件,并对该控件的图标、类型进行设置。注意,所有的单元格都要设置成向下的扩展方向,带有sql语句的单元格插入行策略都是原值,按钮对应的扩展单元格是B3。
对按钮进行事件编辑,点击-->编写Js语句:_g().writeReport();调用填报功能。
3.5保存并预览
保存模板,点击填报预览,效果如下
可以看到库存量发生了变化(此处为demo数据库,无法增加新的字段,读者在实际使用的时候可以在数据库中增加一个字段,专门用来存放原始的库存量,为了页面美观,可以将H列隐藏
FineReport 技术
帆软报表调用mysql存储过程_FineReport单行与数据库交互的方法相关推荐
- 帆软报表调用mysql存储过程_FineReport调用存储过程
"总结一下本人在项目中遇到的问题,如何在数据库表名未知且作为一种查询条件的情况下查询出数据集,仅能通过FineReport+Oracle实现. 首先分析这个问题的条件和要求: 条件:只有一个 ...
- 帆软报表调用python脚本_直连数据库实时更新数据,比python强大,可视化报表这么做简直牛...
会数据库,会python,会做报表,到底有多吃香?我趁着周五没事,打开了某招聘,不到10分钟,竟然有好多HR让我换工作,不是说现在基本上不招人吗?是我太优秀了吗? 甚至还有不止一个跟我说报表+决策分析 ...
- 帆软报表调用python脚本_帆软报表(finereport)实现自动滚屏效果
例如Demo:IOS平台年度数据报表. 展示内容丰富,一个页面中存在多个图表.内容,超出了浏览器窗口的大小导致内容展示不全. 为了能够预览这个报表的全部内容,可以使用JS滚屏效果来实现. 操作步骤: ...
- FineReport单行与数据库交互的方法
1. 问题描述 我们在做一张报表填报的时候经常会遇到需要在一行进行添加动作,将该行数据直接与数据库交互,执行存储过程过程.我们可以通过每一行增加帆软"插入"按钮实现插入动作,并 ...
- 帆软报表嵌入python程序_FineReport 报表工具的使用与集成
一直以来,报表功能的开发都是应用系统开发的重点难点.近年来,一些基于Excel 的报表工具的涌现使得报表开发变得越来越简便,极大地减轻了系统开发人员的负担.本文将介绍一款优秀的报表工具---java报 ...
- 帆软报表嵌入python程序_FineReport -帆软报表开发步骤
在线学习视频: https://bbs.fanruan.com/edu/guide/finereport/3.html 1.新建数据连接 新建数据连接的目的是让 FineReport 设计器连接数据库 ...
- 组态王调用mysql存储过程_组态王与数据库通讯
记录体 "一节: ◆ 连接数据库: 新建画面"数据库连接", 在画面上作一个按钮, 按钮文本为: "连接数据库",在按钮"弹起时" ...
- 帆软报表跨域之插件开发中Controller中定义的方法实现CROS的GET跨域,且请求头带自定义属性
当我们采用CROS的跨域方案,并且header上需要加上自定义属性的时候,如果仅仅在方法中加上res.setHeader("Access-Control-Allow-Origin" ...
- 帆软报表跨域之插件开发中Controller中定义的方法实现JSONP跨域
在插件开发中,我们自己开发的Controller中的接口有时候需要对外提供,这时就涉及到跨域,常见的跨域有很多,本专栏只介绍JSONP与跨域资源共享(CORS). JSONP由于只支持GET方式,所以 ...
最新文章
- RocketMQ 实战 集群监控平台搭建
- Top100论文导读:深入理解卷积神经网络CNN(Part Ⅱ)
- 移动端屏幕自适应布局
- vue键盘事件:@keyup.down下方向键绑定事件
- python pip命令无法运行_Pip-启动程序中的致命错误:无法使用“”创建进程
- LeetCode 60. 第k个排列(回溯 康托展开)
- 【Java】异常和IO在Gourmet咖啡系统中的应用
- delphi中move函数的用法 转
- python软件设置代码字体的大小_Pycharm4.5设置字体大小以及背景颜色的方法
- 蓝天模具风扇调速软件_联力UNI FAN SL120风扇体验:模组化拼装的风扇
- ArcGis如何创建/连接企业级地理数据库
- 计算机无法打开注册表,电脑无法打开注册表怎么办
- 四、Oracle 视图
- 用Python寻找质数
- tkmybatis 子查询_最全的真假童子命查询方法!不想被忽悠就看看
- MySQL Error 1048 奇遇记
- R的可视化以及ggplot2
- 博客营销的一般流程及案例
- 多线程设计模式——Master-Salave(主仆)模式
- 一维到三维的推广(1D and 3D generalizations of models)
热门文章
- 移位运算[c][code]
- 妙招避免网络IP地址被非法修改
- WP8中 ListBox x下拉刷新 以及 ScrollViewer/ListBox 的ManipulationCompleted 失效的解决方案
- 解决启动不了VMware虚拟机以及VM升级到新的版本后出现黑屏的问题
- 基于webpack的前端工程化开发解决方案探索(一):动态生成HTML
- nginx 配置https 并解决重定向后https协议变成了http的问题
- 如何找到域名的权威名称服务器?
- 在Python中将整数附加到列表的开头
- 如何确定Windows服务器上是否打开了端口? [关闭]
- Tensorflow:如何保存/恢复模型?