两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種報表創(chuàng)建方法、裝置和系統(tǒng)的制作方法

文檔序號:6382239閱讀:198來源:國知局
專利名稱:一種報表創(chuàng)建方法、裝置和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及報表系統(tǒng)技術(shù)領(lǐng)域,尤其涉及一種報表創(chuàng)建方法、裝置和系統(tǒng)。
背景技術(shù)
現(xiàn)有的報表系統(tǒng)一般都是按照用戶需求進(jìn)行定制開發(fā),用戶查詢報表數(shù)據(jù)時,只 能輸入報表限制的查詢條件,按照報表設(shè)計的輸出方式展示結(jié)果。當(dāng)用戶查詢報表數(shù)據(jù)的 需求發(fā)生變化時,需要重新進(jìn)行報表的定制開發(fā),這類報表系統(tǒng)不支持用戶自定義。當(dāng)然, 目前也有部分報表系統(tǒng)支持用戶自定義,這類報表系統(tǒng)一般分為兩類一類是可以支持簡 單的自定義,用戶可以自定義的范圍也是有限的,只能調(diào)整查詢條件,選擇查詢結(jié)果,選擇 輸出風(fēng)格;另外一類可以支持復(fù)雜的自定義,用戶可以設(shè)計表格,編寫復(fù)雜的查詢條件,設(shè) 計復(fù)雜的查詢算法和個性化的輸出風(fēng)格,需要用戶掌握復(fù)雜的二次開發(fā)流程,對于普通用 戶來說,技術(shù)門檻較高,很難掌握,而且開發(fā)周期也會比較長。發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種報表創(chuàng)建方法、裝置和系統(tǒng),支持復(fù)雜 的報表模板創(chuàng)建,不涉及到復(fù)雜的二次開發(fā)流程和二次開發(fā)腳本的編寫。
為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的
本發(fā)明提供了一種報表創(chuàng)建方法,該方法包括
對數(shù)據(jù)庫中的數(shù)據(jù)表進(jìn)行抽象化處理,創(chuàng)建抽象數(shù)據(jù)記錄ADR模型;
根據(jù)所述ADR模型創(chuàng)建報表模板、并存儲;
調(diào)用已創(chuàng)建的報表模板,執(zhí)行報表查詢操作,并顯示查詢獲得的報表數(shù)據(jù)。
優(yōu)選地,創(chuàng)建的所述ADR模型由一個或多個ADR組成,每個ADR包含兩類基本元 素基本維度和基本指標(biāo);所述基本維度分為時間維度和對象維度;每個ADR包含一個數(shù)據(jù) 源名稱;
ADR關(guān)聯(lián)的一個或多個數(shù)據(jù)表的數(shù)據(jù)存放在數(shù)據(jù)源名稱對應(yīng)的數(shù)據(jù)庫中;
ADR包含的每個基本維度和基本指標(biāo)分別對應(yīng)ADR關(guān)聯(lián)的一個或多個數(shù)據(jù)表的特 定字段;
ADR關(guān)聯(lián)的一個或多個數(shù)據(jù)表分為事實表和聚集表;所述聚集表是對所述事實表 聚集得到。
優(yōu)選地,根據(jù)所述ADR模型創(chuàng)建報表模板,包括
從ADR模型中選擇要創(chuàng)建的報表模板所關(guān)聯(lián)的一個ADR、并確定要創(chuàng)建的報表模 板在導(dǎo)航樹上的位置;
設(shè)置要創(chuàng)建的報表模板的名稱、查詢條件、輸出內(nèi)容和輸出內(nèi)容的默認(rèn)輸出方式。
優(yōu)選地,設(shè)置要創(chuàng)建的報表模板的查詢條件,包括將粒度設(shè)置為查詢條件,設(shè)置 要創(chuàng)建的報表模板的一個或多個粒度,使所述一個或多個粒度均大于等于要創(chuàng)建的報表模 板關(guān)聯(lián)的ADR支持的最小粒度;
設(shè)置要創(chuàng)建的報表模板的輸出內(nèi)容,包括從要創(chuàng)建的報表模板關(guān)聯(lián)的ADR包含 的基本維度和基本指標(biāo)中選擇一個或多個作為輸出內(nèi)容。
優(yōu)選地,設(shè)置要創(chuàng)建的報表模板的輸出內(nèi)容時,該方法還包括對所述要創(chuàng)建的報 表模板關(guān)聯(lián)的ADR所包含的基本維度進(jìn)行擴(kuò)展,得到虛擬維度;對所述要創(chuàng)建的報表模板 關(guān)聯(lián)的ADR所包含的基本指標(biāo)進(jìn)行擴(kuò)展,得到KPI ;
所述虛擬維度分為組合維度、自定義維度、維度組和子維度;所述KPI分為常用 KP1、占比KPI和統(tǒng)計KPI。
優(yōu)選地,設(shè)置要創(chuàng)建的報表模板的輸出內(nèi)容,還包括從所述虛擬維度和所述KPI 中選擇一個或多個作為輸出內(nèi)容,并對作為輸出內(nèi)容的一個或多個維度進(jìn)行父子關(guān)系的設(shè) 定;
所述作為輸出內(nèi)容的一個或多個維度包括基本維度和/或虛擬維度。
優(yōu)選地,設(shè)置要創(chuàng)建的報表模板的查詢條件,還包括將要創(chuàng)建的報表模板關(guān)聯(lián)的 ADR包含的維度和/或指標(biāo)中的一個或多個作為查詢條件;
所述維度包括基本維度和/或虛擬維度;所述指標(biāo)包括基本指標(biāo)和/或KPI。
優(yōu)選地,根據(jù)所述ADR模型創(chuàng)建報表模板,還包括設(shè)置要創(chuàng)建報表模板的時間參 數(shù)、鉆取選項、TOPN選項、輸出內(nèi)容的排序規(guī)則和/或輸出內(nèi)容的擴(kuò)展輸出方式。
優(yōu)選地,調(diào)用已創(chuàng)建的報表模板,執(zhí)行報表查詢操作,并顯示查詢獲得的報表數(shù) 據(jù),包括調(diào)用已創(chuàng)建的報表模板,根據(jù)輸入的查詢條件生成結(jié)構(gòu)化查詢語句,到數(shù)據(jù)庫中 查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)并顯示。
優(yōu)選地,調(diào)用所述報表模板,根據(jù)輸入的查詢條件生成結(jié)構(gòu)化查詢語句,到數(shù)據(jù)庫 中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)并顯示,包括
根據(jù)用戶指令調(diào)用已創(chuàng)建的報表模板,構(gòu)造GUI界面供用戶輸入查詢條件;
對調(diào)用的報表模板關(guān)聯(lián)的ADR進(jìn)行鑒權(quán);
所述鑒權(quán)成功時,獲取用戶有權(quán)訪問的域?qū)ο?,并附加到輸入的查詢條件、生成新 的查詢條件;
根據(jù)新的查詢條件、調(diào)用的報表模板的輸出內(nèi)容和輸出內(nèi)容的排序規(guī)則生成結(jié)構(gòu) 化查詢語句;
根據(jù)調(diào)用的報表模板關(guān)聯(lián)的ADR所包含的數(shù)據(jù)源名稱,連接到對應(yīng)的數(shù)據(jù)庫,并 執(zhí)行所述結(jié)構(gòu)化查詢語句到所述數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù);
根據(jù)調(diào)用的報表模板的輸出方式顯示所述報表數(shù)據(jù)。
優(yōu)選地,對所述已創(chuàng)建的報表模板設(shè)置鉆取選項時,該方法還包括對所述查詢結(jié) 果中的記錄進(jìn)行鉆取查詢。
本發(fā)明還提供了一種報表創(chuàng)建系統(tǒng),包括數(shù)據(jù)庫、報表客戶端和報表服務(wù)器,其 中
所述數(shù)據(jù)庫,用于存儲數(shù)據(jù)表數(shù)據(jù),對所述數(shù)據(jù)表進(jìn)行抽象化處理,創(chuàng)建ADR模 型;
所述報表服務(wù)器,用于根據(jù)所述ADR模型創(chuàng)建報表模板、并存儲;還用于調(diào)用已創(chuàng) 建的報表模板,到所述數(shù)據(jù)庫中執(zhí)行報表查詢操作,并向所述報表客戶端返回查詢獲得的 報表數(shù)據(jù);
所述報表客戶端,用于向所述報表服務(wù)器發(fā)出創(chuàng)建報表模板指令和報表查詢操作 指令;還用于顯示所述查詢獲得的報表數(shù)據(jù)。
優(yōu)選地,所述報表服務(wù)器,還用于從所述數(shù)據(jù)庫的ADR模型中選擇要創(chuàng)建的報表 模板所關(guān)聯(lián)的一個ADR、并確定要創(chuàng)建的報表模板在導(dǎo)航樹上的位置,設(shè)置要創(chuàng)建的報表模 板的名稱、查詢條件、輸出內(nèi)容和輸出內(nèi)容的默認(rèn)輸出方式。
優(yōu)選地,所述報表服務(wù)器,還用于設(shè)置要創(chuàng)建報表模板的時間參數(shù)、鉆取選項、 TOPN選項、輸出內(nèi)容的排序規(guī)則和/或輸出內(nèi)容的擴(kuò)展輸出方式。
優(yōu)選地,所述報表服務(wù)器,還用于根據(jù)輸入的查詢條件生成結(jié)構(gòu)化查詢語句,到所 述數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)。
優(yōu)選地,所述報表客戶端,還用于根據(jù)用戶指令調(diào)用已創(chuàng)建的報表模板,構(gòu)造⑶I 界面供用戶輸入查詢條件;并將用戶輸入的查詢條件,發(fā)給報表服務(wù)器;
所述報表服務(wù)器,還用于對調(diào)用的報表模板關(guān)聯(lián)的ADR進(jìn)行鑒權(quán);所述鑒權(quán)成功 時,還用于獲取用戶有權(quán)訪問的域?qū)ο蟛⒏郊拥捷斎氲牟樵儣l件、生成新的查詢條件,并根 據(jù)新的查詢條件、調(diào)用的報表模板的輸出內(nèi)容和輸出內(nèi)容的排序規(guī)則生成結(jié)構(gòu)化查詢語 句;還用于根據(jù)調(diào)用的報表模板關(guān)聯(lián)的ADR所包含的數(shù)據(jù)源名稱,連接到對應(yīng)的數(shù)據(jù)庫,并 執(zhí)行所述結(jié)構(gòu)化查詢語句到所述數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù),發(fā)送給所述報 表客戶端。
本發(fā)明還提供了一種報表創(chuàng)建裝置,包括模板創(chuàng)建單元和報表查詢單元,其中
所述模板創(chuàng)建單元,用于根據(jù)ADR模型創(chuàng)建報表模板、并存儲;所述ADR模型是對 數(shù)據(jù)庫中的數(shù)據(jù)表進(jìn)行抽象化處理獲得;
所述報表查詢單元,用于調(diào)用已創(chuàng)建的報表模板,執(zhí)行報表查詢操作,獲得報表數(shù) 據(jù)。
優(yōu)選地,所述模板創(chuàng)建單元,還用于從ADR模型中選擇要創(chuàng)建的報表模板所關(guān)聯(lián) 的一個ADR、并確定要創(chuàng)建的報表模板在導(dǎo)航樹上的位置,設(shè)置要創(chuàng)建的報表模板的名稱、 查詢條件、輸出內(nèi)容和輸出內(nèi)容的默認(rèn)輸出方式。
優(yōu)選地,所述模板創(chuàng)建單元,還用于設(shè)置要創(chuàng)建報表模板的時間參數(shù)、鉆取選項、 TOPN選項、輸出內(nèi)容的排序規(guī)則和/或輸出內(nèi)容的擴(kuò)展輸出方式。
優(yōu)選地,所述報表查詢單元,還用于根據(jù)輸入的查詢條件生成結(jié)構(gòu)化查詢語句,到 所述數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)。
優(yōu)選地,所述報表查詢單元,還用于對調(diào)用的報表模板關(guān)聯(lián)的ADR進(jìn)行鑒權(quán);所述 鑒權(quán)成功時,還用于獲取用戶有權(quán)訪問的域?qū)ο蟛⒏郊拥捷斎氲牟樵儣l件、生成新的查詢 條件,并根據(jù)新的查詢條件、調(diào)用的報表模板的輸出內(nèi)容和輸出內(nèi)容的排序規(guī)則生成結(jié)構(gòu) 化查詢語句;還用于根據(jù)調(diào)用的報表模板關(guān)聯(lián)的ADR所包含的數(shù)據(jù)源名稱,連接到對應(yīng)的 數(shù)據(jù)庫,并執(zhí)行所述結(jié)構(gòu)化查詢語句到對應(yīng)的數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)。
本發(fā)明提供的報表創(chuàng)建方法、裝置和系統(tǒng),對數(shù)據(jù)庫中的數(shù)據(jù)表進(jìn)行抽象化處理, 創(chuàng)建抽象數(shù)據(jù)記錄ADR模型;根據(jù)ADR模型創(chuàng)建報表模板、并存儲;調(diào)用已創(chuàng)建的報表模 板,執(zhí)行報表查詢操作,并顯不報表查詢結(jié)果。這種基于ADR模型的報表創(chuàng)建,可以創(chuàng)建出 復(fù)雜的報表模板,而不涉及到復(fù)雜的二次開發(fā)流程和二次開發(fā)腳本的編寫。


