摘 要:本文論述了臺站級氣象雷達業(yè)務(wù)日基數(shù)、日錯情數(shù)據(jù)錄入和SQL數(shù)據(jù)庫存儲的方法,研究了雷達基數(shù)、錯情數(shù)據(jù)的查詢、顯示和統(tǒng)計,完成了基于Word的臺站級雷達月報表的自動生成和保存,實現(xiàn)了業(yè)務(wù)作自動化和信息化,簡化了工作流程,提高了工作效率。
關(guān)鍵詞:Word;雷達月報表;自動生成
1 引言
雷達臺站業(yè)務(wù)工作中,需按月上報個人和臺站的基數(shù)、錯情報表,其中日基數(shù)統(tǒng)計項目多達22項,日錯情統(tǒng)計項目多達24項,月基數(shù)統(tǒng)計項目18項,月錯情統(tǒng)計項目22項,此外還有臺站級基數(shù)、錯情統(tǒng)計表。為完成這項業(yè)務(wù)工作,雷達臺站業(yè)務(wù)人員每月統(tǒng)計、制作和校對相關(guān)報表,工作繁瑣且易出錯。為完成報表自動生成,實現(xiàn)報表制作過程自動化和信息化,簡化業(yè)務(wù)工作流程,提高業(yè)務(wù)人員工作效率,特設(shè)計并完成了本軟件。
2 設(shè)計思路
綜合應(yīng)用數(shù)據(jù)庫、word模板操作和軟件編程技術(shù),通過可視化數(shù)據(jù)交換接口,實現(xiàn)雷達業(yè)務(wù)基數(shù)和錯情數(shù)據(jù)的人機對接,簡潔顯示基數(shù)和錯情數(shù)據(jù)錄入情況,準確、及時存儲基數(shù)和錯情。利用遠程SQL數(shù)據(jù)庫技術(shù)按月查詢統(tǒng)計雷達基數(shù)、錯情數(shù)據(jù),按業(yè)務(wù)人員個人姓名累計本月基數(shù)、錯情數(shù)據(jù),顯示和導(dǎo)出包含基數(shù)表和錯情表在內(nèi)的個人業(yè)務(wù)質(zhì)量月報表;按臺站綜合統(tǒng)計全站基數(shù)和錯情數(shù)據(jù),顯示和導(dǎo)出臺站業(yè)務(wù)質(zhì)量月報表。業(yè)務(wù)人員根據(jù)值班記錄對報表各相關(guān)數(shù)據(jù)進行核對和更正,保證報表的準確性;根據(jù)業(yè)務(wù)人員要求歸類保存報表,保證報表存儲的科學(xué)性。軟件框圖如圖1所示。
3 日基數(shù)、日錯情數(shù)據(jù)的獲取、存儲和顯示
3.1 日基數(shù)的獲取
業(yè)務(wù)值班人員按小時統(tǒng)計雷達數(shù)據(jù)生成、產(chǎn)品生成、數(shù)據(jù)傳輸、產(chǎn)品傳輸和狀態(tài)信息的個數(shù),根據(jù)相關(guān)規(guī)定計算出本小時所得各項基數(shù)。根據(jù)值班人員各項工作情況和相關(guān)規(guī)定得出雷達基數(shù)據(jù)保存、雷達維護、雷達維修等項目的基數(shù)。
3.2 日基數(shù)的顯示
值班人員更改日期或點擊“查詢”后,自動觸發(fā)數(shù)據(jù)查詢功能,使用SQL數(shù)據(jù)SELECT查詢語句對各項數(shù)據(jù)進行查詢。如果數(shù)據(jù)庫中存在當日數(shù)據(jù),則顯示當日數(shù)據(jù);如果無當日數(shù)據(jù),則添加空白數(shù)據(jù),供值班人員填寫。
3.3 日基數(shù)的修改和存儲
使用遠程SQL數(shù)據(jù)庫技術(shù),利用INSERT命令語句實現(xiàn)數(shù)據(jù)的存儲。在存儲前判斷SQL數(shù)據(jù)庫中是否存在當日基數(shù)、錯情數(shù)據(jù),如果存在則利用UPDATE命令語句實現(xiàn)數(shù)據(jù)更新,保證數(shù)據(jù)庫中數(shù)據(jù)的準確性。顯示數(shù)據(jù)時提供更改數(shù)據(jù)接口,并判斷數(shù)據(jù)輸入格式是否正確,保證用戶在操作過程中數(shù)據(jù)的正確輸入。為了保證軟件界面的美觀,降低數(shù)據(jù)錄入錯誤率,無基數(shù)的項保持空白顯示。
日錯情數(shù)據(jù)和日基數(shù)數(shù)據(jù)類似,這里不再贅訴。
4 月份數(shù)據(jù)的統(tǒng)計
數(shù)據(jù)庫中存有日基數(shù)、日錯情數(shù)據(jù),使用SQL數(shù)據(jù)庫的SUM(字段名)命令實現(xiàn)月份數(shù)據(jù)中某個字段數(shù)據(jù)累計求和。
通過對比分析日基數(shù)統(tǒng)計表和月基數(shù)據(jù)統(tǒng)計表可以發(fā)現(xiàn),兩者統(tǒng)計的項目并不完全一致,比如月基數(shù)統(tǒng)計表中“數(shù)據(jù)與產(chǎn)品”項是由日基數(shù)統(tǒng)計表中“數(shù)據(jù)采集”和“產(chǎn)品生成”兩項累計求和所得。固使用“ISNULL(數(shù)據(jù)采集,0)+ISNULL(產(chǎn)品生成,0) as 數(shù)據(jù)與產(chǎn)品”SQL命令統(tǒng)計月報表中“數(shù)據(jù)與產(chǎn)品”項,“ISNULL(數(shù)據(jù)采集,0)”命令的使用是為了日基數(shù)表中各項數(shù)據(jù)為空時用0代替,保證該項整月數(shù)據(jù)都為空時月基數(shù)統(tǒng)計表中用0值代替NULL值。
統(tǒng)計月基數(shù)累計值的同時,需要按值班人員分別統(tǒng)計該月基數(shù),使用“GROUP BY姓名”實現(xiàn)按業(yè)務(wù)人員姓名分別累計當月雷達基數(shù)值。
定義C#環(huán)境下DataTable數(shù)據(jù)類型變量為dt,將SQL數(shù)據(jù)查詢結(jié)果保存于dt變量中,使用dt.Rows.Add(“合計”)在dt變量中添加一行“合計”值,顯示在DataGridView數(shù)據(jù)控件中。通過循環(huán)DataGridView所有行和列,獲取相同列中所有單元格的數(shù)據(jù),并累計求和,顯示在“合計”行相應(yīng)單元格中,實現(xiàn)“合計”行數(shù)據(jù)填充。月錯情統(tǒng)計表和臺站月統(tǒng)計表與月基數(shù)表類似,這里就不再鰲訴。
5 Word報表導(dǎo)出
5.1 開發(fā)環(huán)境配置
使用VS2005 c#環(huán)境下基于COM組件編程技術(shù),添加COM組件引用Microsoft word 11.0 Object Library類庫,添加代碼“using TestWord;”實現(xiàn)Word相關(guān)操作。
5.2 報表模板制作
每個月雷達報表的格式固定,利用Microsoft Office Word 2003按照報表模板設(shè)計、制作月基數(shù)報表、月錯情報表和臺站月報表,在需要添加姓名、日期、校對人等信息的地方添加書簽,添加書簽如圖2所示。書簽添加完成以后另存為DOT格式的Word模板。
5.3 書簽變量賦值
根據(jù)Microsoft word 11.0 Object Library類庫操作命令,編寫Word操作類WordHelper.CS,通過循環(huán)執(zhí)行下面代碼實現(xiàn)書簽的獲取和賦值。
5.4 Word模板中表格數(shù)據(jù)賦值
Word模板中月基數(shù)表格和月錯情表格各為10行(除表頭外),首先判斷DataGridView控件中顯示月基數(shù)的總行數(shù),如果大于10行則通過Word._Document.Tables[1].Cell(8, 1).Range.Rows.Add(ref oMissing)語句在表格第8行后面添加行,保證報表中表格行數(shù)與DataGridView顯示行數(shù)一致。
循環(huán)控制并獲取DataGridView控件中各單元格的數(shù)據(jù)值,通過Word._Document.Content.Tables[1].Cell(i, j).Range.Text語句為Word模板表格中單元格(i, j)賦值,實現(xiàn)報表表格數(shù)據(jù)的填充。月錯情數(shù)據(jù)、臺站月數(shù)據(jù)的導(dǎo)出與此類似。
5.5 報表顯示和保存
導(dǎo)出數(shù)據(jù)成功后,自動存儲報表至默認目錄,覆蓋原有報表文件。根據(jù)用戶不同的存儲要求,軟件將自動打開最新報表,供用戶核對、修改報表數(shù)據(jù),重命名報表名,并保存報表至指定目錄,實現(xiàn)報表的科學(xué)保存。
6 結(jié)語
本軟件利用SQL數(shù)據(jù)庫技術(shù)、word類庫操作技術(shù)和軟件編程技術(shù)完成了雷達月報表各項數(shù)據(jù)的查詢、統(tǒng)計、導(dǎo)出和報表的存儲,實現(xiàn)了報表制作過程自動化和信息化,簡化了業(yè)務(wù)工作流程,提高了業(yè)務(wù)人員工作效率。報表截圖如圖3所示。
參考文獻
[1]梁麗明.基于.NET的學(xué)校辦公自動化系統(tǒng)研究與實現(xiàn).制造業(yè)自動化,2011年,第02期,第33卷.
[2]王 、敖俊、姚愚等.氣象決策短信自動生成系統(tǒng)設(shè)計與實現(xiàn). 電腦編程技巧與維護,2012年,第02期.
[3]楊秋葉、 世麗. EXCEL操作題出題系統(tǒng)設(shè)計與實現(xiàn)[J] .新余學(xué)院學(xué)報,2011年03期.
[4]龍馬工作室. 新編Visual C# 2005程序設(shè)計從入門到精通.北京:人民郵電出版社, 2008年.
作者簡介:甄廷忠、1986年生、男、漢族、助理工程師/學(xué)士、主要研究方向:氣象雷達資料和計算機技術(shù)綜合應(yīng)用。