填報指令碼之輕鬆搞定複雜表的資料入庫
你還認為填報表只能完成標準行列布局的資料填報?還在因表樣複雜,填報分片錯亂,設計不夠靈活而苦惱?還在為業務填報表樣設計靈活,但資料不能實時入庫而感到惋惜?
那要先“祝賀”看到這段話的你了,這個難題遇到 集算器指令碼迎刃而解了。(撒花撒花….)
下面來舉慄證實一下。
瞭解基本情況:
某單位上級下發統一報表模板其中包含 5 列(即 5 個欄位),下級操作時隨時可能在原表基礎上增加欄位,且增加的欄位不需要回填至中央資料庫,且下級報表操作人員不具備開發報表的能力。
瞭解基本情況後,綜合考慮建議採用業務填報表來實現,原因業務填報表對使用者的要求比較低,簡單來說會用 Excel 畫表就行。但是此時有一個實際問題是我們不得不考慮的,那就是業務填報表不能將資料及時的錄入到資料庫中,需要手動處理入庫這樣很可能會出現資料遺漏的現象。
疑難點:
業務填報最終以外存檔案(json/binary)的形式儲存資料,那麼,怎麼保證這些資料能在提交後即使入庫呢?
今天我們就重點說道說道,怎麼樣才能保證業務填報的資料能夠及時的入庫。
以流動資產統計表為例,操作如下:
以 sqlserver 2008 資料庫作為中央資料庫,表結構如下:
CREATE TABLE [dbo].[ZCB1](
[id] [int] IDENTITY(1,1) NOT NULL,
[zc] [varchar](50) NULL,
[ncye] [varchar](50) NULL,
[qmye] [varchar](50) NULL,
CONSTRAINT [PK_ZCB1] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
報表設計介面,如下:
其中
A3-A5, 單元格設定單元格型別為“維度格”,A3 欄位名稱為“流動資產. 資產”;
B3-C15, 單元格設定單元格型別為“數值格”;
B16 表示式為:=sum(B3:B15)
C16 表示式為:=sum(C3:C15)
此時,業務填報表就做好了,釋出到 web 端就可以實現資料的填報錄入。
注意還沒完現在的資料還是以外存檔案的形式儲存,下面重點要來了,我們透過集算器指令碼將 json 的資料入庫,指令碼(json.dfx)如下:
其中
A1 使用 connect() 函式獲取資料庫的連線
A2-A4 使用 file() read() import() 函式將外存檔案轉成序表
A6 使用 db.update() 函式將序表內容儲存至資料庫
A7 使用 db.close() 函式關閉資料來源連線
到這裡已經完成了一大步,最後,將執行指令碼與填報表的提交操作繫結。
操作如下:
1. 在報表展現的 jsp 中使用回撥函式,提交後自動執行 json.dfx 進行資料入庫操作。
2. 新建 other.jsp,呼叫 dfx 並執行,如下:
到這裡,就實現了業務填報資料及時入庫的操作了。有木有喜歡集算器指令碼多一點了。想要 get 更多抓緊關注吧。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69957599/viewspace-2669210/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 輕鬆搞定分組報表中的各種排序排序
- Vue資料驅動表單渲染,輕鬆搞定form表單VueORM
- 有什麼工具可以上載複雜的 excel 資料填報到資料庫中Excel資料庫
- 填報表之資料留痕
- 搞定angular1.x——複雜指令Angular
- 5分鐘,輕鬆搞定Oracle資料庫等保測評Oracle資料庫
- 複雜報表設計之動態報表
- 上億條資料,OurwayBI也能輕鬆搞定
- MySQL8.0輕鬆搞定GTID組複製MySql
- PDF Expert:輕鬆填寫與建立PDF表單
- 業務填報資料及時入庫
- Folder Tidy輕鬆搞定,檔案不再雜亂難整理
- MySQL8.0輕鬆搞定GTID主從複製MySql
- MySQL8.0輕鬆搞定GTID主主複製MySql
- Material Design初露鋒芒之複雜檢視輕鬆實現Material Design
- 辦公室革命,教你輕鬆搞定輕鬆玩轉ExcelExcel
- mysql資料庫之間、table增量匯入指令碼MySql資料庫指令碼
- 一份配置,輕鬆搞定Vue表單渲染Vue
- 看動畫輕鬆理解時間複雜度(二)動畫時間複雜度
- 看動畫輕鬆理解時間複雜度(一)動畫時間複雜度
- 輕鬆實現報表整合
- CnosDB 狂歡!全面支援 Helm 部署,輕鬆搞定你的分散式時序資料庫!分散式資料庫
- web 報表輕鬆實現資料異常預警功能Web
- 呼叫中心資料入庫指令碼指令碼
- 皕傑報表之填報操作
- 中國式複雜報表真的有必要存在?如何解決複雜報表
- 輕鬆理解分庫分表
- 一鍵獲取測試指令碼,輕鬆驗證“TSBS 時序資料庫效能基準測試報告”指令碼資料庫測試報告
- 一點也不復雜!Nginx 可以輕鬆搞定跨域問題Nginx跨域
- 報表開發工具FineReport報表填報資料校驗
- 輕鬆搞定Windows惡意程式碼攻擊(轉)Windows
- Oracle EBS 資料庫密碼複雜度設定Oracle資料庫密碼複雜度
- 三行程式碼嵌入 java 實現複雜 Excel 資料入庫行程JavaExcel
- Excel匯入Sqlserver資料庫指令碼ExcelSQLServer資料庫指令碼
- 多裝置相容指令碼,輕鬆拿捏指令碼
- 複製建立已有資料庫使用者、表空間、許可權的指令碼資料庫指令碼
- 輕鬆接觸Oracle資料庫中的Kill sessionOracle資料庫Session
- 複製資料庫的報錯資料庫