一種基于xml的web模式的報表生成方法
【技術領域】
[0001]一種基于XML的WEB模式的報表生成方法主要是用于計算程序報表定義領域。
【背景技術】
[0002]報表方法模型應用廣泛,比如分布在不同地域的總公司與子公司間、上級統(tǒng)計局與其各個下級統(tǒng)計局間、稅務局與其管轄范圍內的各個公司企業(yè)間等。以往的報表方法多采用如下兩種方式:1)報盤:即各下屬單位安裝相應報表軟件,按時生成報表數(shù)據(jù)并存盤,再將盤送交其上級單位;2)兩層WEB廣域網(wǎng):采用專線將上級與其各個下屬單位聯(lián)成廣域網(wǎng),采用數(shù)據(jù)庫服務器與客戶端軟件實現(xiàn)。這兩種方式,使用起來都不理想,其共同缺點是軟件升級及維護費用較大;“報盤”用戶提交數(shù)據(jù)非常麻煩,而“兩層WEB廣域網(wǎng)”網(wǎng)絡費用昂貴。隨著Internet的普及以及XML的推出,我們提出了 “基于XML具有三層WEB模式的網(wǎng)上報表方法技術”,它利用Internet組網(wǎng),采用先進的三層WEB瘦客戶端模式,同時使用XML作為數(shù)據(jù)傳輸?shù)拿浇?。從而它具有成本?聯(lián)網(wǎng)費用、軟件開發(fā)費用、維護費用)、易于維護及易于使用的特點,很有應用價值。
[0003]一般的報表方法主要是二種方式:
“報盤”:使用不方便,尤其是當下級單位與上級單位距離較遠時,交互性差。
[0004]“傳統(tǒng)的兩層WEB模式”:不易于擴充,費用較高(軟件開發(fā)、維護及硬件投資)。
[0005]—種基于XML三層WEB模式的Internet報表方法結構靈活,擴充方便:當客戶端數(shù)量增加導致系統(tǒng)速度變慢時,可增加中間層(應用服務器)的數(shù)量;培訓、維護、聯(lián)網(wǎng)費用低:由于Internet及瀏覽器應用已很普遍,客戶端使用的特殊文件(DTD或Schema文檔、XML編輯器)可通過瀏覽器下載(軟件的升級對客戶端的影響只有這些,即對下面兩層的修改對客戶端透明。
【發(fā)明內容】
[0006]我們通過國家專利檢索沒有發(fā)現(xiàn)關于此系統(tǒng)方面的資料。一種基于XML三層WEB模式的Internet報表方法其系統(tǒng)主要內容是底層為數(shù)據(jù)庫服務器,可具體采用各種數(shù)據(jù)庫,例如:
Oracle> Sybase、Informix、SQL Server等;中間層為應用服務器,實現(xiàn)系統(tǒng)的應用邏輯功能,主要為 Web Server,可使用 Microsoft 的 Internet Informat1n Server 等借助于DHTML、CGI等技術實現(xiàn);上層為客戶端(非常瘦),簡化為只有一個瀏覽器,可采用InternetExplorer實現(xiàn)。假如系統(tǒng)數(shù)據(jù)量不大并且系統(tǒng)的應用邏輯功能不復雜,實現(xiàn)時中間層(應用服務器)和最底層(數(shù)據(jù)庫服務器)可共用一臺硬件服務器。下面兩層位于上級單位(比如總公司),在單位內部還可有其Intranet或局域網(wǎng),以實現(xiàn)其內部或進一步的管理。最上層(瀏覽器)位于各下級單位(比如子公司),其主要部分為:
1.底層(數(shù)據(jù)庫服務器):只完成數(shù)據(jù)庫本身的功能,即數(shù)據(jù)的存儲、索引、檢索等。
[0007]2.中間層(應用服務器):實現(xiàn)系統(tǒng)的應用邏輯功能。將上層(瀏覽器)發(fā)來的XML文檔解析為數(shù)據(jù)庫數(shù)據(jù),實現(xiàn)對底層(數(shù)據(jù)庫)的操作;另一方面將從數(shù)據(jù)庫提取的結果數(shù)據(jù)合成為XML文檔,發(fā)給上層(瀏覽器)。
[0008]3.上層(瀏覽器):實現(xiàn)報表的顯示及報表的提交。目前較高版本的瀏覽器支持XML (比如Internet Explorer 4.0及Netscape 4.0以上),所以瀏覽器可方便地顯示及提交用XML文檔表示的報表數(shù)據(jù)。由于XML文檔的結構性(可用DTD或Schema定義文檔格式,實際中每個報表對應上級單位定義好的一個DTD或Schema文檔,為文本文件),它本身為文本文件,所以報表的XML文檔可離線(和Internet斷開)用任何一個文本編輯器根據(jù)其對應的DTD或Schema編輯生成,通過瀏覽器提交,但這種方式要求用戶能讀懂DTD或Schema文檔。若想使用戶界面進一步改善,可提供用戶一個簡單的XML編輯器,實現(xiàn)時:1)使用現(xiàn)成的,目前有不少商用的或免費提供的XML編輯器;2)自己開發(fā),可使用Microsoft提供的XML支持類MSXML用VB、VC++, VJ++等實現(xiàn),編程任務量不大。
[0009]其實現(xiàn)如下:
1.報表數(shù)據(jù)提交;客戶端生成XML文檔有兩條途徑:I)用戶根據(jù)上級單位提供的報表數(shù)據(jù)對應的DTD或Schema在線或離線利用文本編輯器生成報表的XML文檔,然后通過XML解析器分析文檔的正確性(XML解析器有現(xiàn)成的,例如Internet 5.0就捆綁提供),然后通過瀏覽器將XML文檔發(fā)給應用服務器;2 )同第一種途徑的區(qū)別是,它通過XML編輯器生成XML文檔。XML編輯器一般具有編輯、修改和語法檢查功能。應用服務器接收到XML文檔后,通過XML解析器還原報表數(shù)據(jù),以對下層(數(shù)據(jù)庫服務器)進行相應處理。
[0010]2.數(shù)據(jù)發(fā)布;在具體應用中,下級單位用戶可能要查詢上級單位提供的數(shù)據(jù)。實現(xiàn)時查詢的數(shù)據(jù)可以分兩種類型:1)報表結果數(shù)據(jù):這種數(shù)據(jù)可定期生成(例如某月報表),上級單位可定期生成其XML文檔,用戶可通過瀏覽器瀏覽;2)不規(guī)整的數(shù)據(jù)查詢:可通過中間層使用CG1、DHTML或Java Applet等技術實現(xiàn)。
[0011]3.中間層與下層的接口;可采用中間層的各種嵌入式SQL實現(xiàn)。由于XML的應用日趨廣泛,一些數(shù)據(jù)庫直接支持XML,即可直接將XML文檔數(shù)據(jù)存于數(shù)據(jù)庫中,另一方面還可以XML形式提供查詢結果,這時可簡化中間層。
[0012]4.上級單位的局域網(wǎng)與系統(tǒng)的結合;上級單位的局域網(wǎng)可共用下層或共用下面兩層(形成其Intranet),以進一步對數(shù)據(jù)進行處理。比如局域網(wǎng)共用下層(即數(shù)據(jù)庫服務器),這時可采用其原來的(或新開發(fā)的)兩層WEB軟件,對數(shù)據(jù)進行各種分析查詢,甚至定期生成客戶端瀏覽器需要的查詢XML結果文檔。
[0013]現(xiàn)結合上述進行說明:
數(shù)據(jù)庫采用Oracle ;應用服務器采用Internet Informat1nServer ;瀏覽器采用Internet Explorer 5.0。局域網(wǎng)采用Windows NT,安裝于應用服務器上;局域網(wǎng)客戶端采用Windows 98 ;局域網(wǎng)軟件開發(fā)采用傳統(tǒng)的WEB結構,共用底層Oracle數(shù)據(jù)庫,客戶端軟件采用PowerBuilder以對數(shù)據(jù)進行進一步處理。
[0014]通過綜合報表方法的使用,基本上達到了預期的目的。
【主權項】
1.一種基于XML的WEB模式的報表生成方法其特征是底層為數(shù)據(jù)庫服務器,可具體采用各種數(shù)據(jù)庫,中間層為應用服務器,實現(xiàn)系統(tǒng)的應用邏輯功能,主要為Web Server,可使用 Microsoft 的 Internet Informat1n Server 等借助于 DHTML、CGI ;上層為客戶端(非常瘦),簡化為只有一個瀏覽器,可采用Internet Explorer實現(xiàn)。
2.根據(jù)權利要求1的底層(數(shù)據(jù)庫服務器),主要是只完成數(shù)據(jù)庫本身的功能,即數(shù)據(jù)的存儲、索引、檢索等。
3.根據(jù)權利要求1的中間層(應用服務器)主要是實現(xiàn)系統(tǒng)的應用邏輯功能;將上層(瀏覽器)發(fā)來的XML文檔解析為數(shù)據(jù)庫數(shù)據(jù),實現(xiàn)對底層(數(shù)據(jù)庫)的操作;另一方面將從數(shù)據(jù)庫提取的結果數(shù)據(jù)合成為XML文檔,發(fā)給上層(瀏覽器)。
4.根據(jù)權利要求1的上層(瀏覽器)定義主要是實現(xiàn)報表的顯示及報表的提交。
5.目前較高版本的瀏覽器支持XML(比如Internet Explorer 4.0及Netscape 4.0以上),所以瀏覽器可方便地顯示及提交用XML文檔表示的報表數(shù)據(jù)。
【專利摘要】一種基于XML的WEB模式的報表生成方法主要是采用先進的三層WEB瘦客戶端模式,同時使用XML作為數(shù)據(jù)傳輸?shù)拿浇椤?br>【IPC分類】G06F17-30
【公開號】CN104572694
【申請?zhí)枴緾N201310489680
【發(fā)明人】不公告發(fā)明人
【申請人】鎮(zhèn)江鼎拓科技信息有限公司
【公開日】2015年4月29日
【申請日】2013年10月18日