日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

FineReport单行与数据库交互的方法

發布時間:2023/12/9 数据库 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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列隱藏?



本文轉自 雄霸天下啦 51CTO博客,原文鏈接:http://blog.51cto.com/10549520/1919563,如需轉載請自行聯系原作者

總結

以上是生活随笔為你收集整理的FineReport单行与数据库交互的方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。