一種使用可擴展標記語言動態生成報表的方法和裝置的製作方法
2023-05-21 18:18:06 1
/>〈outtype=〃list"/>〈outtype=〃gr即hic"show=〃LINES"desp=〃下載流量FTPFTPsitesbydownloadtrafficline540〃height〈outtype='〃engdesp7540"height='〈outtype==〃300〃chart3dgraphic〃show=BAR'desp=〃下載流量FTP站sitesbydownloadtraffic=〃300〃chart3dgraphic〃show=PIE'desp=〃下載流量FTP站FTPsitesbydownloadtrafficcakygraphwidth〈pa:ramn咖e=〈par咖n咖e=〈par咖n咖e='datadefine>topn"value=〃10〃/decimals"value=〃2'timeinterval"value=(MBytes)〃engdespgr即h(MBytes)〃width=點統計柱圖(MBytes)〃engdesp=〃FTPhistogram(MBytes)width=〃點統計餅圖"engdesp==〃540〃height=〃300'chart3d=〃1〃/〈。aramname=〃timeinterval"value=〃_1'〈/template>其中,〈tablename=〃dev_log_table〃/>語句定義了數據所在資料庫表為dev_log_table;〈wherename=〃lower(category)〃.../>語句定義了過濾條件;〈fieldname=〃dst_ip〃.../>語句定義了統計內容;〈outtype=〃graphic".../>語句定義了數據展現形式。步驟S202、報表模板的數據填充。該數據填充過程,首先需要將報表模板轉換為可獲得數據的命令集合;然後執行該命令集合獲得動態數據。由於在步驟S201中已經定義了所需動態數據所在的資料庫表為dev—log—table,所以該過程中執行命令集合獲得動態數據是直接從該資料庫表中讀取的。步驟S203、根據所得動態數據及其設置的表達方式,生成所需圖片。步驟S204、將報表模板的統計參數、所得動態數據和圖片路徑信息保存在XML文件中。其中,將報表模板的統計參數、所得數據和圖片路徑信息保存在XML文件中的過程也就是通過XML語言對上述統計參數、所得動態數據和圖片路徑信息進行描述的過程。在本實施例中該描述的過程具體為(1)通過XML語言對待輸出的FTP下載流量月報表進行描述;(2)通過XML語言對獲取的FTP地址為192.168.1.60和192.168.98.52的下載流量的數據進行描述;(3)通過XML語言對在步驟S203中生成的圖片的路徑信息進行描述。具體的,上述過程通過XML語言進行描述的方式為〈?xmlversion=〃1.0〃encoding=〃utf_8〃?>〈DATA〉〈PERIODCONTENT=〃月報表〃/>〈C0LUMNS〉〈C0LUMNNAME=〃FTP地址〃TYPE=〃String"/>〈COLUMNNAME=〃下載流量〃TYPE=〃Integer"/>〈/C0LUMNS〉〈ROWFTP地址二〃192.168.1.60〃下載流量=〃10.04〃/>〈ROWFTP地址二〃192.168.98.52〃下載流量=〃360.10〃/>〈picturedesp=〃下載流量FTP站點統計線圖(MBytes)〃file=〃5_20081023153302.files/BMP_081023153351_6458.jpg〃/>〈picturedesp=〃下載流量FTP站點統計柱圖(MBytes)〃file=〃5_20081023153302.files/BMP_081023153353_3045.jpg〃/>〈picturedesp=〃下載流量FTP站點統計餅圖"file=〃5—20081023153302.files/BMP_081023153355_7845.jpg〃/>〈/DATA>步驟S205、利用XSLT(ExtensibleStylesheetLanguageTransformations,可擴展樣式錶轉換語言)文件將步驟S204中的XML文件轉換為HTML(HyperTextMark-upLanguage,超文本標記語言)文件,最終生成報表。本發明實施例提供的使用可擴展標記語言動態生成報表的方法,通過採用可擴展標記語言進行描述,便於報表模板、數據結構的存儲和解析。同時,將報表模板抽象化,使得報表模板與數據應用類別無關,實現了自定義動態生成報表,並且將報表的表現形式多樣化,提高了報表的製作效率。而且可以根據用戶的要求對報表模板進行擴展,實現了製作報表的靈活性和簡單化。本發明還提供一種使用可擴展標記語言動態生成報表的裝置,如圖3所示,該裝置包括報表模板生成單元310,用於利用可擴展標記語言對生成報表所需的統計參數和靜態數據進行編輯,獲得報表模板;數據獲取單元320,用於將報表模板轉換為能夠獲得與統計參數對應的統計數據內容的命令集合,以此獲取生成報表所需的動態數據;圖片生成單元330,用於根據獲取的動態數據及其表達方式,生成圖片;報表文件生成單元340,用於將所述統計參數、獲取的動態數據和圖片的路徑信息保存在可擴展標記語言文件中,並將該文件轉換為超文本標記語言格式的報表文件,以此生成報表。具體的,本發明提供的裝置還包括統計參數歸類單元350,用於對統計參數進行抽象歸類。上述統計參數包括生成報表所需的各個數據、過濾條件、組合方式、展現形式、表達方式和統計對象。其中,報表文件生成單元340中將可擴展標記語言文件轉換為超文本標記語言格式的報表文件是通過可擴展樣式錶轉換語言實現的。8本發明實施例提供的使用可擴展標記語言動態生成報表的裝置,通過採用可擴展標記語言進行描述,便於報表模板、數據結構的存儲和解析。同時,將報表模板抽象化,使得報表模板與數據應用類別無關,實現了自定義動態生成報表,並且將報表的表現形式多樣化,提高了報表的製作效率。而且可以根據用戶的要求對報表模板進行擴展,實現了製作報表的靈活性和簡單化。顯然,本領域的技術人員可以對本發明進行各種改動和變型而不脫離本發明的精神和範圍。這樣,倘若本發明的這些修改和變型屬於本發明權利要求及其等同技術的範圍之內,則本發明也意圖包含這些改動和變型在內。權利要求一種使用可擴展標記語言動態生成報表的方法,其特徵在於,包括以下步驟A、利用可擴展標記語言對生成報表所需的統計參數和靜態數據進行編輯,獲得報表模板;B、將所述報表模板轉換為能夠獲得與所述統計參數對應的統計數據內容的命令集合,以此獲取生成報表所需的動態數據;C、根據獲取的動態數據及其表達方式,生成圖片;D、將所述統計參數、獲取的動態數據和圖片的路徑信息保存在可擴展標記語言文件中,並將該文件轉換為超文本標記語言格式的報表文件,以此生成報表。2.如權利要求1所述的方法,其特徵在於,在所述A步驟之前還包括對所述統計參數進行抽象歸類。3.如權利要求1或2所述的方法,其特徵在於,所述統計參數包括生成報表所需的各個數據、過濾條件、組合方式、展現形式、表達方式和統計對象。4.如權利要求1所述的方法,其特徵在於,所述步驟D中將所述可擴展標記語言文件轉換為超文本標記語言格式的報表文件是通過可擴展樣式錶轉換語言實現的。5.—種使用可擴展標記語言動態生成報表的裝置,其特徵在於,包括報表模板生成單元,用於利用可擴展標記語言對生成報表所需的統計參數和靜態數據進行編輯,獲得報表模板;數據獲取單元,用於將所述報表模板轉換為能夠獲得與所述統計參數對應的統計數據內容的命令集合,以此獲取生成報表所需的動態數據;圖片生成單元,用於根據獲取的動態數據及其表達方式,生成圖片;報表文件生成單元,用於將所述統計參數、獲取的動態數據和圖片的路徑信息保存在可擴展標記語言文件中,並將該文件轉換為超文本標記語言格式的報表文件,以此生成報表。6.如權利要求5所述的裝置,其特徵在於,所述裝置還包括統計參數歸類單元,用於對所述統計參數進行抽象歸類。7.如權利要求5或6所述的裝置,其特徵在於,所述統計參數包括生成報表所需的各個數據、過濾條件、組合方式、展現形式、表達方式和統計對象。8.如權利要求5所述的裝置,其特徵在於,所述報表文件生成單元中將可擴展標記語言文件轉換為超文本標記語言格式的報表文件是通過可擴展樣式錶轉換語言實現的。全文摘要本發明公開了一種使用可擴展標記語言動態生成報表的方法和裝置,該方法包括利用可擴展標記語言對生成報表所需的統計參數和靜態數據進行編輯,獲得報表模板;將所述報表模板轉換為能夠獲得與所述統計參數對應的統計數據內容的命令集合,以此獲取生成報表所需的動態數據;根據獲取的動態數據及其表達方式,生成圖片;將所述統計參數、獲取的動態數據和圖片的路徑信息保存在可擴展標記語言文件中,並將該文件轉換為超文本標記語言格式的報表文件,以此生成報表。所述裝置包括報表模板生成單元、數據獲取單元、圖片生成單元和報表文件生成單元。通過本發明實現了自定義動態生成報表,且可對報表模板進行擴展,實現了製作報表的靈活性和簡單化。文檔編號G06F17/24GK101770449SQ20081024112公開日2010年7月7日申請日期2008年12月30日優先權日2008年12月30日發明者劉強申請人:北京天融信網絡安全技術有限公司