91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何通過腳本實現數據動態更新

發布時間:2020-08-06 22:55:20 來源:ITPUB博客 閱讀:139 作者:rqgxy 欄目:編程語言

在數據填報的場景中,常常會遇到根據條件動態更新數據的需求,例如:在條件 A 下將頁面所有數據插入到數據庫表中,而在條件 B 下則將頁面中做了修改的數據更新到數據庫表中。

遇到這種需求,腦海中的第一個想法就是:存儲過程更新、或者 java 代碼更新。不過,這兩種實現方式的工作量和后期維護卻實在讓人頭疼不已。那么,還有其他什么實現方式嗎?而且最好是能和報表完美整合到一起的那種….

這樣的美事兒,還真有!潤乾報表提供了腳本模式的填報表制作方式,通過腳本,可以實現你各種天馬行空想法。具體怎么操作呢?且聽我慢慢道來。

下面我們以動態更新 demo 庫中雇員表數據為例,當 type 參數的值為 1 時,將頁面中 employee 表的所有數據更新入庫;否則只將做了修改的 employee 記錄更新入庫。操作步驟如下:

第一步  制作行式填報

我們先使用行式填報制作向導制作一個簡單的行式填報表,如下圖所示:

如何通過腳本實現數據動態更新

小技巧

如果對采集規則不熟悉,那么可以對第二行每個單元格設置字段名稱:對象. 字段

第二步  定義參數

在填報–參數配置頁面中新增需要的參數,本文需要定義 type 參數作為數據更新處理方式判斷依據,如下圖所示:

如何通過腳本實現數據動態更新

第三步  修改腳本,實現動態更新數據處理

來源腳本為默認生成的腳本:

如何通過腳本實現數據動態更新

其中,

B2 的語句:>EMPLOYEE=A1.query(“SELECT EID,NAME,SURNAME,BIRTHDAY,HIREDATE from EMPLOYEE”)   從 demo 庫中查詢 employee 表的數據,并將結果寫到 employee 對象中

去向腳本修改為如下圖所示的內容:

如何通過腳本實現數據動態更新

動態更新數據時,需要用到 if 函數來動態判斷,這里著重講解下 if 的相關配置:

A2:if type==1  // 判斷是否滿足 type 參數值是 1 的條件

B3:>A1.update@ik(EMPLOYEE, 雇員, 雇員 ID:EID, 姓氏:NAME, 名字:SURNAME, 出生日期:BIRTHDAY, 雇用日期:HIREDATE ; 雇員 ID)  // 當滿足 if 條件時,將 EMPLOYEE 對象中的數據全部插入到雇員表中,update@i 表示只執行插入更新操作

A4:else  // 不滿足條件,type 參數值不是 1

B5:>A1.update@k(EMPLOYEE:EMPLOYEE_old, 雇員, 雇員 ID:EID, 姓氏:NAME, 名字:SURNAME, 出生日期:BIRTHDAY, 雇用日期:HIREDATE; 雇員 ID) // 當不滿足 if 條件時,將頁面中 EMPLOYEE 對象修改了的數據更新到數據庫中,當 update 后無其他選項時,表示執行智能更新

小技巧

在不確定如何處理數據或者檢查計算結果時,我們可以使用 debug()或者 output() 函數輸出需要檢查的信息,通過觀察控制臺結果來調試和判斷。

【延伸】

類似場景:

1)type 參數是否為 1 只是我們假設的一個條件,實際的條件可能更加靈活和復雜。例如動態更新數據的判斷依據可能是某個結果集是否為空,我們就可以使用 T.len() 獲取結果集的長度,當長度為 0 時,表示結果集為空。

2)假設示例中的需求修改為:當 type 的值不是 1 時,將雇員表和 EMPLOYEE 對象的數據作比較,然后將差異數據更新入庫。而雇員表數據在 guyuan 對象中,那么此時可以將 update 的寫法改為:

A1.update@k(EMPLOYEE:guyuan, 雇員, 雇員 ID:EID, 姓氏:NAME, 名字:SURNAME, 出生日期:BIRTHDAY, 雇用日期:HIREDATE; 雇員 ID)

至此,我們就實現了在腳本模式下制作填報表,進而動態更新數據的效果。這里需要重點理解的是 if 和 update 函數的使用,不過顯然也是比較簡單的哦 ~ 當我們遇到需要用腳本進行數據處理的情況,不要害怕,盤它就對了,盤的多了,你會發現原來腳本真的是很有意思的一種處理方式。

更多填報表制作技巧在這里: http://c.raqsoft.com.cn/tag/Report?t= 填報技巧

詳情鏈接: http://c.raqsoft.com.cn/article/1550469839038 ?r=gxy


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

扎兰屯市| 九江市| 山西省| 浏阳市| 祁连县| 娱乐| 西峡县| 西安市| 三原县| 邓州市| 吐鲁番市| 武夷山市| 稻城县| 安康市| 西丰县| 大悟县| 乌鲁木齐市| 清水县| 酒泉市| 灵丘县| 准格尔旗| 乌拉特后旗| 宜都市| 丰都县| 佛坪县| 凤冈县| 湘乡市| 民县| 佛教| 礼泉县| 浙江省| 博乐市| 都匀市| 望江县| 平罗县| 方城县| 长子县| 昌邑市| 武城县| 昌都县| 维西|