圖1為本發(fā)明實施例提供的報表創(chuàng)建方法流程示意圖2為本發(fā)明實施例提供的ADR模型結(jié)構(gòu)示意圖3為本發(fā)明實施例提供的報表創(chuàng)建系統(tǒng)示意圖4為本發(fā)明實施例提供的報表模板創(chuàng)建流程示意圖5為本發(fā)明實施例提供的報表模板的查詢流程示意圖6為本發(fā)明實施例提供的鉆取查詢的流程示意圖。
具體實施方式
下面結(jié)合附圖和具體實施例對本發(fā)明的技術(shù)方案進(jìn)一步詳細(xì)闡述。
本發(fā)明采用的方法,首先要求對數(shù)據(jù)庫中的數(shù)據(jù)表進(jìn)行建模,通過抽象數(shù)據(jù)模型 描述數(shù)據(jù)庫中的數(shù)據(jù)表,這種抽象的數(shù)據(jù)庫模型簡稱為ADR(AbstractData Record,抽象數(shù) 據(jù)記錄)模型,ADR模型可以認(rèn)為是從業(yè)務(wù)的角度描述數(shù)據(jù)庫中的數(shù)據(jù)表,這種模型應(yīng)該是 面向報表用戶的,是報表用戶可以理解的。
當(dāng)ADR模型創(chuàng)建完畢后,用戶可以根據(jù)ADR模型,創(chuàng)建各種報表模板。當(dāng)報表模板 創(chuàng)建完畢后,用戶可以選擇報表模板進(jìn)行報表數(shù)據(jù)查詢,首先填寫報表模板中設(shè)置的查詢 條件,然后根據(jù)輸入的查詢條件,自動構(gòu)造結(jié)構(gòu)化查詢語句,從數(shù)據(jù)庫中查詢數(shù)據(jù)表得到查 詢結(jié)果、即報表數(shù)據(jù),根據(jù)報表模板設(shè)置的輸出方式,顯示查詢到的報表數(shù)據(jù)。
本發(fā)明實施例提供的報表創(chuàng)建方法,如圖1所示,包括
步驟101,對數(shù)據(jù)庫中的數(shù)據(jù)表進(jìn)行抽象化處理,創(chuàng)建ADR模型;
步驟102,根據(jù)所述ADR模型創(chuàng)建報表模板、并存儲;
步驟103,調(diào)用報表模板,執(zhí)行報表查詢操作,并顯示查詢獲得的報表數(shù)據(jù)。
下面具體說明本發(fā)明的上述技術(shù)方案。
圖2所示為ADR模型結(jié)構(gòu)示意圖。
一套ADR模型由一個或多個ADR組成;每個ADR包含了兩類基本元素維度和指 標(biāo)(為了便于和后續(xù)擴(kuò)展的維度和指標(biāo)進(jìn)行區(qū)分,這里稱為基本維度和基本指標(biāo)),其中, 基本維度可以分為時間維度和對象維度。
優(yōu)選地,為了滿足復(fù)雜報表創(chuàng)建的需要,在基本維度和基本指標(biāo)這兩類基本元素 的基礎(chǔ)上,可以分別擴(kuò)展出虛擬維度和KPI (Key Performance Indicator,關(guān)鍵績效指標(biāo))。 則本發(fā)明后續(xù)描述的維度包含基本維度和虛擬維度,指標(biāo)包含基本指標(biāo)和KPI。
其中,虛擬維度是對維度的擴(kuò)展,可以分為組合維度、自定義維度、維度組和子維 度。所謂組合維度,就是對已有的維度進(jìn)行組合,形成一個新的維度,例如移動國家號碼 (MCC,Mobile Country Code)和移動網(wǎng)絡(luò)號碼(MNC,Mobile Network Code)可以組合成虛 擬維度公共陸地移動網(wǎng)絡(luò)(PLMN,PublicLand Mobile Network)。所謂自定義維度,可以通 過一些系統(tǒng)函數(shù)實現(xiàn)對現(xiàn)有維度的轉(zhuǎn)換,例如IPV4 (IP),其中IPV4是系統(tǒng)函數(shù),表示將IP 維度(十六進(jìn)制)轉(zhuǎn)換為IPV4的字符串地址,或者通過字符串拼接對維度進(jìn)行格式化;例 如YEAR (time)+’-’+MONTH (time),其中YEAR是系統(tǒng)函數(shù),表示從time維度中提取年信息, 其中MONTH也是系統(tǒng)函數(shù),表示從time維度中提取月信息,如果time的值是2012年9月 8日15:39:30,那么上面這個虛擬維度對應(yīng)的值就是字符串“2012-09”。所謂維度組,就是將多個維度(包括虛擬維度)歸為一個組;當(dāng)維度組作為查詢條件,執(zhí)行報表查詢時,只能選擇該維度組中的一個維度作為查詢條件;當(dāng)維度組作為輸出內(nèi)容,執(zhí)行報表查詢時,必須且只能選擇該維度組中的一個維度作為輸出內(nèi)容。通過維度組,可以將多個報表模板合并為一個模板。所謂子維度,就是將ADR中的維度與其他維度表進(jìn)行關(guān)聯(lián),例如ADR中的終端類型維度,可以與終端類型維度表中的終端廠家或者操作系統(tǒng)進(jìn)行關(guān)聯(lián),從而可以實現(xiàn)對終端廠家或操作系統(tǒng)的指標(biāo)分析,終端類型維度就是終端廠家維度的子維度。
KPI分為常用KP1、占比KPI和統(tǒng)計KPI。常用KPI是對同一個ADR的指標(biāo)進(jìn)行四則運算,指標(biāo)的四則運算是一種經(jīng)常使用的KPI,例如成功率KPI,就是通過成功次數(shù)/(成功次數(shù)+失敗次數(shù))計算得到。占比KPI是用來計算某個維度的某個指標(biāo)相對于同類型其他維度同指標(biāo)的對比情況,例如用戶流量占比,就是某個用戶流量占所有用戶流量總和的百分比。統(tǒng)計KPI則是統(tǒng)計某個維度的數(shù)量,例如業(yè)務(wù)用戶數(shù),統(tǒng)計使用各個業(yè)務(wù)的用戶。
每個ADR都包含一個數(shù)據(jù)源名稱屬性,描述了 ADR關(guān)聯(lián)的數(shù)據(jù)表存放的數(shù)據(jù)源,例如數(shù)據(jù)庫。通過此方式,可以將數(shù)據(jù)表存放在多個數(shù)據(jù)源中,避免所有數(shù)據(jù)存放在一個數(shù)據(jù)源,導(dǎo)致的性能瓶頸和容量瓶頸。當(dāng)執(zhí)行報表模板查詢數(shù)據(jù)表時,系統(tǒng)自動連接報表模板對應(yīng)ADR的數(shù)據(jù)源,執(zhí)行結(jié)構(gòu)化查詢語句獲取報表數(shù)據(jù)。
ADR模型是從業(yè)務(wù)的角度描述數(shù)據(jù)庫中的數(shù)據(jù)表,因此每個ADR必然關(guān)聯(lián)數(shù)據(jù)庫中的若干張數(shù)據(jù)表。ADR中的每個基本維度和基本指標(biāo)分別對應(yīng)數(shù)據(jù)表的某個特定字段; 虛擬維度和KPI在數(shù)據(jù)表中沒有字段與之對應(yīng),但是,它們都是通過對數(shù)據(jù)表中的字段進(jìn)行運算和處理得到的。
可以將ADR關(guān)聯(lián)的數(shù)據(jù)表分為兩類事實表和聚集表。事實表的字段涵蓋了 ADR模型中的所有基本維度和基本指標(biāo),事實表描述的信息量最大。為了提高查詢效率,引入了聚集表的概念,聚集表中的數(shù)據(jù)是對事實表數(shù)據(jù)進(jìn)行聚集而來的。同樣,為了提高查詢效率, 可以針對不同粒度、分別創(chuàng)建對應(yīng)的聚集表,從圖2中可以看出,一個ADR最多可以關(guān)聯(lián)7 種粒度(15分鐘粒度、小時粒度、天粒度、周粒度、月粒度、季度粒度 、年粒度)的聚集表。不是所有的ADR都關(guān)聯(lián)如此多粒度的聚集表,當(dāng)用戶查詢報表數(shù)據(jù)時,系統(tǒng)根據(jù)報表粒度,優(yōu)先查詢對應(yīng)粒度的聚集表,如果不存在對應(yīng)粒度的聚集表,系統(tǒng)會自動查詢小粒度的聚集表。例如,ADR關(guān)聯(lián)的聚集表只有15分鐘粒度和小時粒度,如果用戶查詢天粒度的報表,系統(tǒng)從小時粒度的聚集表查詢天粒度報表的數(shù)據(jù)。
考慮到數(shù)據(jù)表中的數(shù)據(jù)量較大,可以通過分表的方式減少每個數(shù)據(jù)表的數(shù)據(jù)量, 從而提升查詢效率。事實表一般按天進(jìn)行分表;15分鐘粒度聚集表一般按天進(jìn)行分表;小時粒度聚集表一般按周進(jìn)行分表;天粒度聚集表一般按月進(jìn)行分表;周粒度聚集表一般按年進(jìn)行分表;月粒度聚集表一般按年進(jìn)行分表;季度粒度聚集表和年粒度聚集表沒有必要分表。系統(tǒng)在查詢報表數(shù)據(jù)時,根據(jù)查詢的粒度和時間范圍,選擇對應(yīng)的數(shù)據(jù)表,如果查詢的時間跨越多張數(shù)據(jù)表,需要對多張數(shù)據(jù)表進(jìn)行union查詢。
圖3所示為本發(fā)明實施例提供的報表創(chuàng)建系統(tǒng)示意圖,該系統(tǒng)由三部分組成報表客戶端、報表服務(wù)器和數(shù)據(jù)庫。其中,報表客戶端與報表服務(wù)器之間米用Β/S架構(gòu),報表客戶端程序采用swf文件的形式,部署在報表服務(wù)器上。報表客戶端需要安裝flash P layer和web瀏覽器,報表客戶端的瀏覽器從報表服務(wù)器下載swf文件,通過flash player 在本地運行客戶端程序。報表客戶端提供創(chuàng)建報表模板(指用戶操作)、報表查詢條件輸入和輸出報表查詢結(jié)果,這三個主要功能。
報表服務(wù)器負(fù)責(zé)根據(jù)用戶操作,創(chuàng)建并保存報表模板,和執(zhí)行報表查詢操作。在報 表查詢過程中,報表服務(wù)器通過開放數(shù)據(jù)庫互連(ODBC, Open DatabaseConnectivity)方式 動態(tài)連接數(shù)據(jù)庫。
為了支持海量數(shù)據(jù)的查詢,報表服務(wù)器支持接入多個數(shù)據(jù)庫,不同ADR對應(yīng)的報 表數(shù)據(jù)可以存放到不同的數(shù)據(jù)庫中。
具體的,在創(chuàng)建報表時,上述系統(tǒng)的三個部分的功能為
數(shù)據(jù)庫,用于存儲數(shù)據(jù)表數(shù)據(jù),對這些數(shù)據(jù)表進(jìn)行抽象化處理,創(chuàng)建ADR模型;
報表服務(wù)器,用于根據(jù)ADR模型創(chuàng)建報表模板、并存儲;還用于調(diào)用已創(chuàng)建的報表 模板,到數(shù)據(jù)庫中執(zhí)行報表查詢操作,并向報表客戶端返回查詢獲得的報表數(shù)據(jù);
報表客戶端,用于向報表服務(wù)器發(fā)出創(chuàng)建報表模板指令和報表查詢操作指令;還 用于顯示查詢獲得的報表數(shù)據(jù)。
報表服務(wù)器,還用于從數(shù)據(jù)庫的ADR模型中選擇要創(chuàng)建的報表模板所關(guān)聯(lián)的一個 ADR、并確定要創(chuàng)建的報表模板在導(dǎo)航樹上的位置,設(shè)置要創(chuàng)建的報表模板的名稱、查詢條 件、輸出內(nèi)容和輸出內(nèi)容的默認(rèn)輸出方式。
報表服務(wù)器,還用于設(shè)置要創(chuàng)建報表模板的時間參數(shù)、鉆取選項、TOPN選項、輸出 內(nèi)容的排序規(guī)則和/或輸出內(nèi)容的擴(kuò)展輸出方式。
報表服務(wù)器,還用于根據(jù)輸入的查詢條件生成結(jié)構(gòu)化查詢語句,到數(shù)據(jù)庫中查詢 數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)。
報表客戶端,還用于根據(jù)用戶指令調(diào)用已創(chuàng)建的報表模板,構(gòu)造CTI界面供用戶 輸入查詢條件;并將用戶輸入的查詢條件,發(fā)給報表服務(wù)器;
報表服務(wù)器,還用于對調(diào)用的報表模板關(guān)聯(lián)的ADR進(jìn)行鑒權(quán);鑒權(quán)成功時,還用于 獲取用戶有權(quán)訪問的域?qū)ο螅⒏郊拥捷斎氲牟樵儣l件、生成新的查詢條件,并根據(jù)新的查 詢條件、調(diào)用的報表模板的輸出內(nèi)容和輸出內(nèi)容的排序規(guī)則生成結(jié)構(gòu)化查詢語句;還用于 根據(jù)調(diào)用的報表模板關(guān)聯(lián)的ADR所包含的數(shù)據(jù)源名稱,連接到對應(yīng)的數(shù)據(jù)庫,并執(zhí)行結(jié)構(gòu) 化查詢語句到對應(yīng)的數(shù)據(jù)庫中查詢并獲得報表數(shù)據(jù),發(fā)送給所述報表客戶端。
圖4所示為本發(fā)明實施例提供的報表模板創(chuàng)建流程,包括如下步驟
第一步從ADR模型中選擇要創(chuàng)建的報表模板所關(guān)聯(lián)的一個ADR,每個報表模板必 須且只能關(guān)聯(lián)一個ADR。
第二步選擇要創(chuàng)建的報表模板在導(dǎo)航樹上的位置。通過導(dǎo)航樹,可以實現(xiàn)對創(chuàng)建 的報表模板的管理。
第三步設(shè)置要創(chuàng)建的報表模板的名稱。
第四步設(shè)置要創(chuàng)建的報表模板的粒度(即查詢條件)。每個ADR都配置了其支 持的粒度,為報表模板配置的粒度可以有多個,且該報表模板所有的粒度必須大于等于ADR 支持的最小粒度。(這里的粒度可以根據(jù)需要設(shè)定,例如15分鐘、30分鐘、I小時、I天、I 月、I季度、I年等等)。
第五步設(shè)置要創(chuàng)建的報表模板的輸出內(nèi)容。從要創(chuàng)建的報表模板關(guān)聯(lián)的ADR所 包含的基本維度和基本指標(biāo)中選擇一個或多個作為輸出內(nèi)容。
第六步設(shè)置要創(chuàng)建的報表模板的輸出內(nèi)容的默認(rèn)輸出方式,例如可以是表格。
通過上述六個步驟可以創(chuàng)建出一個簡單的報表模板。如果需要創(chuàng)建一個復(fù)雜的報表模板,可以選擇下面的步驟進(jìn)行設(shè)置。
可選操作一在設(shè)置報表模板輸出內(nèi)容時,除了基本維度和基本指標(biāo),還可以從虛擬維度和KPI中選擇一個或多個作為輸出內(nèi)容。對作為輸出內(nèi)容的一個或多個維度進(jìn)行父子關(guān)系的設(shè)定。
可選操作二 設(shè)置報表模板的查詢條件時,可以將要創(chuàng)建的報表模板關(guān)聯(lián)的ADR 包含的維度和/或指標(biāo)中的一個或多個作為查詢條件。(維度可以包括基本維度和虛擬維度;指標(biāo)可以包括基本指標(biāo)和KPI)這里,每個查詢條件可以支持>、> =、<、< =、=、 <>、IN、NOT IN、LL(左模糊匹配)、RL(右模糊匹配)、LIKE(模糊匹配,支持?和*通配符)等常見算法。一個報表模板中可以設(shè)置多個查詢條件,這些條件之間可以進(jìn)行AND、0R、 NOR運算。需要指出的是,當(dāng)指標(biāo)作為查詢條件時,需要設(shè)置該查詢條件的屬性(前置條件或后置條件),所謂前置條件,就是對原始記錄進(jìn)行條件過濾;所謂后置條件,就是對查詢結(jié)果進(jìn)行條件過濾。每個查詢條件可以設(shè)置是否預(yù)置,是否必選。所謂預(yù)置條件,就是每次查詢報表必須攜帶的查詢條件,可以認(rèn)為特殊的必選條件。通過上述查詢條件設(shè)置,可以支持復(fù)雜的條件查詢。
可選操作三設(shè)置時間參數(shù),包括日期多選、時段選擇、忙時、節(jié)假日。如果設(shè)置日期多選,可以實現(xiàn)離散日期的數(shù)據(jù)查詢;如果設(shè)置時段選擇,可以實現(xiàn)指定時段的數(shù)據(jù)查詢;如果設(shè)置忙時,可以實現(xiàn)忙時的數(shù)據(jù)查詢,忙時屬于特殊的時段選擇;如果設(shè)置節(jié)假日,可以實現(xiàn)節(jié)假日的數(shù)據(jù)查詢,節(jié)假日屬于特殊的日期多選。
可選操作四設(shè)置鉆取選項。為了滿足用戶的數(shù)據(jù)分析需求,需要提供鉆取功能。 所謂鉆取, 就是將查詢結(jié)果作為下一次查詢的條件,通過這種關(guān)聯(lián)查詢,可以方便用戶定位問題。在創(chuàng)建報表模板階段,只需要選擇支持鉆取的維度即可,至于鉆取的先后順序,在鉆取查詢過程中可以動態(tài)選擇。
可選操作五設(shè)置排序規(guī)則。很多報表數(shù)據(jù)查詢都要求對查詢結(jié)果進(jìn)行排序,在創(chuàng)建報表模板時,可以設(shè)置排序字段。排序字段為維度或者指標(biāo)(即輸出內(nèi)容),可以選擇多個排序字段,可以設(shè)置每個排序字段的排序規(guī)則(升序、降序)和先后順序。
可選操作六設(shè)置TOPN選項。一個報表模板可以設(shè)置多個TOPN選項,每個TOPN 選項必須指定參數(shù)記錄數(shù)(Τ0ΡΝ中的N)、維度、指標(biāo)及排序規(guī)則。其中TOPN指定的維度必須作為報表模板的輸出內(nèi)容。
可選操作七設(shè)置輸出內(nèi)容的擴(kuò)展輸出方式,例如圖形風(fēng)格。用戶可以設(shè)置報表數(shù)據(jù)所采用的圖形顯示風(fēng)格柱狀圖、柱狀堆積圖、趨勢圖、餅圖、面積圖、雷達(dá)圖、儀表盤。趨勢圖和柱狀圖支持雙坐標(biāo)和合并。
通過上述七項可選操作,用戶可以快速創(chuàng)建出復(fù)雜的報表模板,不涉及到復(fù)雜的二次開發(fā)流程和二次開發(fā)腳本的編寫。
完成報表模板創(chuàng)建后,報表客戶端會進(jìn)行校驗,檢查是否有遺漏或者設(shè)計錯誤。報表模板校驗通過后,用戶可以預(yù)覽該模板的查詢效果,如果不滿意,可以對報表模板進(jìn)行局部修改或重新設(shè)計,達(dá)到所見即所得的效果。
報表模板的創(chuàng)建功能由報表客戶端提供,設(shè)計好的報表模板保存到報表服務(wù)器上。
圖5所示為報表模板的查詢流程,大致過程為調(diào)用報表模板,根據(jù)輸入的查詢條 件生成結(jié)構(gòu)化查詢語句,從數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)并顯示。具體如下
1、根據(jù)用戶指令調(diào)用已創(chuàng)建的報表模板,構(gòu)造CTI界面供用戶輸入查詢條件。
用戶在報表客戶端上選擇某個已創(chuàng)建的報表模板,雙擊執(zhí)行查詢操作。報表客戶 端根據(jù)報表模板中定義的查詢條件,構(gòu)造GUI界面顯示查詢條件給用戶選擇,預(yù)置條件不 顯示在GUI界面給用戶選擇。用戶在GUI界面中,輸入查詢條件,點擊查詢。如果必選條件 沒有輸入,則返回錯誤提示;否則,繼續(xù)下一步。
2、對用戶所訪問的ADR進(jìn)行鑒權(quán)。這里,用戶所訪問的ADR即為調(diào)用的報表模板 關(guān)聯(lián)的ADR。
報表客戶端將用戶輸入的查詢條件,發(fā)給報表服務(wù)器。報表服務(wù)器首先對用戶所 訪問的ADR進(jìn)行鑒權(quán),如果鑒權(quán)失敗,則返回錯誤提示;否則繼續(xù)下一步。
3、獲取用戶有權(quán)訪問的域?qū)ο蟛⒏郊拥捷斎氲牟樵儣l件、生成新的查詢條件。
報表服務(wù)器獲取當(dāng)前用戶可以訪問的域?qū)ο?,以AND運算的方式附加到報表客戶 端下發(fā)的查詢條件中,形成新的查詢條件。根據(jù)新的查詢條件、調(diào)用的報表模板的輸出內(nèi)容 和輸出內(nèi)容的排序規(guī)則生成結(jié)構(gòu)化查詢語句。
4、報表服務(wù)器根據(jù)用戶所訪問的ADR所包含的數(shù)據(jù)源名稱,連接到對應(yīng)的數(shù)據(jù) 庫,并執(zhí)行結(jié)構(gòu)化查詢語句到數(shù)據(jù)庫中查詢、獲得報表數(shù)據(jù)。
5、根據(jù)調(diào)用的報表模板的輸出方式顯示查詢獲得的報表數(shù)據(jù)。
報表服務(wù)器將執(zhí)行結(jié)構(gòu)化查詢語句的結(jié)果、即查詢數(shù)據(jù)庫返回的報表數(shù)據(jù),持久 化到本地文件中、即結(jié)果文件,發(fā)給報表客戶端。報表客戶端讀取報表服務(wù)器返回的結(jié)果文 件,根據(jù)報表模板的輸出方式,進(jìn)行表格化展不和圖形渲染。
圖6所示為鉆取查詢的流程。
如果報表模板配置了鉆取選項,則用戶可以選擇查詢結(jié)果中的某條記錄進(jìn)行鉆取 查詢。有兩種鉆取方式快速鉆取和聞級鉆取。
所謂快速鉆取是指每次只能選擇一個維度作為鉆取維度。將當(dāng)前查詢條件和所 選擇的記錄中的維度作為鉆取查詢的條件;將用戶選擇的鉆取維度作為鉆取查詢的輸出維 度;將當(dāng)前查詢的指標(biāo)作為鉆取查詢的輸出指標(biāo)。
所謂高級鉆取是指每次可以選擇多個維度作為鉆取維度。可以選擇當(dāng)前查詢輸 出維度中的某些維度作為查詢條件;可以添加額外的查詢條件;可以指定鉆取查詢的輸出 指標(biāo);可以設(shè)置鉆取查詢結(jié)果的排序規(guī)則;可以設(shè)置輸出的圖形風(fēng)格。
報表客戶端將鉆取查詢的請求發(fā)給報表服務(wù)器后,報表服務(wù)器根據(jù)鉆取的查詢條 件、輸出維度、輸出指標(biāo)和排序規(guī)則,自動構(gòu)造SQL查詢語句,從數(shù)據(jù)庫中查詢數(shù)據(jù)。用戶可 以對鉆取結(jié)果再次進(jìn)行鉆取查詢。由于,當(dāng)前查詢的輸出維度(作為查詢條件)和鉆取輸 出維度不能再作為鉆取維度,因此,每鉆取一次,可鉆取的維度就會減少,直到?jīng)]有維度可 鉆取,鉆取流程就結(jié)束了。
綜上所述,采用本發(fā)明方法,用戶可以創(chuàng)建出復(fù)雜的報表模板,在此基礎(chǔ)上,實現(xiàn) 報表數(shù)據(jù)查詢和數(shù)據(jù)的鉆取分析。通過事先聚集和分庫分表的方式,解決了海量數(shù)據(jù)查詢 的性能瓶頸;通過分權(quán)分域,解決了數(shù)據(jù)的安全性問題。
為了實現(xiàn)上述報表創(chuàng)建方法,本發(fā)明還提供了一種報表創(chuàng)建裝置,包括模板創(chuàng)建單元和報表查詢單元,其中
模板創(chuàng)建單元,用于根據(jù)ADR模型創(chuàng)建報表模板、并存儲;ADR模型是對數(shù)據(jù)庫中 的數(shù)據(jù)表進(jìn)行抽象化處理獲得;
報表查詢單元,用于調(diào)用已創(chuàng)建的報表模板,執(zhí)行報表查詢操作,獲得報表數(shù)據(jù)。
模板創(chuàng)建單元,還用于從ADR模型中選擇要創(chuàng)建的報表模板所關(guān)聯(lián)的一個ADR、并 確定要創(chuàng)建的報表模板在導(dǎo)航樹上的位置,設(shè)置要創(chuàng)建的報表模板的名稱、查詢條件、輸出 內(nèi)容和輸出內(nèi)容的默認(rèn)輸出方式。
模板創(chuàng)建單兀,還用于設(shè)置要創(chuàng)建報表模板的時間參數(shù)、鉆取選項、TOPN選項、輸 出內(nèi)容的排序規(guī)則和/或輸出內(nèi)容的擴(kuò)展輸出方式。
報表查詢單元,還用于根據(jù)輸入的查詢條件生成結(jié)構(gòu)化查詢語句,到數(shù)據(jù)庫中查 詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)。
報表查詢單元,還用于對調(diào)用的報表模板關(guān)聯(lián)的ADR進(jìn)行鑒權(quán);鑒權(quán)成功時,還用 于獲取用戶有權(quán)訪問的域?qū)ο蟛⒏郊拥捷斎氲牟樵儣l件,生成新的查詢條件,并根據(jù)新的 查詢條件、調(diào)用的報表模板的輸出內(nèi)容和輸出內(nèi)容的排序規(guī)則生成結(jié)構(gòu)化查詢語句;還用 于根據(jù)調(diào)用的報表模板關(guān)聯(lián)的ADR所包含的數(shù)據(jù)源名稱,連接到對應(yīng)的數(shù)據(jù)庫,并執(zhí)行結(jié) 構(gòu)化查詢語句到對應(yīng)的數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)。
以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種報表創(chuàng)建方法,其特征在于,該方法包括 對數(shù)據(jù)庫中的數(shù)據(jù)表進(jìn)行抽象化處理,創(chuàng)建抽象數(shù)據(jù)記錄ADR模型; 根據(jù)所述ADR模型創(chuàng)建報表模板、并存儲; 調(diào)用已創(chuàng)建的報表模板,執(zhí)行報表查詢操作,并顯示查詢獲得的報表數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述報表創(chuàng)建方法,其特征在于,倉Il建的所述ADR模型由一個或多個ADR組成,每個ADR包含兩類基本元素基本維度和基本指標(biāo);所述基本維度分為時間維度和對象維度;每個ADR包含一個數(shù)據(jù)源名稱; ADR關(guān)聯(lián)的一個或多個數(shù)據(jù)表的數(shù)據(jù)存放在數(shù)據(jù)源名稱對應(yīng)的數(shù)據(jù)庫中; ADR包含的每個基本維度和基本指標(biāo)分別對應(yīng)ADR關(guān)聯(lián)的一個或多個數(shù)據(jù)表的特定字段; ADR關(guān)聯(lián)的一個或多個數(shù)據(jù)表分為事實表和聚集表;所述聚集表是對所述事實表聚集得到。
3.根據(jù)權(quán)利要求1所述報表創(chuàng)建方法,其特征在于,根據(jù)所述ADR模型創(chuàng)建報表模板,包括 從ADR模型中選擇要創(chuàng)建的報表模板所關(guān)聯(lián)的一個ADR、并確定要創(chuàng)建的報表模板在導(dǎo)航樹上的位置; 設(shè)置要創(chuàng)建的報表模板的名稱、查詢條件、輸出內(nèi)容和輸出內(nèi)容的默認(rèn)輸出方式。
4.根據(jù)權(quán)利要求2或3所述報表創(chuàng)建方法,其特征在于, 設(shè)置要創(chuàng)建的報表模板的查詢條件,包括將粒度設(shè)置為查詢條件,設(shè)置要創(chuàng)建的報表模板的一個或多個粒度,使所述一個或多個粒度均大于等于要創(chuàng)建的報表模板關(guān)聯(lián)的ADR支持的最小粒度; 設(shè)置要創(chuàng)建的報表模板的輸出內(nèi)容,包括從要創(chuàng)建的報表模板關(guān)聯(lián)的ADR包含的基本維度和基本指標(biāo)中選擇一個或多個作為輸出內(nèi)容。
5.根據(jù)權(quán)利要求4所述報表創(chuàng)建方法,其特征在于, 設(shè)置要創(chuàng)建的報表模板的輸出內(nèi)容時,該方法還包括對所述要創(chuàng)建的報表模板關(guān)聯(lián)的ADR所包含的基本維度進(jìn)行擴(kuò)展,得到虛擬維度;對所述要創(chuàng)建的報表模板關(guān)聯(lián)的ADR所包含的基本指標(biāo)進(jìn)行擴(kuò)展,得到KPI ; 所述虛擬維度分為組合維度、自定義維度、維度組和子維度;所述KPI分為常用KP1、占比KPI和統(tǒng)計KPI。
6.根據(jù)權(quán)利要求5所述報表創(chuàng)建方法,其特征在于,設(shè)置要創(chuàng)建的報表模板的輸出內(nèi)容,還包括從所述虛擬維度和所述KPI中選擇一個或多個作為輸出內(nèi)容,并對作為輸出內(nèi)容的一個或多個維度進(jìn)行父子關(guān)系的設(shè)定; 所述作為輸出內(nèi)容的一個或多個維度包括基本維度和/或虛擬維度。
7.根據(jù)權(quán)利要求5所述報表創(chuàng)建方法,其特征在于,設(shè)置要創(chuàng)建的報表模板的查詢條件,還包括將要創(chuàng)建的報表模板關(guān)聯(lián)的ADR包含的維度和/或指標(biāo)中的一個或多個作為查詢條件; 所述維度包括基本維度和/或虛擬維度;所述指標(biāo)包括基本指標(biāo)和/或KPI。
8.根據(jù)權(quán)利要求3所述報表創(chuàng)建方法,其特征在于,根據(jù)所述ADR模型創(chuàng)建報表模板,還包括設(shè)置要創(chuàng)建報表模板的時間參數(shù)、鉆取選項、TOPN選項、輸出內(nèi)容的排序規(guī)則和/或輸出內(nèi)容的擴(kuò)展輸出方式。
9.根據(jù)權(quán)利要求1所述報表創(chuàng)建方法,其特征在于,調(diào)用已創(chuàng)建的報表模板,執(zhí)行報表查詢操作,并顯示查詢獲得的報表數(shù)據(jù),包括調(diào)用已創(chuàng)建的報表模板,根據(jù)輸入的查詢條件生成結(jié)構(gòu)化查詢語句,到數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)并顯示。
10.根據(jù)權(quán)利要求9所述報表創(chuàng)建方法,其特征在于,調(diào)用所述報表模板,根據(jù)輸入的查詢條件生成結(jié)構(gòu)化查詢語句,到數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)并顯示,包括 根據(jù)用戶指令調(diào)用已創(chuàng)建的報表模板,構(gòu)造GUI界面供用戶輸入查詢條件; 對調(diào)用的報表模板關(guān)聯(lián)的ADR進(jìn)行鑒權(quán); 所述鑒權(quán)成功時,獲取用戶有權(quán)訪問的域?qū)ο螅⒏郊拥捷斎氲牟樵儣l件、生成新的查詢條件; 根據(jù)新的查詢條件、調(diào)用的報表模板的輸出內(nèi)容和輸出內(nèi)容的排序規(guī)則生成結(jié)構(gòu)化查詢語句; 根據(jù)調(diào)用的報表模板關(guān)聯(lián)的ADR所包含的數(shù)據(jù)源名稱,連接到對應(yīng)的數(shù)據(jù)庫,并執(zhí)行所述結(jié)構(gòu)化查詢語句到所述數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù); 根據(jù)調(diào)用的報表模板的輸出方式顯示所述報表數(shù)據(jù)。
11.根據(jù)權(quán)利要求10所述報表創(chuàng)建方法,其特征在于,對所述已創(chuàng)建的報表模板設(shè)置鉆取選項時,該方法還包括對所述查詢結(jié)果中的記錄進(jìn)行鉆取查詢。
12.—種報表創(chuàng)建系統(tǒng),其特征在于,包括數(shù)據(jù)庫、報表客戶端和報表服務(wù)器,其中 所述數(shù)據(jù)庫,用于存儲數(shù)據(jù)表數(shù)據(jù),對所述數(shù)據(jù)表進(jìn)行抽象化處理,創(chuàng)建ADR模型; 所述報表服務(wù)器,用于根據(jù)所述ADR模型創(chuàng)建報表模板、并存儲;還用于調(diào)用已創(chuàng)建的報表模板,到所述數(shù)據(jù)庫中執(zhí)行報表查詢操作,并向所述報表客戶端返回查詢獲得的報表數(shù)據(jù); 所述報表客戶端,用于向所述報表服務(wù)器發(fā)出創(chuàng)建報表模板指令和報表查詢操作指令;還用于顯示所述查詢獲得的報表數(shù)據(jù)。
13.根據(jù)權(quán)利要求12所述報表創(chuàng)建系統(tǒng),其特征在于, 所述報表服務(wù)器,還用于從所述數(shù)據(jù)庫的ADR模型中選擇要創(chuàng)建的報表模板所關(guān)聯(lián)的一個AD R、并確定要創(chuàng)建的報表模板在導(dǎo)航樹上的位置,設(shè)置要創(chuàng)建的報表模板的名稱、查詢條件、輸出內(nèi)容和輸出內(nèi)容的默認(rèn)輸出方式。
14.根據(jù)權(quán)利要求13所述報表創(chuàng)建系統(tǒng),其特征在于, 所述報表服務(wù)器,還用于設(shè)置要創(chuàng)建報表模板的時間參數(shù)、鉆取選項、TOPN選項、輸出內(nèi)容的排序規(guī)則和/或輸出內(nèi)容的擴(kuò)展輸出方式。
15.根據(jù)權(quán)利要求12所述報表創(chuàng)建系統(tǒng),其特征在于, 所述報表服務(wù)器,還用于根據(jù)輸入的查詢條件生成結(jié)構(gòu)化查詢語句,到所述數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)。
16.根據(jù)權(quán)利要求15所述報表創(chuàng)建系統(tǒng),其特征在于, 所述報表客戶端,還用于根據(jù)用戶指令調(diào)用已創(chuàng)建的報表模板,構(gòu)造GUI界面供用戶輸入查詢條件;并將用戶輸入的查詢條件,發(fā)給報表服務(wù)器;所述報表服務(wù)器,還用于對調(diào)用的報表模板關(guān)聯(lián)的ADR進(jìn)行鑒權(quán);所述鑒權(quán)成功時,還用于獲取用戶有權(quán)訪問的域?qū)ο蟛⒏郊拥捷斎氲牟樵儣l件、生成新的查詢條件,并根據(jù)新的查詢條件、調(diào)用的報表模板的輸出內(nèi)容和輸出內(nèi)容的排序規(guī)則生成結(jié)構(gòu)化查詢語句;還用于根據(jù)調(diào)用的報表模板關(guān)聯(lián)的ADR所包含的數(shù)據(jù)源名稱,連接到對應(yīng)的數(shù)據(jù)庫,并執(zhí)行所述結(jié)構(gòu)化查詢語句到所述數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù),發(fā)送給所述報表客戶端。
17.—種報表創(chuàng)建裝置,其特征在于,包括模板創(chuàng)建單元和報表查詢單元,其中 所述模板創(chuàng)建單元,用于根據(jù)ADR模型創(chuàng)建報表模板、并存儲;所述ADR模型是對數(shù)據(jù)庫中的數(shù)據(jù)表進(jìn)行抽象化處理獲得; 所述報表查詢單元,用于調(diào)用已創(chuàng)建的報表模板,執(zhí)行報表查詢操作,獲得報表數(shù)據(jù)。
18.根據(jù)權(quán)利要求17所述報表創(chuàng)建裝置,其特征在于, 所述模板創(chuàng)建單元,還用于從ADR模型中選擇要創(chuàng)建的報表模板所關(guān)聯(lián)的一個ADR、并確定要創(chuàng)建的報表模板在導(dǎo)航樹上的位置,設(shè)置要創(chuàng)建的報表模板的名稱、查詢條件、輸出內(nèi)容和輸出內(nèi)容的默認(rèn)輸出方式。
19.根據(jù)權(quán)利要求18所述報表創(chuàng)建裝置,其特征在于, 所述模板創(chuàng)建單元,還用于設(shè)置要創(chuàng)建報表模板的時間參數(shù)、鉆取選項、TOPN選項、輸出內(nèi)容的排序規(guī)則和/或輸出內(nèi)容的擴(kuò)展輸出方式。
20.根據(jù)權(quán)利要求17所述報表創(chuàng)建裝置,其特征在于, 所述報表查詢單元,還用于根據(jù)輸入的查詢條件生成結(jié)構(gòu)化查詢語句,到所述數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)。
21.根據(jù)權(quán)利要求20所述報表創(chuàng)建裝置,其特征在于, 所述報表查詢單元,還用于對調(diào)用的報表模板關(guān)聯(lián)的ADR進(jìn)行鑒權(quán);所述鑒權(quán)成功時,還用于獲取用戶有權(quán)訪問的域?qū)ο蟛⒏郊拥捷斎氲牟樵儣l件、生成新的查詢條件,并根據(jù)新的查詢條件、調(diào)用的報表模板的輸出內(nèi)容和輸出內(nèi)容的排序規(guī)則生成結(jié)構(gòu)化查詢語句;還用于根據(jù)調(diào)用的報表模板關(guān)聯(lián)的ADR所包含的數(shù)據(jù)源名稱,連接到對應(yīng)的數(shù)據(jù)庫,并執(zhí)行所述結(jié)構(gòu)化查詢語句到對應(yīng)的數(shù)據(jù)庫中查詢數(shù)據(jù)表數(shù)據(jù),獲得報表數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種報表創(chuàng)建方法和系統(tǒng),包括對數(shù)據(jù)庫中的數(shù)據(jù)表進(jìn)行抽象化處理,創(chuàng)建抽象數(shù)據(jù)記錄ADR模型;根據(jù)ADR模型創(chuàng)建報表模板、并存儲;調(diào)用已創(chuàng)建的報表模板,執(zhí)行報表查詢操作,并顯示查詢獲得的報表數(shù)據(jù)。通過本發(fā)明,用戶可以快速創(chuàng)建出復(fù)雜的報表模板,不涉及到復(fù)雜的二次開發(fā)流程和二次開發(fā)腳本的編寫。
文檔編號G06F17/30GK103020158SQ20121048531
公開日2013年4月3日 申請日期2012年11月26日 優(yōu)先權(quán)日2012年11月26日
發(fā)明者汪春, 趙理洋 申請人:中興通訊股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
永济市| 灌云县| 博湖县| 广丰县| 临夏县| 上高县| 浦北县| 台中县| 新宁县| 水富县| 遵义市| 汤阴县| 敦煌市| 东宁县| 会昌县| 岳阳县| 阿拉善右旗| 舞阳县| 扶绥县| 乐都县| 张家界市| 高陵县| 靖江市| 福建省| 马鞍山市| 阜新市| 辉县市| 宁晋县| 江都市| 高邮市| 曲靖市| 靖边县| 墨脱县| 改则县| 佳木斯市| 桓仁| 武汉市| 辽阳县| 山东省| 九龙城区| 揭阳市|