一種基于元數(shù)據(jù)庫的數(shù)據(jù)處理方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計(jì)算機(jī)數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種基于元數(shù)據(jù)庫的數(shù)據(jù)處理方 法。
【背景技術(shù)】
[0002] 目前有大量信息化系統(tǒng)都需要數(shù)據(jù)查詢功能,在查詢出相關(guān)數(shù)據(jù)以后還希望能夠 提供Excel數(shù)據(jù)導(dǎo)出功能。但是,各個(gè)系統(tǒng)中的各項(xiàng)查詢功能千差萬別,查詢的數(shù)據(jù)不同, 提供的過濾條件不同,顯示報(bào)表的格式不同,報(bào)表中各個(gè)列的列名、對(duì)齊方式、數(shù)據(jù)顯示格 式、高度寬度,等等都千差萬別,與此同時(shí),各種報(bào)表還有數(shù)據(jù)導(dǎo)出的需求。用戶需要導(dǎo)出的 數(shù)據(jù),應(yīng)當(dāng)是與報(bào)表查詢結(jié)果一樣、顯示格式一致的表格文件,不利于數(shù)據(jù)處理。因此,有必 要提供一種基于元數(shù)據(jù)庫的數(shù)據(jù)處理方法。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的在于提供一種基于元數(shù)據(jù)庫的數(shù)據(jù)處理方法,其使得開發(fā)與維護(hù)都 更加方便,既降低了開發(fā)工作量,又降低了研發(fā)技術(shù)門檻。
[0004] 為實(shí)現(xiàn)本發(fā)明而提供的一種基于元數(shù)據(jù)庫的數(shù)據(jù)處理方法,包括如下步驟:
[0005] 將報(bào)表查詢與數(shù)據(jù)導(dǎo)出所需的配置數(shù)據(jù),包括報(bào)表信息的配置、過濾條件的配置、 報(bào)表展示信息的配置、詳細(xì)信息的配置,通過元數(shù)據(jù)庫的形式保存起來;
[0006] 當(dāng)用戶進(jìn)入報(bào)表模塊時(shí),通過元數(shù)據(jù)庫羅列報(bào)表信息供用戶選擇,提供報(bào)表過濾 條件供用戶輸入,根據(jù)元數(shù)據(jù)庫定義的格式顯示查詢結(jié)果,以及展示相關(guān)詳細(xì)信息,同時(shí), 當(dāng)接收到用戶提出的數(shù)據(jù)導(dǎo)出請(qǐng)求時(shí),使用同樣的參數(shù)執(zhí)行查詢,使用同樣的格式導(dǎo)出文 件。
[0007] 較優(yōu)地,所述將報(bào)表查詢與數(shù)據(jù)導(dǎo)出所需的配置數(shù)據(jù)包括如下步驟:
[0008] 配置報(bào)表信息配置表,配置所有報(bào)表的信息,包括報(bào)表的編號(hào)、名稱、報(bào)表類型、報(bào) 表分類、表頭標(biāo)題、表頭副標(biāo)題、查詢語句、是否起效、創(chuàng)建人員與日期;
[0009] 配置過濾條件配置表,配置每個(gè)報(bào)表為用戶提供的過濾條件,包括報(bào)表編號(hào)、過濾 條件名稱、控件名、控件類型、條件語句、查詢參數(shù)、控件寬度、高度、行跨越、列跨越;
[0010] 配置報(bào)表展示信息配置表,配置查詢結(jié)果應(yīng)顯示的報(bào)表界面和數(shù)據(jù)導(dǎo)出文件的格 式,包括報(bào)表編號(hào)、列名、中文名、顯示順序、列寬、數(shù)據(jù)格式、布局、列跨越、是否顯示;
[0011] 配置詳細(xì)信息配置表,配置用戶在點(diǎn)擊某行記錄時(shí)如何顯示該行記錄的詳細(xì)信 息,包括報(bào)表編號(hào)、模板號(hào)、顯示順序、標(biāo)題、查詢條件、是否顯示。
[0012] 較優(yōu)地,所述當(dāng)用戶進(jìn)入報(bào)表模塊時(shí),通過元數(shù)據(jù)庫羅列報(bào)表信息供用戶選擇,提 供報(bào)表過濾條件供用戶輸入,根據(jù)元數(shù)據(jù)庫定義的格式顯示查詢結(jié)果,以及展示相關(guān)詳細(xì) 信息,包括如下步驟:
[0013] 當(dāng)用戶進(jìn)入報(bào)表模塊時(shí),通過元數(shù)據(jù)庫羅列報(bào)表信息供用戶選擇,提供報(bào)表過濾 條件供用戶輸入,根據(jù)元數(shù)據(jù)庫定義的格式顯示查詢結(jié)果,以及展示相關(guān)詳細(xì)信息;
[0014] 當(dāng)用戶查詢報(bào)表后執(zhí)行導(dǎo)出,通過查詢狀態(tài)對(duì)象獲取上次查詢的查詢數(shù)據(jù),然后 從元數(shù)據(jù)庫中讀取各配置表的信息,根據(jù)這些配置表的數(shù)據(jù)去執(zhí)行數(shù)據(jù)導(dǎo)出,導(dǎo)出的數(shù)據(jù) 與報(bào)表使用相同的查詢語句、相同的展示格式。
[0015] 較優(yōu)地,所述當(dāng)用戶進(jìn)入報(bào)表模塊時(shí),通過元數(shù)據(jù)庫羅列報(bào)表信息供用戶選擇,提 供報(bào)表過濾條件供用戶輸入,根據(jù)元數(shù)據(jù)庫定義的格式顯示查詢結(jié)果,以及展示相關(guān)詳細(xì) 信息,包括如下步驟:
[0016] 用戶進(jìn)入報(bào)表中心時(shí)羅列所有報(bào)表供用戶選擇,,所述報(bào)表中心所有報(bào)表信息全 部都來源于元數(shù)據(jù)庫報(bào)表信息配置表中的數(shù)據(jù);
[0017] 當(dāng)用戶選擇一個(gè)報(bào)表時(shí),顯示該報(bào)表的過濾條件供用戶輸入,在用戶輸入自己所 需的過濾條件并請(qǐng)求查詢時(shí),報(bào)表編號(hào)、被選擇的控件值、過濾條件將被提交到后臺(tái)服務(wù)器 中;
[0018] 后臺(tái)服務(wù)器接收前臺(tái)提交的報(bào)表編號(hào)、被選擇的控件值、過濾條件后,通過報(bào)表編 號(hào)查詢到該報(bào)表的查詢語句,將過濾條件插入到查詢語句中,將控件值作為查詢參數(shù)一并 提交給數(shù)據(jù)庫執(zhí)行查詢;
[0019] 數(shù)據(jù)庫執(zhí)行查詢后,根據(jù)元數(shù)據(jù)庫中報(bào)表展示配置表中對(duì)該報(bào)表的定義,按照相 應(yīng)的格式展示報(bào)表;當(dāng)用戶選擇報(bào)表中的某條記錄時(shí),根據(jù)元數(shù)據(jù)庫中詳細(xì)信息配置表中 的定義展示該記錄的詳細(xì)信息。
[0020] 本發(fā)明的有益效果是:本發(fā)明基于元數(shù)據(jù)庫的數(shù)據(jù)處理方法,為開發(fā)人員、運(yùn)維人 員與現(xiàn)場(chǎng)實(shí)施人員提供了報(bào)表制作與導(dǎo)出方面許多的支持與方便,它與同類型設(shè)計(jì)方法比 較,其優(yōu)勢(shì)在于:
[0021] 1.本發(fā)明提供了開發(fā)人員、運(yùn)維人員與現(xiàn)場(chǎng)實(shí)施人員制作與維護(hù)報(bào)表所需的一系 列功能,包括報(bào)表配置、過濾條件配置、報(bào)表顯示配置、詳細(xì)信息配置。
[0022] 2.本發(fā)明對(duì)以上信息的配置全部都是基于保存在元數(shù)據(jù)庫的基礎(chǔ)之上,這樣帶來 了以下優(yōu)勢(shì):
[0023] 1)維護(hù)方式簡(jiǎn)便,只需在相關(guān)配置表中進(jìn)行維護(hù)就可以了,而無需再在大量程序 代碼中搜索和尋找;
[0024] 2)由于各種參數(shù)存在于數(shù)據(jù)庫中,參數(shù)發(fā)生修改以后,無需重啟應(yīng)用,參數(shù)就可以 立即生效,開發(fā)與維護(hù)都更加方便;
[0025] 3)由于各種參數(shù)在報(bào)表查詢與數(shù)據(jù)導(dǎo)出模塊中得到有效共享,使得查詢結(jié)果與導(dǎo) 出結(jié)果都能保持相當(dāng)?shù)匾恢?,同時(shí)相關(guān)人員無需分別對(duì)其進(jìn)行維護(hù),降低了維護(hù)工作量。
[0026] 3.本發(fā)明為各個(gè)信息化系統(tǒng)進(jìn)行報(bào)表查詢與導(dǎo)出的設(shè)計(jì)提供了強(qiáng)大的平臺(tái)支持。 開發(fā)人員運(yùn)用本發(fā)明,可以在沒有任何程序開發(fā)的前提下進(jìn)行報(bào)表設(shè)計(jì),既降低了開發(fā)工 作量,又降低了研發(fā)技術(shù)門檻。
【附圖說明】
[0027] 圖1為本發(fā)明一個(gè)實(shí)施例的基于元數(shù)據(jù)庫的數(shù)據(jù)處理方法流程圖;
[0028] 圖2為本發(fā)明一個(gè)實(shí)施例的元數(shù)據(jù)庫關(guān)系示意圖。
【具體實(shí)施方式】
[0029] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚透徹,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明的基于元數(shù)據(jù)庫的數(shù)據(jù)處理方法進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具 體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0030] 盡管計(jì)算機(jī)系統(tǒng)中的查詢千差萬別,但依然可以從中發(fā)現(xiàn)共同的規(guī)律,那就是它 們都采用一個(gè)共同的模式,有一個(gè)相同的步驟。具體來說,任何查詢功能都要提供一段查詢 語句(可能是SQL也可能是HQL),同時(shí)提供給用戶一些過