邊維天 余剛 王清
摘要:報(bào)表系統(tǒng)是通過(guò)對(duì)礦冶企業(yè)生產(chǎn)工藝流程分析后,從大量的底層數(shù)據(jù)中提取出有用數(shù)據(jù),并對(duì)該數(shù)據(jù)進(jìn)行分析、處理,最終將處理后的數(shù)據(jù)以報(bào)表的方式展現(xiàn)給用戶(hù),為礦冶企業(yè)的管理者制定決策,提高企業(yè)競(jìng)爭(zhēng)力提供有力的數(shù)據(jù)支持。本文主要從礦冶企業(yè)信息化建設(shè)現(xiàn)狀的角度,分析了該報(bào)表系統(tǒng)在當(dāng)前礦冶形式下的重要作用,并對(duì)該報(bào)表系統(tǒng)的優(yōu)點(diǎn)、系統(tǒng)設(shè)計(jì)、關(guān)鍵技術(shù)等進(jìn)行了詳細(xì)介紹。
關(guān)鍵詞:報(bào)表系統(tǒng) 接口技術(shù) Jquery HTML5
中圖分類(lèi)號(hào):TP39 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2016)09-0110-01
隨著礦冶行業(yè)近些年來(lái)的飛速發(fā)展,礦冶企業(yè)的信息化步伐也明顯加快。面對(duì)激烈的競(jìng)爭(zhēng)市場(chǎng),管理者如何快速掌握企業(yè)信息,把握企業(yè)動(dòng)態(tài)是企業(yè)保持競(jìng)爭(zhēng)力的關(guān)鍵問(wèn)題。而報(bào)表系統(tǒng)是解決該問(wèn)題的基本措施和途徑。在傳統(tǒng)的報(bào)表系統(tǒng)中,員工錄入數(shù)據(jù)的環(huán)節(jié)上操作十分復(fù)雜,員工需要在每個(gè)需要錄入數(shù)據(jù)的單元格內(nèi)依次錄入數(shù)據(jù),工作效率不高。本文提出一種基于Jquery與HTML5的前端展示技術(shù),可與Excel無(wú)縫鏈接,實(shí)現(xiàn)類(lèi)Excel的基本功能,用戶(hù)在錄入數(shù)據(jù)時(shí)可直接將Excel中的數(shù)據(jù)拷貝到報(bào)表中即可,大大簡(jiǎn)化了員工在錄入數(shù)據(jù)時(shí)的繁瑣操作,提高工作效率。
1 系統(tǒng)設(shè)計(jì)
報(bào)表系統(tǒng)是根據(jù)礦冶企業(yè)的需求,將生產(chǎn)工藝流程中大量底層數(shù)據(jù)進(jìn)行提取、處理、分析,并將數(shù)處理后的數(shù)據(jù)加載到與系統(tǒng)交互的數(shù)據(jù)庫(kù)中,最終通過(guò)報(bào)表將數(shù)據(jù)展現(xiàn)出來(lái)。為礦冶企業(yè)的管理者提供企業(yè)生產(chǎn)運(yùn)營(yíng)的基礎(chǔ)數(shù)據(jù),為管理者掌握企業(yè)動(dòng)態(tài)、保持企業(yè)市場(chǎng)競(jìng)爭(zhēng)力提供有效的數(shù)據(jù)支持。
報(bào)表系統(tǒng)的組織結(jié)構(gòu)圖,如圖1所示。
用戶(hù)權(quán)限管理是信息系統(tǒng)中的重要部分,該報(bào)表系統(tǒng)中也有其對(duì)應(yīng)的權(quán)限管理。報(bào)表系統(tǒng)通過(guò)權(quán)限管理對(duì)不同部門(mén)的員工、管理者進(jìn)行權(quán)限控制,只有當(dāng)用戶(hù)具有某報(bào)表查看權(quán)限時(shí),方可有權(quán)限對(duì)該報(bào)表進(jìn)行查看或編輯。根據(jù)不同企業(yè)的不同需求,用戶(hù)可根據(jù)實(shí)際需要將不同角色的管理人員進(jìn)行特定的配置。該系統(tǒng)首先是用角色來(lái)進(jìn)行先關(guān)權(quán)限的配置,如增、刪、改、查等操作;然后在角色中添加相應(yīng)的用戶(hù)或組織機(jī)構(gòu),組織機(jī)構(gòu)可以理解為部門(mén)或崗位,一個(gè)用戶(hù)可對(duì)應(yīng)多個(gè)組織結(jié)構(gòu);最后針對(duì)不同的報(bào)表配置各自不同的角色即可。
該報(bào)表系統(tǒng)主要由產(chǎn)量統(tǒng)計(jì)表、生產(chǎn)指標(biāo)統(tǒng)計(jì)表、材料消耗統(tǒng)計(jì)表、電能統(tǒng)計(jì)表等報(bào)表組成。針對(duì)不同類(lèi)型的報(bào)表,將數(shù)據(jù)以小時(shí)為單位、或以班為單位進(jìn)行累積量的統(tǒng)計(jì)。最終結(jié)果按選礦分類(lèi)、項(xiàng)目名稱(chēng)為分組方式將統(tǒng)計(jì)分析后的數(shù)據(jù)以報(bào)表的形式展現(xiàn)出來(lái)。
2 關(guān)鍵技術(shù)
2.1 接口技術(shù)
由于礦冶行業(yè)的基礎(chǔ)數(shù)據(jù)一般都通過(guò)如Wonderware、WinCC等采集到其數(shù)據(jù)庫(kù)中。本報(bào)表系統(tǒng)開(kāi)發(fā)了對(duì)應(yīng)的接口,通過(guò)定期執(zhí)行接口服務(wù)的方式,提取基礎(chǔ)數(shù)據(jù),經(jīng)過(guò)處理后存放于報(bào)表系統(tǒng)的數(shù)據(jù)庫(kù)中,方便報(bào)表系統(tǒng)的查詢(xún)或再處理。
2.2 OpenXML技術(shù)
OpenXML是微軟提供的一套可以操作Office文件如Word、Excel等開(kāi)發(fā)接口。它能夠?qū)崿F(xiàn)從現(xiàn)有二進(jìn)制格式向基于XML的格式的高保真移植。OpenXML提供了一套XML結(jié)構(gòu)描述Office文件的標(biāo)準(zhǔn)。開(kāi)發(fā)人員可直接憑借幾行代碼就可以實(shí)現(xiàn)對(duì)Office復(fù)雜的交互操作。在該報(bào)表系統(tǒng)中主要利用該技術(shù)實(shí)現(xiàn)Excel的導(dǎo)入、導(dǎo)出功能。
2.3 Jquery+HTML5前端技術(shù)
Jquery是一套跨瀏覽器的JavaScript庫(kù),簡(jiǎn)化HTML與JavaScript之間的操作,可實(shí)現(xiàn)網(wǎng)頁(yè)的動(dòng)態(tài)效果、Ajax請(qǐng)求等功能。HTML5是萬(wàn)維網(wǎng)的核心語(yǔ)言、標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言下的一個(gè)應(yīng)用超文本標(biāo)記語(yǔ)言(HTML)的第五次重大修改。用來(lái)幫助Web應(yīng)用程序的開(kāi)發(fā)者,努力提高新元素互操作性。HTML5的出現(xiàn)使得跨平臺(tái)、跨瀏覽器的網(wǎng)頁(yè)成為可能,提高了網(wǎng)頁(yè)的可用性,改進(jìn)了用戶(hù)的用好體驗(yàn)。該報(bào)表系統(tǒng)通過(guò)該技術(shù)以類(lèi)Excel的方式在網(wǎng)頁(yè)中將報(bào)表展現(xiàn)出來(lái),可滿(mǎn)足Excel的基本操作,讓用戶(hù)在網(wǎng)頁(yè)中操作該報(bào)表時(shí)如同操作Excel一樣,如圖2。特別是在報(bào)表錄入或編輯時(shí),用戶(hù)可直接將Excel中的數(shù)據(jù)拷貝到該網(wǎng)頁(yè)中即可,提升了報(bào)表系統(tǒng)的用戶(hù)體驗(yàn),極大地提高了工作效率。
3 軟件架構(gòu)
該報(bào)表系統(tǒng)采用ASP.Net平臺(tái)、Sql Server數(shù)據(jù)庫(kù)、三層架構(gòu)開(kāi)發(fā)的B/S網(wǎng)站系統(tǒng)。通過(guò)該三層架構(gòu)的模式,將系統(tǒng)分為數(shù)據(jù)訪(fǎng)問(wèn)層、業(yè)務(wù)邏輯層、表現(xiàn)層三部分。實(shí)現(xiàn)了高內(nèi)聚、低偶爾的特點(diǎn),增強(qiáng)系統(tǒng)的可拓展性,便于維護(hù)和二次開(kāi)發(fā)。
(1)數(shù)據(jù)訪(fǎng)問(wèn)層:直接操作數(shù)據(jù)庫(kù),實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的增刪改查等操作。該系統(tǒng)中采用Linq to Sql的方式操作數(shù)據(jù)庫(kù),首先將數(shù)據(jù)庫(kù)中的數(shù)據(jù)模型映射為.Net的對(duì)象模型,然后通過(guò)數(shù)據(jù)庫(kù)表的外鍵映射表之間的引用關(guān)系,每張表對(duì)應(yīng)一個(gè)實(shí)體,表中的一個(gè)數(shù)據(jù)就對(duì)應(yīng)該實(shí)體對(duì)象的一個(gè)屬性值。當(dāng)程序運(yùn)行是,Linq to Sql會(huì)將對(duì)象模型中的語(yǔ)言集成查詢(xún)轉(zhuǎn)換為 SQL,從而實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作。
(2)業(yè)務(wù)邏輯層:主要負(fù)責(zé)對(duì)數(shù)據(jù)層的操作。即根據(jù)不同的需求,將數(shù)據(jù)進(jìn)行業(yè)務(wù)處理,再將處理后的數(shù)據(jù)傳遞給表現(xiàn)層。該系統(tǒng)通過(guò)面向接口編程的方式,利用工廠模式將不同業(yè)務(wù)處理的對(duì)象傳遞給工廠,然后再由工廠進(jìn)行對(duì)象化和模塊化的操作,使得業(yè)務(wù)邏輯層更加簡(jiǎn)潔,便于復(fù)用和二次開(kāi)發(fā)。
(3)表現(xiàn)層:主要表示W(wǎng)eb方式,也就是用戶(hù)所能看見(jiàn)的部分,在該系統(tǒng)中即報(bào)表展示的部分。在該層設(shè)計(jì)中,采用了大量的前端技術(shù)如Aspx、Jquery、Ajax、HTML5等,減少用戶(hù)與報(bào)表交互時(shí)的冗余操作,提高用戶(hù)體驗(yàn)。
4 結(jié)語(yǔ)
本報(bào)表系統(tǒng)提供的功能很好地滿(mǎn)足了礦冶企業(yè)在生產(chǎn)環(huán)節(jié)中的實(shí)際需求,能夠?qū)⑸a(chǎn)環(huán)節(jié)中的底層基礎(chǔ)數(shù)據(jù)統(tǒng)計(jì)分析后,以小時(shí)、班、日、月、年等方式作為報(bào)表展現(xiàn)給用戶(hù),為礦冶行業(yè)的管理者提供及時(shí)、穩(wěn)定的數(shù)據(jù)信息,為其提供決策依據(jù)。該系統(tǒng)已在多個(gè)礦冶企業(yè)中運(yùn)行,深受用戶(hù)好評(píng)。
參考文獻(xiàn)
[1]楊曄逵.我國(guó)有色金屬企業(yè)信息化建設(shè)研究[J].湖南有色金屬,2010(1).
[2]Richard Kiessing.構(gòu)建高性能可拓展ASP.NET網(wǎng)站.人民郵電出版社[M],2010.
數(shù)字技術(shù)與應(yīng)用2016年9期