高春光 (1966-)
男,浙江中控技術股份有限公司PIMS產(chǎn)品副總監(jiān),高級工程師,有20年企業(yè)信息化、自動化行業(yè)的項目開發(fā)及實施經(jīng)驗。
摘要:本文比較了PIMS與EXCEL做報表的優(yōu)缺點,給出了PIMS與EXCEL在報表方面的互補性,就這一方案的關鍵的技術進行了詳細的討論,特別注明了在整個報表生成系統(tǒng)中需要注意的地方。
關鍵詞:PIMS;EXCEL;DBMS
Abstract: This article compares the advantages and disadvantages of using PIMS and EXCEL for report, and provides their complementary prospects. We discuss in detail the key technology of this scheme, and particularly point out the precautions in the whole report generation system.
Key words: PIMS; EXCEL; DBMS
1 前言
PIMS(Process Information Management System)是浙江中控技術股份有限公司的軟件平臺,它能夠向下集成各種控制系統(tǒng)和控制設備的數(shù)據(jù),并能把這些數(shù)據(jù)開放給ERP、OA等其他應用程序;在IE上能逼真顯示現(xiàn)場生產(chǎn)的流程圖,并能通過IE在局域網(wǎng)和廣域網(wǎng)上瀏覽這些信息;能很順暢的讀寫各種關系數(shù)據(jù)庫的數(shù)據(jù),并能把這些數(shù)據(jù)按照用戶地要求用各種模式顯示在頁面上。但是面對企業(yè)林林總總、千奇百怪,而且需要經(jīng)常變動的報表需求時就有些棘手了,最典型就是大型鋁廠或電廠等企業(yè)實驗室的化驗數(shù)據(jù)的化驗指標和評價標準可能會經(jīng)常變動并且往往帶有行業(yè)特性,PIMS傳統(tǒng)做報表方法來滿足這些企業(yè)的需求就比較困難了,這些方法大都有如下一些共同的弊端:
· 常常需要定制開發(fā),往往造成工程周期長、成本高的問題;
· 一旦用戶的需求改變時就要專人進行修改維護;
· 對用戶的使用人員要求高;
· 在一個項目中用過后,在另外一個項目中就不能使用了。
國內(nèi)有許多用戶在用信息管理系統(tǒng)之前大都習慣用EXCEL做報表,對EXCEL比較熟悉,支持行間、單元格間復雜計算,能方便地做一些統(tǒng)計工作,輕松制作交叉報表。所以當前有很多企業(yè)都習慣用EXCEL做報表,但是單純的EXCEL報表也存在一些弊端,大致如下:
· 數(shù)據(jù)難以在IE上進行靈活的統(tǒng)計和查詢;
· 無法有效的限制數(shù)據(jù)錄入員隨意修改數(shù)據(jù);
· 無法給不同的用戶分配不同的權限,讓其查詢不同的信息。
綜上所述,PIMS報表系統(tǒng)的缺點剛好是EXCEL的強項,而PIMS的優(yōu)勢又剛好彌補了EXCEL的弱勢,如果能巧妙地應用PIMS和EXCEL優(yōu)勢,規(guī)避這兩者的弱勢做一套報表系統(tǒng),產(chǎn)生的報表不僅能滿足用戶多變的需求,而且能讓用戶不論在何時何地都能方便安全的查詢報表信息。
2 系統(tǒng)結構設計
如圖1所示,整個報表生成系統(tǒng)分為三個部分:
圖1 系統(tǒng)結構圖
第一部分:通過EXCEL錄入原始數(shù)據(jù),并在EXCEL中對這些數(shù)據(jù)進行計算,把計算的有用信息按照一定的格式存儲在DBMS里。
第二部分:PIMS從DBMS中取出數(shù)據(jù),把這些數(shù)據(jù)按照用戶的需求進行組合,按照用戶期望的格式進行排版后發(fā)布到網(wǎng)上。
第三部分:網(wǎng)上的用戶通過不同的權限訪問PIMS發(fā)布的數(shù)據(jù),并可以根據(jù)需要下載到本地計算機上。
下面就這三步進行詳細的探討。
3 系統(tǒng)技術路線選擇
系統(tǒng)的第一部分可以發(fā)揮EXCEL的優(yōu)勢進行數(shù)據(jù)錄入,系統(tǒng)的第二部、第三部分可以發(fā)揮PIMS的優(yōu)勢進行信息發(fā)布、查詢。
3.1 報表信息錄入
報表中原始數(shù)據(jù)的計算過程全部在EXCEL中完成,可以充分利用報表的行、單元格及表之間能互相計算的特性,通過計算在原始數(shù)據(jù)的基礎上提取有用的信息,然后綜合考慮數(shù)據(jù)庫存儲的方便性及用戶希望數(shù)據(jù)的顯示方式,把這些有用的信息存儲到數(shù)據(jù)庫,數(shù)據(jù)存儲到數(shù)據(jù)庫的過程用EXCEL中用VBA腳本實現(xiàn)。
整個數(shù)據(jù)庫的實現(xiàn)步驟按照先后順序詳細介紹如下:
· 把原始數(shù)據(jù)錄入到EXCEL,在EXCEL中設置計算公式把數(shù)據(jù)進行分析、計算后得出有用的信息,把這些有用的信息按照一定的格式擺放在EXCEL文件中。這些有用數(shù)據(jù)就是最終的報表數(shù)據(jù)了,所以千萬注意,這些數(shù)據(jù)在EXCEL中的存放格式一定要能方便地保存到關系數(shù)據(jù)庫并能滿足用戶的查詢要求。
· 在關系數(shù)據(jù)庫中建立數(shù)據(jù)庫和表,建立表結構時一定要考慮有助于EXCEL報表的格式和參數(shù)變動,要有充分的靈活性。
· 在EXCEL端建立ODBC數(shù)據(jù)源,以便把數(shù)據(jù)寫到DBMS,DBMS與EXCEL可以在同一臺電腦上,也可以在不同的電腦上,同時也可以分布在多臺電腦上,主要是便于多個人錄入數(shù)據(jù)。
· 在EXCEL報表中加入一個按鈕,在按中編寫VBA代碼,通過這些代碼把報表數(shù)據(jù)寫到DBMS。可以根據(jù)用戶的需求整個報表一次性寫入或者逐條寫入,寫入之前對數(shù)據(jù)的合法性進行檢查,保證寫到數(shù)據(jù)庫中的數(shù)據(jù)都是有用的數(shù)據(jù)。
上面描述的數(shù)據(jù)寫到關系數(shù)據(jù)庫的方式不是在其他應用程序中調(diào)用EXCEL的方式,而是在EXCEL中用VBA腳本實現(xiàn),如果在其他應用程序中調(diào)用EXCEL會使系統(tǒng)的速度和穩(wěn)定性都很不好,而從EXCEL中用VBA主動往關系數(shù)據(jù)庫寫數(shù)據(jù)就避免了這些問題。
圖2 EXCEL中的報表示例
3.2 數(shù)據(jù)的整理和發(fā)布
在PIMS中建立與關系數(shù)據(jù)庫的連接,通過報表控件在PIMS中按照用戶的要求報表查詢功能,最好是能讓用戶自定義查詢的功能,這樣用戶就可以根據(jù)需要選擇不同的表、字段、查詢條件進行自由查詢。全部功能完成后,通過PIMS的WEB功能把這些數(shù)據(jù)和功能發(fā)布到IE上,這樣網(wǎng)上的客戶端就可以通過IE瀏覽到報表信息了。
整個數(shù)據(jù)整理和發(fā)布的具體實現(xiàn)步驟如下:
· 在PIMS端建立與關系數(shù)據(jù)庫連接的ODBC數(shù)據(jù)源。
· 建立一個PIMS工程,并在此工程中設定好自由查詢條件。
· 做好數(shù)據(jù)的導出功能,確保每一張報表都能以.CSV格式導出到客戶機上。
· 在PIMS中設置特權用戶對一些沒用的信息進行清理。
· 給每個查詢用戶設定權限,使每個人的權限和他看到的報表一一對應。
· 設定完畢后把所有的信息發(fā)布到網(wǎng)上。
3.3 報表信息查詢
上面的所有工作完成后,查看報表的用戶只要用自己的用戶名和密碼登錄PIMS系統(tǒng)就可以了看到自己所關心的信息了。
客戶端上查詢數(shù)據(jù)的詳細步驟如下:
· 確保客戶端能連通PIMS服務器;
· 通過用戶名和密碼在IE登陸到PIMS工程;
· 錄入查詢條件,查詢出所需要的數(shù)據(jù);
· 在需要時把數(shù)據(jù)以.CSV格式導出到本地計算機上;
· 根據(jù)查詢信息作出決策活動。
圖3 在PIMS發(fā)布的報表查詢
4 結束語
本報表生成系統(tǒng)的好處是同時用到了PIMS和EXCEL的優(yōu)點而有避開了這兩者的缺點,通過EXCEL錄入數(shù)據(jù),并把所有復雜計算工作交給了EXCEL,通過PIMS查看報表,不同的錄入和修改的人可以各自在自己的電腦上操作,查看信息的人只需要打開IE就可以瀏覽,對所有的操作者技術要求都很低,適合于大部分工廠、企業(yè)的特征。
不僅是PIMS可以和EXCEL結合做出完美的報表功能,其他應用程序也可以用類似的方法,希望本文能起到拋磚引玉的作用,啟發(fā)廣大讀者想出更多類似做報表的好辦法。
參考文獻
[1] 浙江中控技術股份有限公司. 《生產(chǎn)信息管理系統(tǒng)軟件PIMS V3.6使用說明書》,2007年3月.