專(zhuān)利名稱(chēng):管理系統(tǒng)報(bào)表生成方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及報(bào)表生成方法和裝置,特別涉及一種管理系統(tǒng)報(bào)表生成方法和裝置。
技術(shù)背景報(bào)表系統(tǒng)用于創(chuàng)建報(bào)表模板、支撐報(bào)表的功能實(shí)現(xiàn)、生成報(bào)表。通常,報(bào)表系統(tǒng)需要提 供所見(jiàn)即所得的報(bào)表模板創(chuàng)建功能,以使報(bào)表模板的創(chuàng)建快速、高效。下面對(duì)報(bào)表系統(tǒng)所涉 及的基本概念進(jìn)行簡(jiǎn)要介紹-模板元素構(gòu)成報(bào)表模板的基本元素;在創(chuàng)建報(bào)表模板時(shí),通常以一些變量表達(dá)式來(lái)表示模板元素的取值,在生成報(bào)表時(shí),根據(jù)采集到的數(shù)據(jù)確定相應(yīng)變量的具體取值,并確定變量 表達(dá)式的值,然后以所確定的變量表達(dá)式的值填充模板元素所在位直。采集數(shù)據(jù)對(duì)象采集數(shù)據(jù)對(duì)象用于進(jìn)行數(shù)據(jù)采集、獲取數(shù)據(jù)。采集數(shù)據(jù)對(duì)象可以包括 存儲(chǔ)過(guò)程,SQL語(yǔ)句等。采集數(shù)據(jù)對(duì)象可以根據(jù)實(shí)際應(yīng)用的需要進(jìn)行定義,B卩定義該采集數(shù) 據(jù)對(duì)象如何進(jìn)行數(shù)據(jù)采集、返回哪些字段、返回字段的個(gè)數(shù)、返回字段的數(shù)據(jù)類(lèi)型等。最終用戶最終使用報(bào)表的用戶。自定義報(bào)表最終用廣修改或創(chuàng)建報(bào)表模板的過(guò)程稱(chēng)為自定義報(bào)表。由于Excel使用廣泛、功能強(qiáng)大、編輯靈活,并且,可以在Excel文件中創(chuàng)建圖表以及 表格,因此, 一些報(bào)表系統(tǒng)廠商在其報(bào)表系統(tǒng)中提供了 Excel報(bào)表模板的功能,也就是將 Excel文件作為報(bào)表模板的信息載體,用戶可以直接在Excel文件中創(chuàng)建報(bào)表模板?,F(xiàn)有Excel報(bào)表的實(shí)現(xiàn)方法包括以下步驟第l步創(chuàng)建Excel報(bào)表模板。本步驟就是在Excel文件中創(chuàng)建一個(gè)頁(yè)面(sheet),并在所述頁(yè)面中創(chuàng)建一些模板元素, 包含模板元素的Excel頁(yè)面稱(chēng)為報(bào)表模板頁(yè)面。在Excel文件中創(chuàng)建模板元素時(shí)(例如表 格),直接使用采集數(shù)據(jù)對(duì)象的返回字段所對(duì)應(yīng)的變量來(lái)構(gòu)造變量表達(dá)式。第2步生成Excel報(bào)表。本步驟所這生成Excel報(bào)表的過(guò)程為首先解析報(bào)表模板中的變量,并從數(shù)據(jù)庫(kù)獲取所 述變量對(duì)應(yīng)字段的取值,然后根據(jù)所述取值確定變量表達(dá)式的值,將所確定的變量表達(dá)式的 值填充到Excel文件中對(duì)應(yīng)變量表達(dá)式所在的位置。本中請(qǐng)的發(fā)明人在實(shí)現(xiàn)本發(fā)明的過(guò)程中發(fā)現(xiàn)上述現(xiàn)有方法在創(chuàng)建Excel報(bào)表模板時(shí), 直接使用了采集數(shù)據(jù)對(duì)象的返回字段所對(duì)應(yīng)的變量來(lái)構(gòu)造變量表達(dá)式,這要求開(kāi)發(fā)人員非常 熟悉所述返回字段與變量之間的對(duì)應(yīng)關(guān)系,這種創(chuàng)建Excel報(bào)表模板的方式非常不主觀,使 得開(kāi)發(fā)人員在創(chuàng)建報(bào)表模板的過(guò)程中很容易出錯(cuò)。此外,由于最終用戶很難理解報(bào)表模板中 變量的含義,也很難獲知數(shù)據(jù)庫(kù)中的字段與報(bào)表模板中的變量之間的對(duì)應(yīng)關(guān)系,因此,在最 終用戶很難實(shí)現(xiàn)自定義報(bào)表??梢?jiàn),現(xiàn)有Excel報(bào)表的實(shí)現(xiàn)方法不符合報(bào)表系統(tǒng)"所見(jiàn)即所 得"的報(bào)表模板創(chuàng)建功能要求。為了解決上述問(wèn)題,中國(guó)專(zhuān)利公開(kāi)號(hào)CN101183356A,揭示了一種Excel報(bào)表的實(shí)現(xiàn)方法 及Excel報(bào)表系統(tǒng),包括Excel報(bào)表模板創(chuàng)建過(guò)程和Excel報(bào)表生成過(guò)程;該方法通過(guò)在 Excel報(bào)表模板創(chuàng)建過(guò)程中創(chuàng)建用于顯示采集數(shù)據(jù)對(duì)象的返回字段的數(shù)據(jù)頁(yè)面,并將該數(shù)據(jù)頁(yè) 面用作報(bào)表模板頁(yè)面的數(shù)據(jù)源,使得在創(chuàng)建報(bào)表模板或自定義報(bào)表模板時(shí)能夠直接飲用所述 頁(yè)面中的數(shù)據(jù),而無(wú)需知道所述數(shù)據(jù)頁(yè)面中的數(shù)據(jù)與采集數(shù)據(jù)對(duì)象返回字段之間的關(guān)系,從 而通過(guò)實(shí)現(xiàn)報(bào)表系統(tǒng)中數(shù)據(jù)層與展現(xiàn)層的分離,提供了所見(jiàn)即所得的報(bào)表模板創(chuàng)建功能。以 及一種應(yīng)用該發(fā)明能夠提供所見(jiàn)即所得的報(bào)表模板創(chuàng)建功能的Excel報(bào)表系統(tǒng)。中國(guó)專(zhuān)利公開(kāi)號(hào)CN1787448A,揭示了一種電信設(shè)備性能報(bào)表的自動(dòng)生成方法,包括從各 個(gè)數(shù)據(jù)源中采集報(bào)表元數(shù)據(jù)的歩驟;根據(jù)指定條件過(guò)濾步驟采集的報(bào)表元數(shù)據(jù),生成所需的 報(bào)表數(shù)據(jù)集的步驟;按照?qǐng)?bào)表指定格式調(diào)整報(bào)表數(shù)據(jù)集的步驟;解析報(bào)表數(shù)據(jù)集,填充數(shù)據(jù) 的歩驟。利用該發(fā)明的方法,直接將用戶給定的Excel模板讀入,最后輸出的報(bào)表保持了和 模板完全一致的格式,報(bào)表系統(tǒng)代碼不變的情況下,支持Excel模板的隨意變化。該發(fā)明所 闡述的報(bào)表自動(dòng)生成方法還支持多種數(shù)據(jù)存儲(chǔ)方式。但在實(shí)際使用中,上述方法還存在一些缺陷,使用起來(lái)復(fù)雜。有鑒于此,本領(lǐng)域發(fā)明人 研發(fā)了一種基于Excel的報(bào)表自動(dòng)生成裝置和方法,用于減少由于報(bào)表格式或內(nèi)容的變化導(dǎo) 致的報(bào)表維護(hù)復(fù)雜性的增加,減輕報(bào)表維護(hù)人員的工作量。發(fā)明內(nèi)容本發(fā)明的目的在于,提供一種管理系統(tǒng)報(bào)表生成方法和裝置,克服了現(xiàn)有技術(shù)的困難, 以達(dá)到減少由于報(bào)表格式或內(nèi)容的變化導(dǎo)致的報(bào)表維護(hù)復(fù)雜性的增加,減輕報(bào)表維護(hù)人員的 工作量的目的。本發(fā)明采用如下技術(shù)方案本發(fā)明的一種管理系統(tǒng)報(bào)表生成方法,包括以下步驟1) 根據(jù)系統(tǒng)的功能模塊確定該模塊的報(bào)表類(lèi)型和報(bào)表數(shù)據(jù)項(xiàng)的標(biāo)記;2) 定義報(bào)表數(shù)據(jù)獲取的接口,數(shù)據(jù)接口定義獲取數(shù)據(jù)必要的參數(shù)信息的表達(dá)方式,數(shù)據(jù) 結(jié)果的存儲(chǔ)方式,其中所述接口的返回值以鍵值對(duì)集合的形式表示;3) 創(chuàng)建報(bào)表模板;4) 創(chuàng)建數(shù)據(jù)獲取接口;5) 打開(kāi)報(bào)表模板,讀取報(bào)表模板的數(shù)據(jù)項(xiàng)信息,調(diào)用數(shù)據(jù)獲取接口獲取數(shù)據(jù),將數(shù)據(jù)寫(xiě) 入到報(bào)表模板的指定位置;6) 將填寫(xiě)完報(bào)表數(shù)據(jù)的報(bào)表生成到指定的路.徑,完成報(bào)表的生成。進(jìn)一步地,所述步驟4)中包括根據(jù)步驟l)中定義的報(bào)表模板的報(bào)表類(lèi)型和報(bào)表數(shù)據(jù)項(xiàng) 的標(biāo)記,對(duì)數(shù)據(jù)項(xiàng)的標(biāo)記所包含的數(shù)據(jù)項(xiàng)信息進(jìn)行解析處理,根據(jù)解析處理的結(jié)果從關(guān)系數(shù) 據(jù)庫(kù)中獲取對(duì)應(yīng)的數(shù)據(jù)并將數(shù)據(jù)按照步驟2)中定義的接口的返回值的約定進(jìn)行組織。進(jìn)一步地,所述步驟5)中包括根據(jù)步驟2)中定義的返回值將數(shù)據(jù)寫(xiě)入到報(bào)表模板的指 定位置。進(jìn)一步地,所述步驟2)中的接口為Dictio匿y〈string, string〉 GetR印ortValue (string symbol, Dictionary〈string, string〉 param), 其中, "symbol"為在步驟1) 中定義的報(bào)表數(shù)據(jù)項(xiàng)的標(biāo)記;"param"為在步驟1)中定義的報(bào)表類(lèi)型及功能模塊約定的參 數(shù)定義;返回結(jié)果以鍵值對(duì)集合的形式表示,其中的鍵名為"(row, column)",其中"row" 表示以模板數(shù)據(jù)項(xiàng)為坐標(biāo)原點(diǎn)的向下計(jì)數(shù)的行號(hào),"column"表示以模板數(shù)據(jù)項(xiàng)為坐標(biāo)原點(diǎn) 的向右計(jì)數(shù)的列號(hào),當(dāng)沒(méi)有連續(xù)在模板上輸入的數(shù)據(jù),則只有鍵"(0, 0)",鍵值即為對(duì) 應(yīng)的數(shù)據(jù)項(xiàng)的數(shù)據(jù)值。本發(fā)明的一種管理系統(tǒng)報(bào)表生成裝置,用于實(shí)現(xiàn)上述的管理系統(tǒng)報(bào)表生成方法,包括 報(bào)表數(shù)據(jù)管理器,作為報(bào)表生成裝置對(duì)外提供服務(wù)的接口,供需要生成報(bào)表時(shí)來(lái)調(diào)用; Excel引擎,作為Excel進(jìn)程的管理器;報(bào)表模板標(biāo)記解析器,用于對(duì)報(bào)表模板的標(biāo)記按照?qǐng)?bào)表制作規(guī)范的約定進(jìn)行解析; 報(bào)表數(shù)據(jù)訪問(wèn)器,根據(jù)解析結(jié)果執(zhí)行數(shù)據(jù)庫(kù)訪問(wèn)操作來(lái)獲取數(shù)據(jù)并將數(shù)據(jù)返回給報(bào)表數(shù) 據(jù)管理器,由報(bào)表數(shù)據(jù)管理器將數(shù)據(jù)值填充到Excel文件中。進(jìn)一步地,所述Excel引擎用于對(duì)Excel實(shí)例進(jìn)程的創(chuàng)建、卸載。進(jìn)一步地,所述報(bào)表模板標(biāo)記解析器通過(guò)所述數(shù)據(jù)獲取接口對(duì)報(bào)表模板的標(biāo)記按照?qǐng)?bào)表 制作規(guī)范的約定進(jìn)行解析。由于采用了以上技術(shù),本發(fā)明與現(xiàn)有技術(shù)相比,本發(fā)明的裝置和方法建立在Excel電子表格的技術(shù)基礎(chǔ)之上,對(duì)于普通技術(shù)人員來(lái)說(shuō)容易掌握,該發(fā)明能夠減輕報(bào)表維護(hù)人員對(duì)于 報(bào)表工具知識(shí)的依賴,能夠?qū)⒅饕Ψ旁趫?bào)表模板的制作規(guī)范以及報(bào)表模板的制作上面來(lái)。 從基礎(chǔ)能源管理系統(tǒng)的應(yīng)用角度來(lái)看,采用此發(fā)明進(jìn)行報(bào)表的生成滿足了對(duì)報(bào)表系統(tǒng)功能的 要求。
以下結(jié)合附圖及實(shí)施例進(jìn)一步說(shuō)明本發(fā)明。
圖1為本發(fā)明管理系統(tǒng)報(bào)表生成方法的流程圖2為本發(fā)明實(shí)施例中管理系統(tǒng)報(bào)表生成方法的流程圖3為本發(fā)明管理系統(tǒng)報(bào)表生成裝置的模塊連接框圖4為本發(fā)明實(shí)施例中冶金企業(yè)能源管理系統(tǒng)運(yùn)行支持模塊報(bào)表制作規(guī)范; 圖5為本發(fā)明實(shí)施例中冶金企業(yè)能源管理系統(tǒng)動(dòng)力調(diào)度日志報(bào)表模板。
具體實(shí)施例方式
下面通過(guò)圖1至5,來(lái)介紹本發(fā)明的一種具體實(shí)施例。
如圖1所示,本發(fā)明的管理系統(tǒng)報(bào)表牛成方法,包括以下歩驟
1 )根據(jù)系統(tǒng)的功能模塊確定該模塊的報(bào)表類(lèi)型和報(bào)表數(shù)據(jù)項(xiàng)的標(biāo)記定義報(bào)表模板的制作 規(guī)范,規(guī)范約定報(bào)表類(lèi)型和報(bào)表數(shù)據(jù)項(xiàng)的標(biāo)W。在基礎(chǔ)能源管理系統(tǒng)中,報(bào)表類(lèi)型和報(bào)表數(shù) 據(jù)項(xiàng)的標(biāo)記約定按照系統(tǒng)的功能模塊來(lái)進(jìn)行,也就是說(shuō)針對(duì)系統(tǒng)的每一個(gè)功能模塊確定該模 塊的報(bào)表模板制作規(guī)范。
2) 定義報(bào)表數(shù)據(jù)獲取的接口。數(shù)據(jù)接口定義獲取數(shù)據(jù)必要的參數(shù)信息的表達(dá)方式,數(shù)據(jù)
結(jié)果的存儲(chǔ)方式。本方法確定的數(shù)據(jù)接口為Dictionary〈string, str化g〉 GetR印ortValue (string symbol, Dictionary〈string, string〉 param), 其中, "symbol"為在步驟1) 中定義的報(bào)表數(shù)據(jù)項(xiàng)的標(biāo)記;"p虹am"為在步驟一中定義的報(bào)表類(lèi)型及功能模塊約定的參數(shù) 定義;返回結(jié)果以鍵值對(duì)集合的形式表示,其中的鍵名為"(row, column)",其中"row" 表示以模板數(shù)據(jù)項(xiàng)為坐標(biāo)原點(diǎn)的向下計(jì)數(shù)的行號(hào),"col咖n"表不以模板數(shù)據(jù)項(xiàng)為坐標(biāo)原點(diǎn) 的向右計(jì)數(shù)的列號(hào),當(dāng)沒(méi)有連續(xù)在模板上輸入的數(shù)據(jù),則只有鍵"(0, 0)",鍵值即為對(duì) 應(yīng)的數(shù)據(jù)項(xiàng)的數(shù)據(jù)值。
3) 按照步驟l)中定義的報(bào)表模板的制作規(guī)范創(chuàng)建報(bào)表模板。
4) 實(shí)現(xiàn)歩驟2)中定義的數(shù)據(jù)獲取接口。在基礎(chǔ)能源管理系統(tǒng)中,不同的功能模塊實(shí)現(xiàn)各自的數(shù)據(jù)獲取接口。實(shí)現(xiàn)的過(guò)程中,根據(jù)步驟l)定義的報(bào)表模板制作規(guī)范的約定,對(duì)數(shù)據(jù) 項(xiàng)的標(biāo)記所包含的數(shù)據(jù)項(xiàng)信息進(jìn)行解析處理,根據(jù)解析處理的結(jié)果從關(guān)系數(shù)據(jù)庫(kù)中獲取對(duì)應(yīng) 的數(shù)據(jù)并將數(shù)據(jù)按照步驟2)中定義的接口的返回值的約定進(jìn)行組織。
5) 打開(kāi)報(bào)表模板,讀取報(bào)表模板的數(shù)據(jù)項(xiàng)信息,調(diào)用數(shù)據(jù)獲取接口獲取數(shù)據(jù),根據(jù)步驟 2)中定義的返回值將數(shù)據(jù)寫(xiě)入到報(bào)表模板的指定位置。
6) 將填寫(xiě)完報(bào)表數(shù)據(jù)的報(bào)表生成到指定的路徑,完成報(bào)表的生成。
定義報(bào)表模板的制作規(guī)范,規(guī)范對(duì)報(bào)表的數(shù)據(jù)項(xiàng)的標(biāo)記進(jìn)行了約定,該約定體現(xiàn)了數(shù)據(jù) 項(xiàng)標(biāo)記的表達(dá)方式。報(bào)表模板必須要依據(jù)報(bào)表模板制作規(guī)范進(jìn)行制作。對(duì)報(bào)表模板中的數(shù)據(jù) 項(xiàng)的值通過(guò)定義數(shù)據(jù)獲取接口來(lái)獲取,數(shù)據(jù)接口定義獲取數(shù)據(jù)必要的參數(shù)信息的表示方式和 數(shù)據(jù)結(jié)果的表示方式。
如圖3所示,本發(fā)明的一種管理系統(tǒng)報(bào)表生成裝置包括四個(gè)部分,報(bào)表數(shù)據(jù)管理器、Excel 引擎、報(bào)表模板標(biāo)記解析器和報(bào)表數(shù)據(jù)訪問(wèn)器。報(bào)表數(shù)據(jù)管理器是報(bào)表生成裝置對(duì)外提供服 務(wù)的接口,供需要生成報(bào)表時(shí)來(lái)調(diào)用;Excel引擎是Excel進(jìn)程的管理器,包括Excel實(shí)例進(jìn) 程的創(chuàng)建、卸載;報(bào)表模板標(biāo)記解析器是對(duì)報(bào)表模板的標(biāo)記按照?qǐng)?bào)表制作規(guī)范的約定進(jìn)行解 析;報(bào)表數(shù)據(jù)訪問(wèn)器根據(jù)解析結(jié)果執(zhí)行數(shù)據(jù)庫(kù)訪問(wèn)操作來(lái)獲取數(shù)據(jù)并將數(shù)據(jù)返回給報(bào)表數(shù)據(jù) 管理器,由報(bào)表數(shù)據(jù)管理器將數(shù)據(jù)值填充到Excel文件中。
其中,報(bào)表模板的數(shù)據(jù)項(xiàng)標(biāo)記解析及數(shù)據(jù)獲取處理必須實(shí)現(xiàn)所述數(shù)據(jù)獲取接口 。標(biāo)記解 析必須按照?qǐng)?bào)表制作規(guī)范的約定處理;數(shù)據(jù)獲取根據(jù)解析出來(lái)的標(biāo)記代表的意義從關(guān)系數(shù)據(jù) 庫(kù)中獲取數(shù)據(jù)值。
基礎(chǔ)能源管理系統(tǒng)中的運(yùn)行支持模塊輸出調(diào)度Fl志報(bào)表。下面以調(diào)度R志報(bào)表的自動(dòng)生 成過(guò)程為例說(shuō)明本發(fā)明的報(bào)表生成裝置和方法的應(yīng)用。
定義報(bào)表模板的制作規(guī)范。運(yùn)行支持模塊的報(bào)表制作規(guī)范如圖4所示。該規(guī)范定義了運(yùn) 行支持模塊的三種報(bào)表中的數(shù)據(jù)的表達(dá)方式,定義了數(shù)據(jù)項(xiàng)目類(lèi)型的表達(dá)方式。
按照定義好的報(bào)表模板制作規(guī)范制作報(bào)表模板,制作好的調(diào)度f(wàn)l志報(bào)表模板如圖5所示。
報(bào)表生成裝置的結(jié)構(gòu)如圖3所示。報(bào)表生成裝置由四個(gè)部分組成報(bào)表數(shù)據(jù)管理器、Excel 引擎、報(bào)表模板標(biāo)記解析器和報(bào)表數(shù)據(jù)訪問(wèn)器。報(bào)表數(shù)據(jù)管理器是報(bào)表生成裝置對(duì)外提供服 務(wù)的接口,供需要生成報(bào)表時(shí)來(lái)調(diào)用Excel引擎足Excel進(jìn)程的管理器,包括Excel實(shí)例進(jìn) 程的創(chuàng)建、卸載;報(bào)表模板標(biāo)記解析器是對(duì)報(bào)表模板的標(biāo)記按照?qǐng)?bào)表制作規(guī)范的約定進(jìn)行解 析;報(bào)表數(shù)據(jù)訪問(wèn)器根據(jù)解析結(jié)果執(zhí)行數(shù)據(jù)庫(kù)訪問(wèn)操作來(lái)獲取數(shù)據(jù)并將數(shù)據(jù)返回給報(bào)表數(shù)據(jù) 管理器,由報(bào)表數(shù)據(jù)管理器將數(shù)據(jù)值填充到Excel文件中。報(bào)表數(shù)據(jù)管理器提供了報(bào)表數(shù)據(jù)訪問(wèn)器必須實(shí)現(xiàn)的數(shù)據(jù)獲取接口 ,報(bào)表數(shù)據(jù)訪問(wèn)器實(shí)現(xiàn) 數(shù)據(jù)獲取接口。
本實(shí)施例中的報(bào)表生成流程圖如圖2所示
1) 調(diào)用報(bào)表管理器的創(chuàng)建報(bào)表功能,參數(shù)為報(bào)表模板的名稱(chēng)和路徑,待生成報(bào)表文件的 名稱(chēng)和路徑。報(bào)表模板按照?qǐng)?bào)表模板制作規(guī)范建立。
2) 報(bào)表管理器調(diào)用Excel引擎創(chuàng)建一個(gè)Excel進(jìn)程實(shí)例,該實(shí)例負(fù)責(zé)讀取Excel模板以 及寫(xiě)入Excel報(bào)表文件。
3) Excel進(jìn)程打開(kāi)報(bào)表模板。
4) 報(bào)表管理器根據(jù)模板類(lèi)型創(chuàng)建實(shí)現(xiàn)數(shù)據(jù)獲取接口的報(bào)表數(shù)據(jù)訪問(wèn)器。
5) Excel進(jìn)程依次讀取報(bào)表模板標(biāo)記。
6) 報(bào)表管理器調(diào)用報(bào)表數(shù)據(jù)訪問(wèn)器處理報(bào)表模板標(biāo)記。
7) 報(bào)表數(shù)據(jù)訪問(wèn)器調(diào)用報(bào)表模板標(biāo)記解析器解析標(biāo)記。
8) 報(bào)表數(shù)據(jù)訪問(wèn)器使用報(bào)表模板標(biāo)記解析器的解析結(jié)果組織成關(guān)系數(shù)據(jù)庫(kù)的數(shù)據(jù)訪問(wèn)腳本。
9) 報(bào)表數(shù)據(jù)訪問(wèn)器執(zhí)行數(shù)據(jù)庫(kù)訪問(wèn)腳本獲取數(shù)據(jù)值。
10) 報(bào)表管理器用報(bào)表數(shù)據(jù)訪問(wèn)器返回的數(shù)據(jù)值按照數(shù)據(jù)獲取接口的約定填充Excel文件。
11) 報(bào)表管理器將Excel文件按照指定的文件名稱(chēng)和路徑保存。 本發(fā)明與背景技術(shù)中的Excel報(bào)表的實(shí)現(xiàn)方法及Excel報(bào)表系統(tǒng)的技術(shù)要點(diǎn)比較 目的類(lèi)似,該發(fā)明的目的是為了方便報(bào)表模板的維護(hù),并且利用編輯好的報(bào)表模板來(lái)自
動(dòng)生成報(bào)表。上述發(fā)明的目的也是通過(guò)所見(jiàn)即所得的方式創(chuàng)建報(bào)表模板,并利用報(bào)表模板來(lái) 自動(dòng)生成報(bào)表。
實(shí)現(xiàn)的途徑不同,該發(fā)明強(qiáng)調(diào)模板的編制規(guī)范的制定,通過(guò)定義好的編制規(guī)范來(lái)制作報(bào) 表模板,報(bào)表生成系統(tǒng)通過(guò)對(duì)按照?qǐng)?bào)表制作規(guī)范制作的報(bào)表模板的解析來(lái)生成報(bào)表。而報(bào)表 模板的編制規(guī)范與報(bào)表的業(yè)務(wù)相關(guān),對(duì)于實(shí)際報(bào)表的使用人員,也可以方便的定義報(bào)表制作 規(guī)范。而上述發(fā)明是通過(guò)提供報(bào)表上可以顯示的數(shù)據(jù)的頁(yè)面來(lái)輔助創(chuàng)建報(bào)表模板。 本發(fā)明與背景技術(shù)中的電信設(shè)備性能報(bào)表的自動(dòng)生成方法的技術(shù)要點(diǎn)比較 目的不同,本發(fā)明的目的是為了方便報(bào)表模板的維護(hù),并且利用編輯好的報(bào)表模板來(lái)自 動(dòng)生成報(bào)表。上述發(fā)明目的主要是準(zhǔn)備報(bào)表待顯示的數(shù)據(jù)源并通過(guò)對(duì)數(shù)據(jù)源提供過(guò)濾來(lái)方便 報(bào)表數(shù)據(jù)的選擇。本發(fā)明采用Excel電子表格作為載體來(lái)呈現(xiàn)報(bào)表。當(dāng)有其他的報(bào)表載體的報(bào)表文件格式 支持報(bào)表模板的創(chuàng)建,則可以采用該文件格式替換Excel來(lái)實(shí)現(xiàn)本發(fā)明。
綜上可知,本發(fā)明技術(shù)方案與傳統(tǒng)的報(bào)表生成方法的主要區(qū)別在于定義了報(bào)表模板的制 作規(guī)范并根據(jù)規(guī)范來(lái)制作報(bào)表模板,這樣使得報(bào)表模板的制定有規(guī)律可循, 一旦報(bào)表模板需 要做出變化,只需要按照規(guī)范重新制作和修改即可,而報(bào)表的生成過(guò)程沒(méi)有任何變化,使得 報(bào)表的維護(hù)工作主要體現(xiàn)為維護(hù)報(bào)表模板,減輕了報(bào)表維護(hù)的工作量。
以上所述的實(shí)施例僅用于說(shuō)明本發(fā)明的技術(shù)思想及特點(diǎn),其目的在于使本領(lǐng)域內(nèi)的技術(shù) 人員能夠了解本發(fā)明的內(nèi)容并據(jù)以實(shí)施,不能僅以本實(shí)施例來(lái)限定本發(fā)明的專(zhuān)利范圍,即凡 依本發(fā)明所揭示的精神所作的同等變化或修飾,仍落在本發(fā)明的專(zhuān)利范圍內(nèi)。
權(quán)利要求
1、一種管理系統(tǒng)報(bào)表生成方法,其特征在于,包括以下步驟1)根據(jù)系統(tǒng)的功能模塊確定該模塊的報(bào)表類(lèi)型和報(bào)表數(shù)據(jù)項(xiàng)的標(biāo)記;2)定義報(bào)表數(shù)據(jù)獲取的接口,數(shù)據(jù)接口定義獲取數(shù)據(jù)必要的參數(shù)信息的表達(dá)方式,數(shù)據(jù)結(jié)果的存儲(chǔ)方式,其中所述接口的返回值以鍵值對(duì)集合的形式表示;3)創(chuàng)建報(bào)表模板;4)創(chuàng)建數(shù)據(jù)獲取接口;5)打開(kāi)報(bào)表模板,讀取報(bào)表模板的數(shù)據(jù)項(xiàng)信息,調(diào)用數(shù)據(jù)獲取接口獲取數(shù)據(jù),將數(shù)據(jù)寫(xiě)入到報(bào)表模板的指定位置;6)將填寫(xiě)完報(bào)表數(shù)據(jù)的報(bào)表生成到指定的路徑,完成報(bào)表的生成。
2、 根據(jù)權(quán)利要求1所述的管理系統(tǒng)報(bào)表生成方法,其特征在于所述步驟4)中包括根 據(jù)步驟l)中定義的報(bào)表模板的報(bào)表類(lèi)型和報(bào)表數(shù)據(jù)項(xiàng)的標(biāo)記,對(duì)數(shù)據(jù)項(xiàng)的標(biāo)記所包含的數(shù)據(jù) 項(xiàng)信息進(jìn)行解析處理,根據(jù)解析處理的結(jié)果從關(guān)系數(shù)據(jù)庫(kù)中獲取對(duì)應(yīng)的數(shù)據(jù)并將數(shù)據(jù)按照步 驟2)中定義的接口的返回值的約定進(jìn)行組織。
3、 根據(jù)權(quán)利要求2所述的管理系統(tǒng)報(bào)表生成方法,其特征在于所述步驟5)中包括根 據(jù)步驟2)中定義的返回值將數(shù)據(jù)寫(xiě)入到報(bào)表模板的指定位置。
4、 根據(jù)權(quán)利要求1至3中任意一項(xiàng)所述的管理系統(tǒng)報(bào)表生成方法,其特征在于所述歩 驟 2 ) 中的接口為Dictionary〈string, string〉 GetR印ortValue ( string symbol, Dictionary〈string, string〉 param),其中'"symbol"為在歩驟l)中定義的報(bào)表數(shù)據(jù)項(xiàng) 的標(biāo)記;"param"為在歩驟1)中定義的報(bào)表類(lèi)型及功能模塊約定的參數(shù)定義;返回結(jié)果以 鍵值對(duì)集合的形式表示,其中的鍵名為"(row, column)",其中"row"表示以模板數(shù)據(jù) 項(xiàng)為坐標(biāo)原點(diǎn)的向下計(jì)數(shù)的行號(hào),"column"表示以模板數(shù)據(jù)項(xiàng)為坐標(biāo)原點(diǎn)的向右計(jì)數(shù)的列 號(hào),當(dāng)沒(méi)有連續(xù)在模板上輸入的數(shù)據(jù),則只有鍵"(0, 0)",鍵值即為對(duì)應(yīng)的數(shù)據(jù)項(xiàng)的數(shù) 據(jù)值。
5、 一種管理系統(tǒng)報(bào)表生成裝置,用于實(shí)現(xiàn)如權(quán)利要求1至4中任意一項(xiàng)所述的管理系統(tǒng) 報(bào)表生成方法,其特征在于包括報(bào)表數(shù)據(jù)管理器,作為報(bào)表生成裝置對(duì)外提供服務(wù)的接口,供需要生成報(bào)表時(shí)來(lái)調(diào)用; Excel引擎,作為Excel進(jìn)程的管理器;報(bào)表模板標(biāo)記解析器,用于對(duì)報(bào)表模板的標(biāo)記按照?qǐng)?bào)表制作規(guī)范的約定進(jìn)行解析; 報(bào)表數(shù)據(jù)訪問(wèn)器,根據(jù)解析結(jié)果執(zhí)行數(shù)據(jù)庫(kù)訪問(wèn)操作來(lái)獲取數(shù)據(jù)并將數(shù)據(jù)返回給報(bào)表數(shù) 據(jù)管理器,由報(bào)表數(shù)據(jù)管理器將數(shù)據(jù)值填充到Excel文件中。
6、 根據(jù)權(quán)利要求5所述的管理系統(tǒng)報(bào)表生成裝置,其特征在于所述Excel引擎用于對(duì) Excel實(shí)例進(jìn)程的創(chuàng)建、卸載。
7、 根據(jù)權(quán)利要求5或6所述的管理系統(tǒng)報(bào)表生成裝置,其特征在于所述報(bào)表模板標(biāo)記 解析器通過(guò)所述數(shù)據(jù)獲取接口對(duì)報(bào)表模板的標(biāo)記按照?qǐng)?bào)表制作規(guī)范的約定進(jìn)行解析。
全文摘要
本發(fā)明揭示了一種管理系統(tǒng)報(bào)表生成方法和裝置,其方法包括以下步驟1)根據(jù)系統(tǒng)的功能模塊確定該模塊的報(bào)表類(lèi)型和報(bào)表數(shù)據(jù)項(xiàng)的標(biāo)記;2)定義報(bào)表數(shù)據(jù)獲取的接口,數(shù)據(jù)接口定義獲取數(shù)據(jù)必要的參數(shù)信息的表達(dá)方式,數(shù)據(jù)結(jié)果的存儲(chǔ)方式,其中所述接口的返回值以鍵值對(duì)集合的形式表示;3)創(chuàng)建報(bào)表模板;4)創(chuàng)建數(shù)據(jù)獲取接口;5)打開(kāi)報(bào)表模板,讀取報(bào)表模板的數(shù)據(jù)項(xiàng)信息,調(diào)用數(shù)據(jù)獲取接口獲取數(shù)據(jù),將數(shù)據(jù)寫(xiě)入到報(bào)表模板的指定位置;6)將填寫(xiě)完報(bào)表數(shù)據(jù)的報(bào)表生成到指定的路徑,完成報(bào)表的生成;其裝置包括報(bào)表數(shù)據(jù)管理器、Excel引擎、報(bào)表模板標(biāo)記解析器和報(bào)表數(shù)據(jù)訪問(wèn)器。
文檔編號(hào)G06F17/24GK101661460SQ20091019593
公開(kāi)日2010年3月3日 申請(qǐng)日期2009年9月18日 優(yōu)先權(quán)日2009年9月18日
發(fā)明者兵 沈, 黃瑞航 申請(qǐng)人:上海寶信軟件股份有限公司