潤(rùn)乾報(bào)表技術(shù)白皮書.doc_第1頁(yè)
潤(rùn)乾報(bào)表技術(shù)白皮書.doc_第2頁(yè)
潤(rùn)乾報(bào)表技術(shù)白皮書.doc_第3頁(yè)
潤(rùn)乾報(bào)表技術(shù)白皮書.doc_第4頁(yè)
潤(rùn)乾報(bào)表技術(shù)白皮書.doc_第5頁(yè)
已閱讀5頁(yè),還剩88頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

潤(rùn)乾報(bào)表 技術(shù)白皮書 北京潤(rùn)乾軟件技術(shù)有限公司 2006 年 3 月 目目 錄錄 第第 1 章章總體說(shuō)明總體說(shuō)明 4 1 1潤(rùn)乾報(bào)表軟件概述 4 1 2產(chǎn)品構(gòu)成 5 第第 2 章章新一代報(bào)表模型新一代報(bào)表模型 7 2 1數(shù)據(jù)統(tǒng)計(jì)模型 7 2 2數(shù)據(jù)填報(bào)模型 18 第第 3 章章功能詳細(xì)描述功能詳細(xì)描述 22 3 1報(bào)表設(shè)計(jì) 22 3 2報(bào)表展現(xiàn)輸出 41 3 3數(shù)據(jù)填報(bào) 52 3 4交互與 OLAP 58 3 5報(bào)表管理中心 63 3 6報(bào)表任務(wù)調(diào)度 65 第第 4 章章部署與應(yīng)用方案部署與應(yīng)用方案 67 4 1報(bào)表設(shè)計(jì)模式 67 4 2報(bào)表應(yīng)用部署方式 69 4 3數(shù)據(jù)報(bào)送應(yīng)用方式 73 4 4支持環(huán)境 76 第第 5 章章性能指標(biāo)與控制性能指標(biāo)與控制 78 5 1性能分析 78 5 2實(shí)測(cè)指標(biāo) 79 5 3控制手段 80 第第 6 章章集成接口集成接口 82 6 1數(shù)據(jù)源 82 6 2JAVA API 84 6 3前端接口 86 6 4設(shè)計(jì)器接口 88 第第 7 章章特點(diǎn)與優(yōu)勢(shì)總結(jié)特點(diǎn)與優(yōu)勢(shì)總結(jié) 90 7 1新一代報(bào)表模型 90 7 2真正易用的報(bào)表工具 90 7 3純 JAVA 報(bào)表軟件 91 7 4強(qiáng)有力的填報(bào)功能 91 7 5獨(dú)有的字符終端解決方案 92 7 6開放的系統(tǒng) 92 7 7可靠的本土支持 93 第第 8 章章逐點(diǎn)應(yīng)答逐點(diǎn)應(yīng)答 94 8 1功能性要求 94 8 2非功能性要求 99 8 3實(shí)施服務(wù)要求 110 第第 9 章章建議建議 113 9 1選擇開放性的工具 113 9 2與應(yīng)用緊密集成 113 9 3基于實(shí)際業(yè)務(wù)報(bào)表進(jìn)行測(cè)試 114 附 某保險(xiǎn)公司統(tǒng)計(jì)報(bào)表系統(tǒng)實(shí)際測(cè)試報(bào)告附 某保險(xiǎn)公司統(tǒng)計(jì)報(bào)表系統(tǒng)實(shí)際測(cè)試報(bào)告 115 第第 1 1 章章總體說(shuō)明總體說(shuō)明 1 1 潤(rùn)乾報(bào)表軟件概述潤(rùn)乾報(bào)表軟件概述 潤(rùn)乾報(bào)表是用于統(tǒng)計(jì)報(bào)表制作及數(shù)據(jù)填報(bào)的大型企業(yè)級(jí)報(bào)表軟件 它提供了高效 的報(bào)表設(shè)計(jì)方案 強(qiáng)大的報(bào)表展現(xiàn)能力 靈活的部署機(jī)制 并且具備強(qiáng)有力的填報(bào)功 能 配合以全面的用戶權(quán)限管理 報(bào)表調(diào)度功能和交互功能 為企業(yè)級(jí)統(tǒng)計(jì)分析 展 現(xiàn)提供了高性能 高效率的報(bào)表系統(tǒng)解決方案 潤(rùn)乾報(bào)表軟件的核心特點(diǎn)在于開創(chuàng)性地提出了新一代報(bào)表數(shù)學(xué)模型 采用了革命 性的多源分片 不規(guī)則分組 自由格間運(yùn)算 行列對(duì)稱等技術(shù) 使得復(fù)雜報(bào)表的設(shè)計(jì) 簡(jiǎn)單化 以往難以實(shí)現(xiàn)的報(bào)表可以輕松實(shí)現(xiàn) 避免了大量的復(fù)雜 SQL 編寫與前期數(shù)據(jù) 準(zhǔn)備 報(bào)表設(shè)計(jì)的效率提高了一個(gè)數(shù)量級(jí) 潤(rùn)乾報(bào)表是一個(gè)純 Java 報(bào)表工具 提供了全面的 API 接口 是開發(fā) Web 報(bào)表軟件 的理想選擇 Java 報(bào)表工具的跨平臺(tái)特性 使得它能良好地支持大型系統(tǒng)的需要 潤(rùn)乾報(bào)表不需安裝控件 可以實(shí)現(xiàn)純 HTML 報(bào)表方式 可以支持 PDF EXCEL 等輸 出 提供了全面的頁(yè)面與打印控制 能很多地滿足 Web 報(bào)表的展現(xiàn)需要 同時(shí) 潤(rùn)乾 報(bào)表對(duì)圖表有良好的支持 可以生成柱圖 餅圖 折線圖等二十幾種圖表 潤(rùn)乾報(bào)表提供基于動(dòng)態(tài)庫(kù)表關(guān)聯(lián)技術(shù)的填報(bào)功能 完美解決數(shù)據(jù)入庫(kù)的難題 極 大提高填報(bào)表單的處理效率 擴(kuò)展了 Web 報(bào)表工具的應(yīng)用方式 潤(rùn)乾報(bào)表提供了報(bào)表管理中心 可以對(duì)報(bào)表建立多層次的目錄管理 進(jìn)行全面的 用戶和基于角色的權(quán)限管理 潤(rùn)乾報(bào)表還提供了調(diào)度器模塊 可以實(shí)現(xiàn)定時(shí) 批量等報(bào)表自動(dòng)處理和報(bào)表的自 動(dòng)分發(fā) 1 2 產(chǎn)品構(gòu)成產(chǎn)品構(gòu)成 1 2 1基礎(chǔ)部件基礎(chǔ)部件 潤(rùn)乾報(bào)表由兩大核心部分組成 報(bào)表設(shè)計(jì)器報(bào)表設(shè)計(jì)器 設(shè)計(jì)編輯報(bào)表 自帶報(bào)表運(yùn)算引擎 連接數(shù)據(jù)庫(kù)后可預(yù)覽打印 報(bào)表 并可生成其它格式保存 設(shè)計(jì)器不依賴于其它部分 可獨(dú)立工作 設(shè) 計(jì)器以 Java 應(yīng)用程序 JavaApplication 的形式提交 報(bào)表服務(wù)器報(bào)表服務(wù)器 在后臺(tái)提供統(tǒng)計(jì)報(bào)表運(yùn)算和數(shù)據(jù)填報(bào)處理的服務(wù) 開放各層次 的 API 接口調(diào)用 由程序員調(diào)用生成結(jié)果報(bào)表 服務(wù)器運(yùn)行不依賴設(shè)計(jì)器 服務(wù)器以 Java 類包 jar 的形式提交 一般情況下不需要物理上的獨(dú)立服 務(wù)器 1 2 2可選組件可選組件 除基本部件外 潤(rùn)乾報(bào)表還提供如下可選組件 報(bào)表管理中心報(bào)表管理中心 一個(gè)簡(jiǎn)單的獨(dú)立報(bào)表管理應(yīng)用 處理用戶角色權(quán)限控制 功 能組織等 終端用戶可直接采用該組件完成報(bào)表管理 查閱 填報(bào)等工作 報(bào)表管理中心運(yùn)行依賴于報(bào)表服務(wù)器 報(bào)表調(diào)度器報(bào)表調(diào)度器 作為服務(wù)程序運(yùn)行 在設(shè)定的時(shí)刻自動(dòng)計(jì)算報(bào)表并將結(jié)果保存 或推送到指定的目標(biāo) 報(bào)表調(diào)度器運(yùn)行依賴于報(bào)表服務(wù)器 集成 遠(yuǎn)程 設(shè)計(jì)支持集成 遠(yuǎn)程 設(shè)計(jì)支持 包括基于 HTTP 協(xié)議的 JDBC 接口 基于 WebStart 技術(shù)的設(shè)計(jì)器封裝包和可編程的設(shè)計(jì)器遠(yuǎn)程文件訪問(wèn)接口 基于該組件可將 報(bào)表設(shè)計(jì)器集成于用戶的統(tǒng)一門戶管理之內(nèi) B S 或 C S 均可 實(shí)現(xiàn)遠(yuǎn)程 報(bào)表設(shè)計(jì) 統(tǒng)一管理報(bào)表模板文件等功能 WindowsWindows 展現(xiàn)控件展現(xiàn)控件 包括應(yīng)用于 Windows GUI 程序的 ActiveX 控件 生成 EXCEL PDF 流的 DLL 調(diào)用及相關(guān)后臺(tái)的服務(wù)程序 基于該組件可將報(bào)表運(yùn)算 結(jié)果以控件形式顯示于 Windows GUI 程序中 UNIXUNIX 的的 C C 接口接口 包括后臺(tái)服務(wù)程序與前端通訊的 C 程序 通訊部分的 C 代碼 以源碼形式提交 H 和 C 文件 基于該組件 可將報(bào)表應(yīng)用于 UNIX 下的 C 程序中 第第 2 2 章章新一代報(bào)表模型新一代報(bào)表模型 2 1 數(shù)據(jù)統(tǒng)計(jì)模型數(shù)據(jù)統(tǒng)計(jì)模型 數(shù)據(jù)統(tǒng)計(jì)模型是報(bào)表工具最重要的指標(biāo) 它決定了報(bào)表工具最基本的制表能力 即在不編代碼的情況下能夠制作出何種報(bào)表 事實(shí)上 市場(chǎng)上的眾多傳統(tǒng)報(bào)表產(chǎn)品在 處理復(fù)雜報(bào)表時(shí)確實(shí)存在明顯缺陷 大量報(bào)表仍需編寫代碼準(zhǔn)備數(shù)據(jù) 潤(rùn)乾報(bào)表開創(chuàng) 性地提出了新一代數(shù)據(jù)統(tǒng)計(jì)模型 采用全新的概念方法比較徹底地解決了中國(guó)復(fù)雜報(bào) 表中的各項(xiàng)問(wèn)題 2 1 1多源分片多源分片 多源分片多源分片是中國(guó)復(fù)雜報(bào)表的基本特征 多源多源是指一個(gè)報(bào)表的數(shù)據(jù)來(lái)源來(lái)自多個(gè)物理數(shù)據(jù)表 或類似數(shù)據(jù)體 甚至是多個(gè) 物理數(shù)據(jù)庫(kù) 這里的 多個(gè) 常常不是兩個(gè)三個(gè) 而是七八個(gè)乃至十幾個(gè) 傳統(tǒng)工具的基本報(bào)表單元只支持單源報(bào)表 需要在報(bào)表設(shè)計(jì)前將多源轉(zhuǎn)化成單源 處理 兩三個(gè)源尚可寫 SQL 語(yǔ)句完成 JOIN 或 UNION 等 但多到五六個(gè)源以上時(shí) 一方面對(duì)應(yīng)的 SQL 語(yǔ)句過(guò)于復(fù)雜難以維護(hù) 另一方面運(yùn)行效率也很低 這時(shí)常常要編 寫存儲(chǔ)過(guò)程或其它代碼來(lái)準(zhǔn)備數(shù)據(jù)了 如果多源來(lái)自多庫(kù) 則更為復(fù)雜 無(wú)法直接寫 出復(fù)雜 SQL 或存儲(chǔ)過(guò)程 需要架構(gòu)專門的數(shù)據(jù)庫(kù)橋后才可以完成 某些傳統(tǒng)工具也所聲稱的支持多源 實(shí)際上就是指多數(shù)據(jù)庫(kù)支持 把數(shù)據(jù)庫(kù)橋功 能集成進(jìn)入報(bào)表工具中 但真正到報(bào)表設(shè)計(jì)時(shí)仍然只能單源 多源往往帶來(lái)分片 正是由于分片 使得報(bào)表設(shè)計(jì)必須直接基于多源進(jìn)行 而不 能先將多源轉(zhuǎn)成單源進(jìn)行 有相當(dāng)一部分分片報(bào)表無(wú)論如何也不可能換成單源處理 部分能轉(zhuǎn)成單源的報(bào)表處理也非常繁瑣 分片分片是指報(bào)表的縱向或橫向或雙向同時(shí)被分成了多個(gè)區(qū)域 每個(gè)區(qū)域擴(kuò)展重復(fù)規(guī) 則不同 而又可能相互運(yùn)算 傳統(tǒng)工具能夠處理的上下格式一致和列方向固定的分片報(bào)表 即可由多源轉(zhuǎn)成單源 的報(bào)表 但會(huì)迫使用戶編寫復(fù)雜的 SQL UNION JOIN 和代碼準(zhǔn)備數(shù)據(jù) 導(dǎo)致工作 量大且維護(hù)困難 對(duì)于橫向分片數(shù)較多報(bào)表 由于必須采用 JOIN 方式準(zhǔn)備數(shù)據(jù) 關(guān) 聯(lián)條件復(fù)雜時(shí)很可能導(dǎo)致出 O Nk 的高計(jì)算復(fù)雜度 k 為分片數(shù) 性能很低 表 1 是個(gè)典型的縱向分片報(bào)表 數(shù)據(jù)區(qū)從上至下分成了幾片 先是一片按客戶匯 總的兩級(jí)分組區(qū)域 然后是兩個(gè)固定計(jì)算行 接下來(lái)又是一片按年度匯總的一級(jí)分組 區(qū)域 最后又是一個(gè)固定的合計(jì)行 各片分組層數(shù)不同 而且變動(dòng)與固定固定結(jié)合 而且各片之間還有數(shù)據(jù)溝通 某些計(jì)算行的值是由其它行計(jì)算出來(lái)的 這種上下格式 不一致的報(bào)表 其數(shù)據(jù)源不可能組織成單源 各片列數(shù)不同 也就不可能被傳統(tǒng)工具 實(shí)現(xiàn) 表 1 我們把表 1 橫過(guò)來(lái)擺形成表 2 成為一個(gè)橫向分片表 類似的 也是有兩片分組 層數(shù)不同的變列區(qū)域和幾個(gè)固定的計(jì)算列混合而成 傳統(tǒng)工具只提供比較死板的交叉 報(bào)表模型處理變列報(bào)表 其中的集合運(yùn)算只有固定的幾種選擇 不可隨意加列 更不 可能有多片變列區(qū)域 而這種復(fù)雜的動(dòng)靜混合交叉表就只能手工編程動(dòng)態(tài)加列實(shí)現(xiàn) 表 2 為了解決多源分片的問(wèn)題 許多傳統(tǒng)工具引入了子報(bào)表的概念 把每個(gè)分片做成 一個(gè)子表 然后再在主表中拼接起來(lái) 如上述的表 1 理論上是可以通過(guò)子表拼接完成 但實(shí)際上仍非常煩瑣 子表割裂了整表的一致性 一張報(bào)表被分成了多個(gè)小表 難以統(tǒng)一處理 給維護(hù) 管理工作帶來(lái)麻煩 從格式上看 各個(gè)子表各自獨(dú)立 很難將格線統(tǒng)一對(duì)齊 某個(gè)子表的格式進(jìn)行了 調(diào)整 所有其它子表都需要改動(dòng) 這是極其繁瑣的工作 而且每個(gè)子表的大小不固定 可能隨數(shù)據(jù)記錄數(shù)而變化 由于傳統(tǒng)工具的行列不對(duì)稱 下面還會(huì)談到 縱向排 列的幾個(gè)子表可以自動(dòng)擺位 而橫向則不行 如上述的表 2 即使用子表也無(wú)法完成 數(shù)據(jù)可以拼出 但格式無(wú)法拼出 而且 主子表之間和子表相互之間都無(wú)法溝通數(shù)據(jù) 只能將主表的數(shù)據(jù)作為參數(shù) 傳遞給子表 子表無(wú)法帶回信息 也無(wú)法向其它子表提供信息 這時(shí) 整表的混合運(yùn) 算將非常困難 必須單獨(dú)計(jì)算 無(wú)法采用某些子表的中間運(yùn)算結(jié)果 不僅書寫復(fù)雜 運(yùn)算效率也降低 表 3 就是個(gè)典型的主從表 當(dāng)然也是典型的多源分片報(bào)表 主記錄中的金額顯然 是明細(xì)信息中各產(chǎn)品金額的和 而在傳統(tǒng)工具的主子表模型中 主表的合計(jì)值不能引 用子表的數(shù)據(jù) 必須自行重新計(jì)算 表 3 潤(rùn)乾報(bào)表則直接支持多源 集 設(shè)計(jì) 在同一張報(bào)表中可同時(shí)引用多個(gè)數(shù)據(jù)集 摒棄了傳統(tǒng)死板的條帶式擴(kuò)展模型 而代之以獨(dú)創(chuàng)的單元格擴(kuò)展方案單元格擴(kuò)展方案 各數(shù)據(jù)集即可 以獨(dú)立擴(kuò)展 也可以相互引用 擴(kuò)展部分與固定部分可自由結(jié)合 而特有的主格關(guān)聯(lián)主格關(guān)聯(lián) 技術(shù)則可靈活地決定各級(jí)統(tǒng)計(jì)的范圍 保證匯總運(yùn)算的合理性與正確性 表 1 在潤(rùn)乾報(bào)表中將如下設(shè)計(jì) 需要根據(jù)數(shù)據(jù)變動(dòng)的行 5 6 行 采用單元格擴(kuò)展 B5 C5 格 機(jī)制 其中的 ds1 group 函數(shù)即負(fù)責(zé)擴(kuò)展重復(fù) 而中間的固定行 8 11 行 則可直接寫上 下一片 變動(dòng)行 13 14 行 又采用單元格擴(kuò)展 B13 格 進(jìn)行 ds4 group 函數(shù) 兩片擴(kuò)展分 別基于不同的數(shù)據(jù)集 ds1 和 ds4 且層數(shù)不同 右邊的 sum 運(yùn)算中還能引用這些格 值 整個(gè)報(bào)表即分片又統(tǒng)一 完美地解決了多源分片問(wèn)題 完成表 2 只要簡(jiǎn)單地將相關(guān)的擴(kuò)展單元格改變位置和方向即可 如下圖所示 潤(rùn) 乾報(bào)表在行方向的擴(kuò)展能力能夠完全應(yīng)用在列方向上 橫向擴(kuò)展 使得中國(guó)報(bào)表中常 見的橫向分片 多片變動(dòng) 動(dòng)靜結(jié)合的問(wèn)題很容易解決 對(duì)于表 3 這種主子表 在潤(rùn)乾報(bào)表無(wú)需借助子表概念完成 明細(xì)表 8 10 行 本 身可以自行擴(kuò)展重復(fù) 而且由于了設(shè)置主格關(guān)聯(lián) 整片明細(xì)表會(huì)自動(dòng)跟隨主記錄重復(fù) 而且主細(xì)表間可自由溝通信息 如 E3 格中的金額合計(jì)可直接由 G9 格中金額明細(xì)計(jì)算 出來(lái) 表達(dá)式 SUM G9 2 1 2不完全劃分不完全劃分 不完全劃分不完全劃分是中國(guó)復(fù)雜報(bào)表中的典型特征之一 傳統(tǒng)工具中的數(shù)據(jù)分組延用了關(guān)系數(shù)據(jù)庫(kù)中的相應(yīng)概念 為完全規(guī)則劃分完全規(guī)則劃分 即劃 分標(biāo)準(zhǔn)一致且有規(guī)則 一般都按某個(gè)字段或表達(dá)式 所有事實(shí)都必須出現(xiàn)且只出現(xiàn)一 次 分組值次序與原數(shù)據(jù)記錄次序一致 與完全劃分相反 在報(bào)表匯總中卻常常需要不規(guī)則劃分 即劃分標(biāo)準(zhǔn)看不出規(guī)律 常常只能窮舉 所有事實(shí)不一定全部出現(xiàn)在分組結(jié)果中 個(gè)別事實(shí)還可能重復(fù)出現(xiàn) 次序也與原數(shù)據(jù)記錄無(wú)關(guān) 固定固定分組是不規(guī)則劃分的常見表現(xiàn) 表 4 表 4 是個(gè)含有不規(guī)則劃分的人員統(tǒng)計(jì)表 同時(shí)也是個(gè)分片報(bào)表 年齡段的分組就 是個(gè)不規(guī)則劃分 劃分規(guī)律不明確 只能窮舉出來(lái) 分組不完全 沒(méi)有列出所有的部 門 每個(gè)一級(jí)部門中還可能有一些不屬于任何二級(jí)部門的人 其他類 表 5 表 5 則是另一種形態(tài)的不規(guī)則劃分報(bào)表 它的地區(qū)分組有三個(gè)特點(diǎn) 華北部分地 區(qū)中未包括內(nèi)蒙古 出現(xiàn)了不完全分組不完全分組 山東和青島有重復(fù)的部分 出現(xiàn)了可重分組可重分組 而且地區(qū)次序是確定這樣排列的 和數(shù)據(jù)記錄的次序無(wú)關(guān) 是個(gè)典型的固定行分組報(bào) 表 這兩個(gè)報(bào)表用傳統(tǒng)工具實(shí)現(xiàn)都較為困難 雖然報(bào)表格式并不復(fù)雜 但由于出現(xiàn)了 不規(guī)則劃分 無(wú)法直接用報(bào)表工具的分組功能完成 只能編程把數(shù)據(jù)準(zhǔn)備成一個(gè)單層 的二維表數(shù)據(jù)源 即加大了工作量 又很難體現(xiàn)數(shù)據(jù)之間的層次關(guān)系 潤(rùn)乾報(bào)表為分組運(yùn)算提供更多的過(guò)濾和排序選項(xiàng) 可生成不完全分組 采用內(nèi)建 數(shù)據(jù)集分組技術(shù)可以很好地完成固定分組及可重分組的問(wèn)題 而特有的 plot 集合函數(shù) 則解決了按段分組的困難 表 4 可采用 plot 函數(shù)進(jìn)行如下設(shè)計(jì) C4 格中的 plot 函數(shù)負(fù)責(zé)完成按段分組 可隨意填寫分段方案 A5 格的分組擴(kuò)展 可加上過(guò)濾條件 B5 格擴(kuò)展出有規(guī)律的二級(jí)部門 而其他類則可單列一行 其計(jì)算公 式可與上面的格分別填寫 C5 C6 格 表 5 則可以采用內(nèi)建數(shù)據(jù)集處理固定可重分組 先根據(jù)報(bào)表展現(xiàn)的行設(shè)計(jì)內(nèi)建數(shù)據(jù)集與之一一對(duì)應(yīng) 然后在報(bào)表設(shè)計(jì)中采用內(nèi)建 數(shù)據(jù)集進(jìn)行擴(kuò)展 A5 格 同行上其它各格的計(jì)算值都引用該格值 B5 H5 從而輕 松地完成了固定可重分組報(bào)表 2 1 3自由格間運(yùn)算自由格間運(yùn)算 除不完全劃分外 自由格間運(yùn)算自由格間運(yùn)算是中國(guó)復(fù)雜報(bào)表另一個(gè)典型特征 所有的報(bào)表工具都會(huì)提供一些計(jì)算列的功能 在原始數(shù)據(jù)基礎(chǔ)上再計(jì)算出一些別 的列值或統(tǒng)計(jì)值 這是報(bào)表展現(xiàn)中是不可缺少的功能 傳統(tǒng)工具一般只提供同行內(nèi)的格間運(yùn)算和針對(duì)某組 或全體 的集合運(yùn)算 對(duì)于 常見的跨行組運(yùn)算跨行組運(yùn)算則相當(dāng)困難 個(gè)別傳統(tǒng)工具提供了簡(jiǎn)單的跨行能力 如可以引用上 一行數(shù)據(jù) 而跨組則無(wú)能為力 對(duì)于集合運(yùn)算只提供個(gè)別固定的函數(shù) 如取第一名 算累計(jì)值等 無(wú)法組合出通用集合運(yùn)算 如取第二名 算累計(jì)的乘積等 某些帶條件 的運(yùn)算更是無(wú)法處理 如計(jì)算語(yǔ)文成績(jī)?cè)?90 分以上的同學(xué)的數(shù)學(xué)成績(jī)總和 除了有規(guī)律的跨行組運(yùn)算外 報(bào)表中還可能會(huì)有一些隨意的獨(dú)立格運(yùn)算獨(dú)立格運(yùn)算 其值可 能是報(bào)表中的任意幾個(gè)其它格運(yùn)算出來(lái) 甚至還可能會(huì)引用到報(bào)表外的數(shù)據(jù) 比如和 數(shù)據(jù)庫(kù)中的數(shù)據(jù)再次運(yùn)算等 由于傳統(tǒng)工具沒(méi)有很好的運(yùn)算后報(bào)表數(shù)據(jù)項(xiàng)命名機(jī)制運(yùn)算后報(bào)表數(shù)據(jù)項(xiàng)命名機(jī)制 傳統(tǒng)工具只能用列名命名設(shè)計(jì)階段的數(shù)據(jù)單元 很難精確描述數(shù)據(jù)引用關(guān)系 只能 寫出規(guī)律性很強(qiáng)的表達(dá)式 但隨意的獨(dú)立格運(yùn)算會(huì)就使傳統(tǒng)工具無(wú)法處理 而報(bào)表外 的數(shù)據(jù)引用更是只能借助腳本或外圍應(yīng)用程序 導(dǎo)致代碼極為混亂 表 6 是個(gè)典型的跨行組運(yùn)算報(bào)表 其中有比上期 跨行 和比去年同期 跨組 運(yùn)算 這種報(bào)表在傳統(tǒng)工具中常常又必須編程準(zhǔn)備數(shù)據(jù) 表 7 則展現(xiàn)了另一些自由格 間運(yùn)算 如計(jì)算排名 需要在同組中數(shù)出比當(dāng)前值大的數(shù)的個(gè)數(shù) 下方的幾個(gè)獨(dú)立格 中又引用了表格中數(shù)據(jù) 但又非整組全部引用 而是帶了某種條件 前三名 最下方 的一個(gè)格中還會(huì)引用到報(bào)表外的數(shù)據(jù) 北京市的全部銷售額不在報(bào)表中 表 6 表 7 這兩個(gè)報(bào)表的樣式都不復(fù)雜 但這些格間運(yùn)算會(huì)讓傳統(tǒng)工具非常為難 只能再次 依靠程序代碼 把數(shù)據(jù)事先計(jì)算好直接往報(bào)表里填 潤(rùn)乾報(bào)表則開創(chuàng)性地提出了單元格層次坐標(biāo)與相關(guān)格集的概念 可以則擴(kuò)展后的 每個(gè)單元格或格集進(jìn)行精確命名 即可在設(shè)計(jì)時(shí)自由引用任何一個(gè)擴(kuò)展后單元格 而 且還可以方便地嵌入 SQL 或其它函數(shù)以引用外部信息 表 6 在潤(rùn)乾報(bào)表中將如下設(shè)計(jì) D3 格中的 C3 1 和 E3 格中的 C3 A3 1 B3 0 即是層次坐標(biāo)寫法 用以精確定位 擴(kuò)展后的每個(gè)單元格 從而使得跨行組運(yùn)算可以方便地進(jìn)行 表 7 在潤(rùn)乾報(bào)表中的的設(shè)計(jì)方案 C4 格的表達(dá)式中應(yīng)用了層次坐標(biāo)和相關(guān)格集概念 用以計(jì)算其對(duì)應(yīng)的 B4 在擴(kuò)展 后的 B4 格組 擴(kuò)展后會(huì)有多個(gè) B4 的次序 E4 和 F4 的關(guān)系類似 B6 表達(dá)式中有 帶條件的引用 C4 3 即前三名 B7 格中又引用了另一個(gè)數(shù)據(jù)集 ds 的值 整個(gè)報(bào) 表的格間運(yùn)算非常自由 而潤(rùn)乾報(bào)表也能夠輕松處理 2 1 4行列對(duì)稱行列對(duì)稱 另外 所有以上的討論中還貫穿了一點(diǎn) 即行列對(duì)稱行列對(duì)稱 縱方向上擁有的自動(dòng)復(fù)制 擴(kuò)展的能力需要完全實(shí)現(xiàn)在橫方向上 報(bào)表可以橫向分組 橫向分片 對(duì)于橫向變列 的報(bào)表可以定義跨列組運(yùn)算等 傳統(tǒng)工具有行式表和交叉表兩種互不通用的模型 行式表完全不支持列向變動(dòng) 而交叉表非常死板 雖然可以支持多層變列 但只能有一片變列區(qū) 而且其中的匯總 運(yùn)算很簡(jiǎn)單 只有固定的一些函數(shù) 不可隨便增加運(yùn)算行列 傳統(tǒng)工具的行列嚴(yán)重不 對(duì)稱 列方向能力遠(yuǎn)遠(yuǎn)弱于行方向 稍復(fù)雜些的交叉表無(wú)法實(shí)現(xiàn) 傳統(tǒng)工具還習(xí)慣于把報(bào)表分成幾種孤立的類型 如網(wǎng)格報(bào)表 分組報(bào)表 主從報(bào) 表 交叉報(bào)表等 某種類型的報(bào)表可以解決某種問(wèn)題 但事實(shí)上 報(bào)表的上述復(fù)雜性 常常是混合在一起的 同一張報(bào)表中很可能包含了所有的問(wèn)題 這要求我們給出完整 的解決方案 而不能單獨(dú)分別處理 當(dāng)這幾種困難交織到一起時(shí) 整個(gè)問(wèn)題的復(fù)雜度 要遠(yuǎn)比解決幾個(gè)單個(gè)問(wèn)題的總和要大得多 而潤(rùn)乾報(bào)表則天然行列對(duì)稱 行方向擁有的數(shù)據(jù)擴(kuò)展能力在列方向也都有 所有 報(bào)表均在統(tǒng)一的處理模型下完成 無(wú)須專門的交叉表處理方案 在交叉表中也可以自 由編寫匯總表達(dá)式 中國(guó)復(fù)雜報(bào)表的各種困難在潤(rùn)乾報(bào)表中統(tǒng)一在一起得到了充分的 解決 2 2 數(shù)據(jù)填報(bào)模型數(shù)據(jù)填報(bào)模型 數(shù)據(jù)填寫是中國(guó)報(bào)表應(yīng)用中的一個(gè)重要需求 廣泛應(yīng)用于金融業(yè)和政府行業(yè) 而 相當(dāng)多的報(bào)表工具 特別是國(guó)外產(chǎn)品 完全不支持?jǐn)?shù)據(jù)填寫報(bào)送 而潤(rùn)乾報(bào)表則有非 常出色的數(shù)據(jù)填報(bào)能力 同統(tǒng)計(jì)匯總類似 填報(bào)解決方案中最關(guān)鍵的因素仍然是數(shù)據(jù)模型 通俗地說(shuō) 就 是數(shù)據(jù)如何寫入數(shù)據(jù)庫(kù)的方案 填報(bào)本身不是目的 填報(bào)是為了采集數(shù)據(jù)上來(lái)分析利 用 因此需要將填報(bào)收集的數(shù)據(jù)直接按其邏輯結(jié)構(gòu)提交到開放的關(guān)系型數(shù)據(jù)庫(kù)中 才 能有效地被其他應(yīng)用系統(tǒng)和統(tǒng)計(jì)分析系統(tǒng)所利用 2 2 1傳統(tǒng)方案的缺陷傳統(tǒng)方案的缺陷 有個(gè)別國(guó)內(nèi)傳統(tǒng)報(bào)表工具能夠支持?jǐn)?shù)據(jù)填寫 一般有三種方式處理數(shù)據(jù)入庫(kù) 采用中間文件 填寫結(jié)果寫入一個(gè)中間數(shù)據(jù)文件 如 EXCEL 填報(bào) 某些填 報(bào)方案能提供少量一些基于這些中間文件的統(tǒng)計(jì)匯總 但要完全利用則須將 這些數(shù)據(jù)進(jìn)行結(jié)構(gòu)化成后轉(zhuǎn)存到關(guān)系數(shù)據(jù)庫(kù)中 而將非結(jié)構(gòu)化的數(shù)據(jù)轉(zhuǎn)成可 以體現(xiàn)業(yè)務(wù)規(guī)則的結(jié)構(gòu)化數(shù)據(jù)是比較困難的工作 需要為每種報(bào)表編寫相應(yīng) 程序去處理 采用固定的數(shù)據(jù)結(jié)構(gòu) 填報(bào)方案提供一種 萬(wàn)能 的數(shù)據(jù)結(jié)構(gòu)將填好的數(shù)據(jù) 寫入 其數(shù)據(jù)結(jié)構(gòu)常常是只有三個(gè)字段 行號(hào) 列號(hào) 數(shù)值 或與之類似 這 種方法只是機(jī)械地將數(shù)據(jù)寫入了數(shù)據(jù)庫(kù) 數(shù)據(jù)結(jié)構(gòu)并未沒(méi)有體現(xiàn)業(yè)務(wù)規(guī)則 在使用時(shí)仍要再次進(jìn)行轉(zhuǎn)換工作 根據(jù)業(yè)務(wù)規(guī)則設(shè)計(jì)要保存的數(shù)據(jù)結(jié)構(gòu) 然后根據(jù)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)要填寫的報(bào)表 每個(gè)要填寫單元格的數(shù)據(jù)都有唯一對(duì)應(yīng)數(shù)據(jù)庫(kù)的字段 這樣在入庫(kù)時(shí)就可以 直接寫成結(jié)構(gòu)化的數(shù)據(jù) 這種方案的入庫(kù)機(jī)制是合理的 但報(bào)表是根據(jù)數(shù)據(jù) 結(jié)構(gòu)設(shè)計(jì)的 而庫(kù)表對(duì)應(yīng)關(guān)系常常都非常簡(jiǎn)單 結(jié)果導(dǎo)致報(bào)表不可自由繪制 只能提供簡(jiǎn)單的幾種死板表樣 不能滿足用戶需求 某些傳統(tǒng)填報(bào)方案的數(shù)據(jù)回填機(jī)制 所有這些填報(bào)方案的主要問(wèn)題是無(wú)法解決能體現(xiàn)業(yè)務(wù)規(guī)則的數(shù)據(jù)表與報(bào)表單元格 之間的匹配關(guān)系 從而導(dǎo)致前期報(bào)表設(shè)計(jì)或者后期數(shù)據(jù)入庫(kù)的極大困難 而潤(rùn)乾報(bào)表 獨(dú)創(chuàng)的自由庫(kù)表關(guān)聯(lián)技術(shù)則很好地解決了這一問(wèn)題 2 2 2自由庫(kù)表關(guān)聯(lián)自由庫(kù)表關(guān)聯(lián) 潤(rùn)乾報(bào)表的填報(bào)表允許數(shù)據(jù)庫(kù)表列與報(bào)表的單元格之間進(jìn)行任意匹配 設(shè)計(jì)報(bào)表 樣式時(shí)不需要考慮數(shù)據(jù)結(jié)構(gòu) 反之設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)時(shí)也只需要考慮業(yè)務(wù)規(guī)則而不用管報(bào) 表樣式 任意的報(bào)表樣式和數(shù)據(jù)結(jié)構(gòu)之間都能建立起對(duì)應(yīng)關(guān)系 而且這些對(duì)應(yīng)關(guān)系還 有自動(dòng)擴(kuò)展的能力 即有規(guī)律的表區(qū)只要設(shè)置一遍基本的對(duì)應(yīng)關(guān)系 表區(qū)中其它單元 格與數(shù)據(jù)庫(kù)的對(duì)應(yīng)關(guān)系可以自動(dòng)擴(kuò)展出來(lái) 如行式表填報(bào)時(shí) 只需要設(shè)置某一行的庫(kù) 表對(duì)應(yīng)關(guān)系 其它行都可以自動(dòng)擴(kuò)展 而交叉表則只要設(shè)計(jì)某一格的對(duì)應(yīng)關(guān)系即可 其它格也可以自動(dòng)擴(kuò)展出來(lái) 總結(jié)起來(lái)說(shuō) 就是任意匹配 自動(dòng)擴(kuò)展任意匹配 自動(dòng)擴(kuò)展 主從填報(bào) 自由 行式混合 交叉填報(bào) 2 2 3數(shù)據(jù)來(lái)去自由數(shù)據(jù)來(lái)去自由 潤(rùn)乾報(bào)表的填報(bào)方案還支持自由的數(shù)據(jù)來(lái)去方案 具體地講 就是有來(lái)有去 來(lái)有來(lái)有去 來(lái) 去無(wú)關(guān) 一來(lái)多去去無(wú)關(guān) 一來(lái)多去 如下圖所示 單元格中的數(shù)據(jù)都有來(lái)源 現(xiàn)實(shí)中常常需要制作多級(jí)匯總填報(bào)表 某一中間層的 填報(bào)表是先由下級(jí)統(tǒng)計(jì)出來(lái)的 而非空白格子 這樣就要求單元格的數(shù)據(jù)要有個(gè)來(lái)源 填寫的數(shù)據(jù)要入庫(kù) 則需要有個(gè)去處 來(lái)源和去處經(jīng)常可能是無(wú)關(guān)的 如可以將從 A 表中統(tǒng)計(jì)出來(lái)的結(jié)果修改后填入 B 表 而且一個(gè)單元格的去處可以有多個(gè) 來(lái)源當(dāng)然 不可能有多個(gè) 可以同時(shí)寫入 B1 表 B2 表 甚至可能是多個(gè)數(shù)據(jù)庫(kù) 如同一 批企業(yè)數(shù)據(jù)要同時(shí)寫給稅務(wù)部門和統(tǒng)計(jì)部門 第第 3 3 章章功能詳細(xì)描述功能詳細(xì)描述 3 1 報(bào)表設(shè)計(jì)報(bào)表設(shè)計(jì) 3 1 1類類 EXCEL 的報(bào)表設(shè)計(jì)方式的報(bào)表設(shè)計(jì)方式 類類 EXCEL 的編輯的編輯 潤(rùn)乾報(bào)表采用類 EXCEL 的方式進(jìn)行報(bào)表的繪制和編輯 如下圖 潤(rùn)乾報(bào)表主編輯界面 采用類 EXCEL 的可視化網(wǎng)格式編輯方案 不僅可所見即所得地繪制出復(fù)雜表樣 而且可免去傳統(tǒng)控件拖拽式編輯方式對(duì)齊數(shù)據(jù)項(xiàng)的繁瑣 在保證格式的整齊美觀的同 時(shí)大幅提高繪制效率 避免打印與顯示因分辨率不一致而出現(xiàn)的失真現(xiàn)象 另外 熟 悉 EXCEL 使用的人員相當(dāng)多 更易于報(bào)表繪制工作的上手 這種方案已逐步成為報(bào) 表樣式繪制的主流 讀入讀入 EXCEL 文件文件 潤(rùn)乾報(bào)表還可直接讀入 EXCEL 繪制好的報(bào)表格式 然后在報(bào)表設(shè)計(jì)器中進(jìn)一步修 改 以充分保護(hù)用戶以往在 EXCEL 上的積累 大大減少重復(fù)工作 Excel 原表 潤(rùn)乾報(bào)表直接讀入 EXCEL 報(bào)表格式 文檔類型即為 xls 公式調(diào)整公式調(diào)整 潤(rùn)乾報(bào)表在編輯過(guò)程中能夠象 EXCEL 一樣自動(dòng)調(diào)整公式 如在單元格 B1 中引用 了 C1 當(dāng) B 列和 C 列間插入一列時(shí) 引用的 C1 將會(huì)自動(dòng)變成 D1 這對(duì)于報(bào)表中表 達(dá)式編輯非常必要 原報(bào)表 B2 中的表達(dá)式引用了 C2 和 D3 在 C 列前插入一列后 B2 格的表 達(dá)式自動(dòng)調(diào)整 界面及基本功能界面及基本功能 潤(rùn)乾報(bào)表提供了非常美觀的外觀界面 可有多種配色風(fēng)格 產(chǎn)品采用全中文菜單 和對(duì)話框 常用的編輯手段均有快捷工具條以提高設(shè)計(jì)效率 在編輯過(guò)程中 提供縮放編輯功能 可以根據(jù)需要靈活設(shè)置縮放比例 更方便地 進(jìn)行報(bào)表的格式調(diào)整 在報(bào)表設(shè)計(jì)器中 可直接預(yù)覽報(bào)表 并打印或?qū)С龀?EXCEL PDF 等外部文件格 式 3 1 2單元格類型單元格類型 潤(rùn)乾報(bào)表的單元格支持如下類型 普通文本 一般的數(shù)值和文字 可以支持斜線 這種類型可以通過(guò)象 EXCEL 一樣的表達(dá)式 從數(shù)據(jù)庫(kù)中提取數(shù)據(jù)和進(jìn)行各種計(jì)算 該類單元格的顯示值 可與數(shù)據(jù)值分開 從而實(shí)現(xiàn)內(nèi)部代碼與顯示之間的對(duì)應(yīng) 顯示內(nèi)容可來(lái)自固 定列表 也可來(lái)自數(shù)據(jù)庫(kù)中的字典表 圖片文件 固定的圖片 如企業(yè) LOGO 圖片字段 來(lái)自數(shù)據(jù)庫(kù)字段的圖片 如人員照片 子報(bào)表 該單元格中將嵌入或引入一個(gè)子報(bào)表 統(tǒng)計(jì)圖 該單元格中將嵌入一個(gè)統(tǒng)計(jì)圖 HTML 文本 該單元格內(nèi)的文字 或表達(dá)式的運(yùn)算結(jié)果 將被理解成為一段 HTML 代碼 在報(bào)表 WEB 展現(xiàn)時(shí)將被嵌入整個(gè)報(bào)表的 HTML 文本中 從而可實(shí) 現(xiàn)用戶自定義的顯示或編輯方案 通過(guò)各種類型的單元格 可以在報(bào)表中添加各種元素 實(shí)現(xiàn)各種復(fù)雜的報(bào)表 潤(rùn)乾報(bào)表的單元格類型 帶斜線和圖片的報(bào)表 編輯畫面 D1 格是個(gè)圖片字段 帶斜線和圖片的報(bào)表 運(yùn)算畫面 D1 格已被運(yùn)算成圖片 3 1 3套打繪制及相關(guān)功能套打繪制及相關(guān)功能 底圖描繪實(shí)現(xiàn)套打繪制底圖描繪實(shí)現(xiàn)套打繪制 潤(rùn)乾報(bào)表采用底圖描繪的方案解決套打時(shí)的報(bào)表繪制問(wèn)題 可將需要套打的票據(jù) 掃描成圖片 作為報(bào)表設(shè)計(jì)的底圖 然后依照?qǐng)D片上格線進(jìn)行報(bào)表描繪 可保證繪制 出的報(bào)表能夠精確地套打進(jìn)入印刷票據(jù)中 底圖描繪方式進(jìn)行套打繪制 下面的表格是個(gè)底圖 精確度量等精確度量等 潤(rùn)乾報(bào)表提供以毫米為單位的精確度量 可保證報(bào)表的繪制和輸出完全與紙張精 準(zhǔn)一致 并會(huì)根據(jù)紙張大小在設(shè)計(jì)界面中畫出紙邊虛線 以提示設(shè)計(jì)人員分頁(yè)位置 3 1 4多數(shù)據(jù)源多數(shù)據(jù)源 潤(rùn)乾報(bào)表天然支持多數(shù)據(jù)源 同一張報(bào)表的數(shù)據(jù)來(lái)源可以是多個(gè)數(shù)據(jù)集甚至是多 個(gè)數(shù)據(jù)庫(kù)或是用戶自定義的數(shù)據(jù)集 通過(guò)這一功能 不僅可以采集來(lái)自不同來(lái)源的數(shù)據(jù) 更重要的是在潤(rùn)乾報(bào)表中可 以在報(bào)表內(nèi)直接使用多個(gè)不同數(shù)據(jù)集 而不需要強(qiáng)行用復(fù)雜的視圖把它們連接在一起 從而大大提高了報(bào)表設(shè)計(jì)效率和提高了靈活性 潤(rùn)乾報(bào)表多數(shù)據(jù)源 數(shù)據(jù)源的定義畫面 潤(rùn)乾報(bào)表支持各種數(shù)據(jù)集 SQL 存儲(chǔ)過(guò)程 文件 自定義 內(nèi)建 OLAP SERVER 3 1 5內(nèi)建數(shù)據(jù)集內(nèi)建數(shù)據(jù)集 潤(rùn)乾報(bào)表支持內(nèi)建數(shù)據(jù)集 即某個(gè)數(shù)據(jù)集的數(shù)據(jù)被寫進(jìn)報(bào)表模板文件之中 內(nèi)建 數(shù)據(jù)集和外部數(shù)據(jù)集有完全同樣的運(yùn)算 如擴(kuò)展 過(guò)濾等 內(nèi)建數(shù)據(jù)集可有如下應(yīng)用 完成不規(guī)則劃分完成不規(guī)則劃分 大量中國(guó)復(fù)雜報(bào)表均可能有不規(guī)則劃分要求 比如選擇若干個(gè)城市顯示相關(guān)的數(shù) 據(jù) 潤(rùn)乾報(bào)表可以將這些不規(guī)則劃分 如可重分組 固定分組 方案設(shè)置進(jìn)僅于當(dāng) 前報(bào)表相關(guān)的內(nèi)建數(shù)據(jù)集中 而不必在數(shù)據(jù)庫(kù)中創(chuàng)建冗余的數(shù)據(jù)表或視圖 可參見 2 1 2 中的例子 脫機(jī)瀏覽脫機(jī)瀏覽 潤(rùn)乾報(bào)表提供將外部數(shù)據(jù)集轉(zhuǎn)換為內(nèi)建數(shù)據(jù)集的功能 這樣即可將已做好的報(bào)表 數(shù)據(jù)源綁定進(jìn)報(bào)表 從而做到脫機(jī) 不連接數(shù)據(jù)庫(kù) 運(yùn)算和瀏覽 這一功能對(duì)于遠(yuǎn)程 調(diào)試報(bào)表有巨大幫助 遠(yuǎn)程技術(shù)人員可以不必依賴于用戶的數(shù)據(jù)環(huán)境而調(diào)試報(bào)表中的 錯(cuò)誤 內(nèi)建數(shù)據(jù)集綁定報(bào)表數(shù)據(jù)以實(shí)現(xiàn)脫機(jī)運(yùn)算和瀏覽 3 1 6表達(dá)式與函數(shù)表達(dá)式與函數(shù) 表達(dá)式表達(dá)式 潤(rùn)乾報(bào)表支持基于數(shù)據(jù)集和基于單元格的兩類表達(dá)式 并且可以混合書寫 如 ds1 sum amount B3 C3 sum D3 ds1 select id typeid C2 等 函數(shù)函數(shù) 潤(rùn)乾報(bào)表提供六類系統(tǒng)函數(shù) 數(shù)據(jù)集函數(shù) 單元格函數(shù) 數(shù)學(xué)函數(shù) 字符串函數(shù) 日期時(shí)間函數(shù) 轉(zhuǎn)換函數(shù) 同時(shí)也允許用戶自定義 JAVA 函數(shù) 潤(rùn)乾報(bào)表的函數(shù)功能非常強(qiáng)大 除了常規(guī)的計(jì)算函數(shù)外 更能針對(duì)報(bào)表和統(tǒng)計(jì)分 析的需要提供了特有的集合處理函數(shù)集合處理函數(shù) 可用以實(shí)現(xiàn)報(bào)表自動(dòng)擴(kuò)展 分組等變化 例如 潤(rùn)乾報(bào)表提供 plot 函數(shù)實(shí)現(xiàn)中國(guó)復(fù)雜報(bào)表中常見的按段分組需求 除分組方案外 plot 函數(shù)與普通分組函數(shù)一致 也可以實(shí)現(xiàn)多層或交叉分段匯總 例子可參見 2 1 2 節(jié) 3 1 7分片混合擴(kuò)展與相關(guān)引用分片混合擴(kuò)展與相關(guān)引用 潤(rùn)乾報(bào)表摒棄傳統(tǒng)條帶擴(kuò)展方案而采用單元格擴(kuò)展機(jī)制 可以很容易完成同一報(bào) 表中的分片擴(kuò)展 并列或?qū)哟尉?并可實(shí)現(xiàn)固定行列與變動(dòng)行列混合編排 各擴(kuò)展 片之間還可相互引用數(shù)據(jù)而并非完全無(wú)關(guān) 例子可參見 2 1 1 節(jié) 3 1 8靈活快捷的分組匯總靈活快捷的分組匯總 潤(rùn)乾報(bào)表可簡(jiǎn)單完成帶有多級(jí)分組與匯總的普通行式報(bào)表 采用單元格分組函數(shù) 實(shí)現(xiàn)分組擴(kuò)展 沒(méi)有明顯的分組區(qū)域 從而在增刪分組或改變分組次序時(shí)不必象傳統(tǒng) 報(bào)表工具需要重新設(shè)計(jì)分組區(qū)內(nèi)數(shù)據(jù)表達(dá)式 潤(rùn)乾報(bào)表獨(dú)創(chuàng)的主格關(guān)聯(lián)機(jī)制決定了統(tǒng) 計(jì)匯總的范圍 匯總表達(dá)式可以擺放在報(bào)表中任何合理的位置 分組上 下邊或在分組 明細(xì)同行合并成一個(gè)大格 帶分組合計(jì)的行式報(bào)表 設(shè)計(jì) 潤(rùn)乾報(bào)表的分組采用數(shù)據(jù)集 group 函數(shù)完成 A4 B4 格中的表達(dá)式 沒(méi)有傳統(tǒng)的分 組區(qū)域 合計(jì)表達(dá)式 E5 E6 I4 J4 可以放在任何地方 分組下邊或右邊 由主格關(guān) 系機(jī)制決定其運(yùn)算范圍 而不是由位置來(lái)控制 還可以實(shí)現(xiàn)跨行組的序號(hào)大排隊(duì) C4 格 該報(bào)表運(yùn)算結(jié)果如下 帶分組合計(jì)的行式報(bào)表 運(yùn)行 3 1 9行列對(duì)稱的擴(kuò)展機(jī)制行列對(duì)稱的擴(kuò)展機(jī)制 潤(rùn)乾報(bào)表行列對(duì)稱設(shè)計(jì) 無(wú)須專門的交叉表模型處理列向變動(dòng)的報(bào)表 多層 分 片交叉報(bào)表均可輕松實(shí)現(xiàn) 并可類似行式報(bào)表一樣編寫自由的匯總運(yùn)算 多層交叉帶匯總報(bào)表 設(shè)計(jì) 上面報(bào)表中 A5 B5 格運(yùn)行縱向擴(kuò)展 D3 D4 格進(jìn)行橫向擴(kuò)展 雙向擴(kuò)展后即可 形成交叉報(bào)表 中間部分的匯總運(yùn)算仍是自由填寫的表達(dá)式 其中可引上左 上表頭的 單元格值 而不必象傳統(tǒng)工具那樣必須是規(guī)定好的幾種運(yùn)算 充分體現(xiàn)行列對(duì)稱的思 想 運(yùn)算結(jié)果如下 多層交叉帶匯總報(bào)表 運(yùn)行 3 1 10層次座標(biāo)層次座標(biāo) 潤(rùn)乾報(bào)表發(fā)明的層次坐標(biāo)和位移坐標(biāo)概念能夠?qū)U(kuò)展后單元格 集進(jìn)行命名 從而 可以在表達(dá)式中精確描述出對(duì)其它單元格的引用 完美地解決自由格間運(yùn)算 有規(guī)律 的單元格跨行組運(yùn)算可輕松實(shí)現(xiàn) 對(duì)于無(wú)規(guī)則的任意運(yùn)算 潤(rùn)乾報(bào)表還提供類 EXCEL 式的格間運(yùn)算 層次坐標(biāo)的例子參見 2 1 3 節(jié) 3 1 11子報(bào)表子報(bào)表 潤(rùn)乾報(bào)表支持不限嵌套層數(shù)的子報(bào)表功能 子報(bào)表分為引入式和嵌入式兩種 引入式將子表數(shù)據(jù)和格式依次填報(bào)主表的單元 格中 而嵌入式則將整個(gè)子表縮放后嵌入到主表的某個(gè)單元格中 嵌入式 主報(bào)表定義 子報(bào)表定義 嵌入式子報(bào)表運(yùn)行結(jié)果 主子表的格線不對(duì)齊 引入式 主報(bào)表定義 子報(bào)表 1 子報(bào)表 2 子報(bào)表 3 引入式子報(bào)表運(yùn)行結(jié)果 子表延用主表的格線 3 1 12統(tǒng)計(jì)圖的定義統(tǒng)計(jì)圖的定義 潤(rùn)乾報(bào)表的統(tǒng)計(jì)圖數(shù)據(jù)來(lái)源于報(bào)表內(nèi)而非重新再設(shè)置數(shù)據(jù)源 因而也可以支持多 表多庫(kù)的統(tǒng)計(jì)圖 同一張報(bào)表可繪制多個(gè)統(tǒng)計(jì)圖 甚至可繪制在分組內(nèi) 隨著數(shù)據(jù)分 組一起擴(kuò)展成多個(gè) 統(tǒng)計(jì)圖數(shù)據(jù)定義 圖形特性定義 外觀屬性定義 時(shí)間狀態(tài)圖定義 3 1 13報(bào)表參數(shù)與宏報(bào)表參數(shù)與宏 潤(rùn)乾報(bào)表一般意義的報(bào)表參數(shù)功能 參數(shù)有數(shù)據(jù)類型 可以用于報(bào)表的數(shù)據(jù)源 SQL 語(yǔ)句 或報(bào)表中的運(yùn)算表達(dá)式中 報(bào)表參數(shù)定義 SQL 語(yǔ)句中使用參數(shù) 除參數(shù)外 潤(rùn)乾報(bào)表還提供特有的宏 宏沒(méi)有數(shù)據(jù)類據(jù) 僅是簡(jiǎn)單地在語(yǔ)句或表 達(dá)式中替換 例如 可以將 SQL 語(yǔ)句中 SELECT 的列名或 FROM 的表名或 ORDER BY 的方向甚至整句 SQL 語(yǔ)句都作為宏而臨時(shí)改變 這樣將給使用者提供更加靈活的 控制方式 舉例說(shuō)明 如果將一個(gè) SQL 語(yǔ)句的 WHERE 條件中 100 改成 200 可以采用普 通意義的參數(shù) 但若想將200 則用參數(shù)就不可能作到了 但采用宏則可輕 易完成 帶有參數(shù)和宏的報(bào)表 B2 格帶有參數(shù) B6 格中帶有宏 可用于替換參數(shù)無(wú)法完成的報(bào)表選出字段 3 1 14向?qū)c工具向?qū)c工具 潤(rùn)乾報(bào)表軟件提供了強(qiáng)有力的輔助工具 可以幫助用戶更方便 更高效地進(jìn)行報(bào) 表設(shè)計(jì) 報(bào)表設(shè)計(jì)向?qū)?bào)表設(shè)計(jì)向?qū)?潤(rùn)乾報(bào)表對(duì)于簡(jiǎn)單的行式 分組與交叉報(bào)表提供設(shè)計(jì)向?qū)?用戶只需要選擇相應(yīng) 的數(shù)據(jù)表列即可以自動(dòng)生成出報(bào)表 分組報(bào)表定義向?qū)?交叉報(bào)表定義向?qū)?行列定義 交叉報(bào)表定義向?qū)?值定義 SQL 編輯器編輯器 潤(rùn)乾報(bào)表提供標(biāo)準(zhǔn) SQL 編輯對(duì)話框 用戶不必記憶數(shù)據(jù)庫(kù)表 字段名稱 可直接在 SQL 編輯器中選擇要操作的數(shù)據(jù)元素 設(shè)計(jì)查詢 排序條件等 同時(shí)潤(rùn)乾報(bào)表也支持 直接輸入 SQL 語(yǔ)句 SQL 語(yǔ)句編輯器 字段選擇 SQL 語(yǔ)句編輯器 參數(shù)引用 中文語(yǔ)義層中文語(yǔ)義層 表達(dá)式表達(dá)式 潤(rùn)乾報(bào)表支持中間語(yǔ)義層機(jī)制 開發(fā)人員可將數(shù)據(jù)結(jié)構(gòu)事先以業(yè)務(wù)人員熟悉的術(shù) 語(yǔ)進(jìn)行描述 在設(shè)計(jì)報(bào)表時(shí)即可直接采用這些語(yǔ)義信息 而不必直接面向物理數(shù)據(jù)結(jié) 構(gòu) 同時(shí) 潤(rùn)乾報(bào)表還支持中文表達(dá)式 如可以寫類似 價(jià)格 數(shù)量 這樣的表達(dá)式 使 報(bào)表設(shè)計(jì)更加通俗易懂 數(shù)據(jù)表與字段的中文描述定義 字段外觀預(yù)定義 數(shù)據(jù)集字段中文定義 公式編輯公式編輯 函數(shù)幫助函數(shù)幫助 潤(rùn)乾報(bào)表提供可視化的表達(dá)式編輯對(duì)話框 用戶不必記憶系統(tǒng)提供的眾多函數(shù)與 需要操作的數(shù)據(jù)集元素 表達(dá)式的大部分都可以簡(jiǎn)單地用鼠標(biāo)點(diǎn)擊出來(lái) 而且對(duì)所有 系統(tǒng)函數(shù)均有詳細(xì)的在線幫助 公式編輯器 函數(shù)幫助 3 2 報(bào)表展現(xiàn)輸出報(bào)表展現(xiàn)輸出 潤(rùn)乾報(bào)表不需安裝控件 可以實(shí)現(xiàn)純 HTML 報(bào)表方式 可以支持 PDF EXCEL 等輸 出 提供了全面的頁(yè)面與打印控制 能很多地滿足 Web 報(bào)表的展現(xiàn)需要 同時(shí) 潤(rùn)乾 報(bào)表對(duì)圖表有良好的支持 可以生成柱圖 餅圖 折線圖等二十幾種圖表 3 2 1報(bào)表元素的外觀屬性報(bào)表元素的外觀屬性 潤(rùn)乾報(bào)表對(duì)報(bào)表元素提供非常豐富的外觀屬性 計(jì)有 潤(rùn)乾報(bào)表單元格外觀屬性列表 字體 字號(hào) 前景色 背景色 均支持調(diào)色板和透明顯示 邊框 類 EXCEL 可設(shè)計(jì)線型線寬 對(duì)齊方式 左中右 上中下對(duì)齊 自動(dòng)折行 縮進(jìn) 顯示格式 文字 數(shù)值 日期時(shí)間等數(shù)十種風(fēng)格 單元格顯示格式 定位拉伸 橫向擴(kuò)展表時(shí)保證標(biāo)題居中或居右 定位拉伸例子 D2 E2 格設(shè)計(jì)了定位規(guī)則 在 B2 橫向擴(kuò)展時(shí)會(huì)向右靠攏 結(jié)果如下 所有的屬性均可用表達(dá)式控制 含有屬性表達(dá)式的報(bào)表 屬性中填寫的表達(dá)式 運(yùn)算結(jié)果 不及格的下劃線且居中 偶數(shù)行是斜體 3 2 2統(tǒng)計(jì)圖統(tǒng)計(jì)圖 潤(rùn)乾報(bào)表支持如下 23 種類型的統(tǒng)計(jì)圖 柱形圖 三維柱形圖 三維簇狀柱形圖 堆積柱形圖 三維堆積柱形圖 餅圖 三維餅圖 折線圖 三維折線圖 區(qū)域圖 三維區(qū)域圖 條形圖 三維條形圖 三維簇狀條形圖 堆積條形圖 散列圖 時(shí)序狀態(tài)圖 時(shí)間走勢(shì)圖 雙軸柱線圖 雙軸折線圖 雷達(dá)圖 甘特圖 儀表盤 針對(duì)不同需要 在瀏覽器上可生成如下三種圖片類型 GIF 256 色 可透明顯示 不失真壓縮 JPG 真彩色 不可透明 失真壓縮 PNG 真彩色 可透明 不失真壓縮 潤(rùn)乾報(bào)表的部分統(tǒng)計(jì)圖 3 2 3頁(yè)面 頁(yè)面 HTML 輸出 輸出 潤(rùn)乾報(bào)表可在 WEB 上生成標(biāo)準(zhǔn)的純 HTML 輸出格式 對(duì) IE5 和 Netscape7 以及上 版本均可支持且效果一致 統(tǒng)計(jì)圖則完成以純 HTML 圖片形式展現(xiàn) 瀏覽器端無(wú)須事 先安裝任何插件 潤(rùn)乾報(bào)表在 WEB 上的展示 可隨意嵌入到網(wǎng)頁(yè)的任何地方 除靜態(tài) HTML 外 潤(rùn)乾報(bào)表還可生成固定表頭 上 左均可 的可滾動(dòng)報(bào)表以及行 式分組可伸縮報(bào)表 大大方便了用戶的使用 瀏覽器上表頭固定可上下左右滾動(dòng)顯示的報(bào)表 3 2 4文件輸出文件輸出 除標(biāo)準(zhǔn) HTML 外 潤(rùn)乾報(bào)表還可將報(bào)表以文件方式導(dǎo)出 例如 EXCEL 潤(rùn)乾報(bào)表可輸出完全不失真的 EXCEL 文件 報(bào)表中的統(tǒng)計(jì)圖也將嵌入其中 并附帶有各種打印屬性 生成的 EXCEL 可不作任何調(diào)整直接打印而不會(huì)喪失格 式信息 還可對(duì)導(dǎo)出的 EXCEL 進(jìn)行進(jìn)一步的加工處理 PDF 潤(rùn)乾報(bào)表可輸出 PDF 文件 報(bào)表中的統(tǒng)計(jì)圖也將嵌入 并附有紙張打印信 息 結(jié)果可直接輸出打印 TEXT 潤(rùn)乾報(bào)表可生成專為金融 郵政等行業(yè)字符終端應(yīng)用服務(wù)的帶格式文本 報(bào)表格線由中文表格符拼出 并可在其中設(shè)置 Escape 碼 可直接在字符打印 機(jī)上輸出 RAT 文件 RAT 文件是潤(rùn)乾報(bào)表自有的文件格式 用以保存運(yùn)算后的報(bào)表結(jié)果 其中帶 有統(tǒng)計(jì)圖 紙張打印信息等 可由潤(rùn)乾報(bào)表設(shè)計(jì)器打開查看以實(shí)現(xiàn)報(bào)表的脫機(jī) 瀏覽 不依賴于第三方軟件且可在 UNIX 上顯示 并可打印或再次輸出成上 述幾種格式的文件 輸出的 EXCEL 文件 保持所有格式且能將統(tǒng)計(jì)圖一并導(dǎo)出 輸出的 PDF 文件 帶有分頁(yè)信息 并導(dǎo)出了統(tǒng)計(jì)圖 獨(dú)有的帶格式文本輸出 可直接輸出在字符中終 3 2 5分頁(yè)與分欄分頁(yè)與分欄 潤(rùn)乾報(bào)表對(duì)報(bào)表頁(yè)面提供了強(qiáng)有力的控制功能 分頁(yè)方案分頁(yè)方案 可支持按紙張大小分頁(yè) 按行列數(shù)分頁(yè) 強(qiáng)制分頁(yè) 分組后或固定行列 分頁(yè)方向分頁(yè)方向 支持縱向和橫向雙方向分頁(yè) 有上表頭 頁(yè)眉 頁(yè)腳 左表頭等功能 上 左表頭 信息每頁(yè)均會(huì)合理重復(fù) 單元格拆分單元格拆分 單一單元格不能被分頁(yè)拆分 當(dāng)合并單元格被拆分時(shí)可選擇其中數(shù)據(jù)是否也分頁(yè) 斷開顯示 報(bào)表紙張與分頁(yè)屬性定義 單元格分頁(yè)屬性定義 行分區(qū)類型 列分區(qū)類型 分欄及其它分欄及其它 支持橫向分欄 支持末頁(yè)補(bǔ)足空行的操作 分欄輸出的報(bào)表 3 2 6打印打印 潤(rùn)乾報(bào)表可通過(guò)采用 JavaApplet 的方式實(shí)現(xiàn)瀏覽器中的精確打印 可支持如下功 能 一紙多頁(yè) 實(shí)現(xiàn)小票據(jù)或卡片式打印 可選擇按行排列和按列排列 縮放與定位 打印前的縮放及在紙張中的定位控制 頁(yè)碼控制 選擇不同頁(yè)碼打印 打印前可控制是否允許再修改數(shù)據(jù) 打印預(yù)覽畫面 支持一紙多頁(yè) 可縮放顯示 3 3 數(shù)據(jù)填報(bào)數(shù)據(jù)填報(bào) 潤(rùn)乾報(bào)表提供基于動(dòng)態(tài)庫(kù)表關(guān)聯(lián)技術(shù)的填報(bào)功能 完美解決數(shù)據(jù)入庫(kù)的難題 極 大提高填報(bào)表單的處理效率 擴(kuò)展了 Web 報(bào)表工具的應(yīng)用方式 3 3 1編輯風(fēng)格編輯風(fēng)格 潤(rùn)乾報(bào)表在瀏覽器端采用純 HTML 填寫方案 可提供如下編輯風(fēng)格 文字編輯框 下拉列表框 下拉項(xiàng)目為固定內(nèi)容 下拉數(shù)據(jù)框 下拉項(xiàng)目來(lái)自數(shù)據(jù)表 可帶檢索條件 復(fù)選框 下拉日歷 下拉樹 樹結(jié)點(diǎn)可來(lái)自于數(shù)據(jù)表 并可自動(dòng)循環(huán) 文件 圖片上載 支持的編輯風(fēng)格 下拉數(shù)據(jù)表 上載文件編輯 下拉樹編輯 3 3 2填寫控制填寫控制 在填報(bào)過(guò)程中 可以進(jìn)行嚴(yán)格的填寫控制 包括 可填寫控制 該單元格是 否可以填寫 可能屬性表達(dá)式控制 自動(dòng)計(jì)算 某些單元格是由其它單元格運(yùn)算而成的 當(dāng)基礎(chǔ)單元格的數(shù)據(jù)被 修改時(shí) 目標(biāo)單元格的數(shù)據(jù)自動(dòng)跟隨改變 計(jì)算公式在設(shè)計(jì)時(shí)設(shè)定好 合法性檢查 考察數(shù)據(jù)填寫是否合理 某單元格的數(shù)據(jù)類型是否匹配 如在 數(shù)字格中填入了非數(shù)字字符 單元格之間必須滿足的數(shù)據(jù)校驗(yàn)關(guān)系 如某 格的數(shù)據(jù)必須大于另一格的數(shù)據(jù) 對(duì)于輸入錯(cuò)誤的數(shù)據(jù) 系統(tǒng)會(huì)給出事先 設(shè)置好的提示信息并定位出有錯(cuò)單元格方便輸入者修改錯(cuò)誤 合法性檢查有兩種 1 即時(shí)檢查 填寫當(dāng)前格 輸入焦點(diǎn)離開該格時(shí)進(jìn)行檢查 若校驗(yàn)不滿足 則不得離開焦點(diǎn) 2 提交檢查 全部填完后在提交數(shù)據(jù)前進(jìn)行檢查 校驗(yàn)不滿足則不得提交 設(shè)計(jì)者還可以設(shè)置校驗(yàn)不滿足時(shí)的提示信息 以提示用戶出錯(cuò)的原因 自動(dòng)計(jì)算定義 合法性檢查定義 多頁(yè)填寫 潤(rùn)乾報(bào)表提供了多頁(yè)填報(bào) taglib 當(dāng)要填寫內(nèi)容很多時(shí) 可以組 織成多個(gè) tab 式的頁(yè)面一齊填寫 在 JSP 中可以設(shè)定多頁(yè)表單之間的填寫控 制關(guān)系 多頁(yè)填報(bào)及相關(guān)的合法性檢查 跨頁(yè) 3 3 3數(shù)據(jù)導(dǎo)入與離線編輯數(shù)據(jù)導(dǎo)入與離線編輯 潤(rùn)乾報(bào)表還可支持離線填報(bào)和批量導(dǎo)入數(shù)據(jù)的能力 離線填報(bào)離線填報(bào) 潤(rùn)乾報(bào)表生成的 HTML 表單可下載成本地文件中 其中保留了 JavaScript 代碼 因此所有的填寫控制均依然有效 用戶直接用瀏覽器打開這些離線 HTML 即可繼續(xù)填 寫數(shù)據(jù) 填寫過(guò)程中可以多次保存而不必與服務(wù)器有網(wǎng)絡(luò)連接 填寫完成后再聯(lián)機(jī)上 傳即可將數(shù)據(jù)提交到服務(wù)器的數(shù)據(jù)庫(kù)中 離線填報(bào)還可以采用導(dǎo)出或用戶自行繪制的 EXCEL 文件進(jìn)行 只要報(bào)表格式一致 即可將 EXCEL 數(shù)據(jù)引入報(bào)表中 這使得許多已采用 EXCEL 填寫數(shù)據(jù)的業(yè)務(wù)系統(tǒng)切換 到潤(rùn)乾報(bào)表非常容易 批量導(dǎo)入批量導(dǎo)入 離線用的 HTML 或 EXCEL 也可不是從瀏覽器下載而成 而由報(bào)表服務(wù)器批量 生成并采用某種方式 EMAIL 軟盤等 分發(fā)給填報(bào)人 由填報(bào)人填好后再收集回來(lái) 潤(rùn)乾報(bào)表支持文件導(dǎo)入功能 可將收集回的報(bào)表批量導(dǎo)入到數(shù)據(jù)庫(kù)中 離線填寫 仍可帶有合法性檢查關(guān)系 3 3 4庫(kù)表關(guān)聯(lián)庫(kù)表關(guān)聯(lián) 潤(rùn)乾報(bào)表支持如下三種基本填報(bào)表樣 自由式表格 整表對(duì)應(yīng)一條記錄 各字段分布在多個(gè)無(wú)規(guī)律的單元格中 如 人員的基本情況表 行 列 式表格 數(shù)據(jù)區(qū)每行 列 對(duì)應(yīng)一條記錄 如人員的履歷表 記錄 的某些字段 一般是主索引碼的一部分 會(huì)在行外 如人員履歷表中的人員 編號(hào) 這是最常見的表格式樣 設(shè)計(jì)時(shí)只要設(shè)置一行 列 的數(shù)據(jù)庫(kù)對(duì)應(yīng)屬 性 其它行 列 會(huì)由系統(tǒng)自動(dòng)擴(kuò)展 交叉式表格 數(shù)據(jù)區(qū)每格對(duì)應(yīng)一條記錄 如學(xué)生課程成績(jī)表 左邊是學(xué)生 上邊是課程 數(shù)據(jù)區(qū)是成績(jī) 設(shè)計(jì)時(shí)只要設(shè)置一格的數(shù)據(jù)庫(kù)對(duì)應(yīng)屬性 其它 格會(huì)由系統(tǒng)自動(dòng)擴(kuò)展生成 潤(rùn)乾報(bào)表同時(shí)支持以上三種表樣的混合 如一張?zhí)顖?bào)表的上半部分是自由式表格 下半部分是行式表格 還可以是更復(fù)雜的多頁(yè)混合的填報(bào)表單 一個(gè)單元格的數(shù)據(jù)可以同時(shí)寫入多個(gè)數(shù)據(jù)表 并且與其數(shù)據(jù)來(lái)源無(wú)關(guān) 從而可以很 方便地實(shí)現(xiàn)匯總填報(bào) 潤(rùn)乾報(bào)表更新屬性定義 3 3 5數(shù)據(jù)寫入數(shù)據(jù)寫入 潤(rùn)乾報(bào)表支持同一張?zhí)顚懕韱瓮瑫r(shí)寫入多個(gè)數(shù)據(jù)表 多條記錄的情況 填報(bào)服務(wù)程 序會(huì)利用數(shù)據(jù)庫(kù)事務(wù)功能保證其一致性 在設(shè)計(jì)表單模板時(shí)建立了數(shù)據(jù)庫(kù)字段與表單單元格之間的對(duì)應(yīng)關(guān)系 服務(wù)器會(huì)根 據(jù)對(duì)應(yīng)關(guān)系生成 SQL 語(yǔ)句 程序會(huì)自動(dòng)決定生成 UPDATE 還是 INSERT 語(yǔ)句 同時(shí) 會(huì)自動(dòng)判斷數(shù)據(jù)庫(kù)的類型 在 SQL 語(yǔ)句中添加相關(guān)的數(shù)據(jù)類型轉(zhuǎn)換函數(shù) 如在 ORACLE 中的日期常數(shù)要加 TO DATE 而 SQL Server 則是 CONVERT 示意圖可 參見 2 2 3 節(jié) 3 4 交互與交互與 OLAP 潤(rùn)乾報(bào)表提供了強(qiáng)有力的交互能力和分析能力 能夠支持用戶進(jìn)行 OLAP 分析 3 4 1靈活定義的查詢和參數(shù)功能靈活定義的查詢和參數(shù)功能 在很多情況下 用戶需要通過(guò)輸入條件 對(duì)數(shù)據(jù)進(jìn)行查詢 并靈活控制顯示的數(shù) 據(jù)范圍 潤(rùn)乾報(bào)表通過(guò)參數(shù)模板的功能 可以非常靈活地定義各種查詢界面和查詢條 件 由用戶方便地輸入查詢條件 交互式地控制報(bào)表的內(nèi)容和形式 實(shí)際上 影響一個(gè)報(bào)表的參數(shù)可能有很多項(xiàng) 其中部分參數(shù)是應(yīng)用系統(tǒng)或環(huán)境的 基本信息 不應(yīng)當(dāng)再由用戶輸入 如當(dāng)前登錄的用戶角色 當(dāng)天的日期等 無(wú)須輸入 的參數(shù)被稱之為系統(tǒng)參數(shù) 對(duì)應(yīng)的需要輸入的稱為用戶參數(shù) 潤(rùn)乾報(bào)表提供了強(qiáng)有力 的參數(shù)處理機(jī)制 可以分別對(duì)待處理這兩類不同情況的參數(shù) 潤(rùn)乾報(bào)表支持如下四種參數(shù)機(jī)制 缺省參數(shù)界面 潤(rùn)乾報(bào)表將根據(jù)報(bào)表的參數(shù)信息自動(dòng)生成一個(gè)非常簡(jiǎn)單的參數(shù)輸入界面 直接在 taglib 中配置就可以選擇是否出現(xiàn)該界面 該界面不能區(qū)分系統(tǒng)參數(shù) 和用戶參數(shù) 它將報(bào)表的所有參數(shù)都羅列出來(lái) 而且也只能提供最簡(jiǎn)單的文 字輸入方案 不能做出下拉選擇等效果 一般這種參數(shù)方式都是用于報(bào)表測(cè)試的 因其業(yè)務(wù)色彩太過(guò)薄弱 在實(shí) 際應(yīng)用中很少使用 自寫參數(shù)界面 由應(yīng)用程序員為每個(gè)報(bào)表專門編寫參數(shù)輸入界面 JSP 將輸入后的用戶 參數(shù)配合上系統(tǒng)參數(shù)設(shè)置到報(bào)表服務(wù)器 可以直接調(diào)用服務(wù)器的 API 設(shè)置 也 可以在 taglib 的屬性中設(shè)置 自寫參數(shù)可以讓程序員對(duì)報(bào)表查詢有最深入的控制力度 如可在某個(gè)參數(shù) 輸入完成后立即引起頁(yè)面的變動(dòng)而不必等所有參數(shù)全部輸入完畢 某些參數(shù)的 選值范圍可能被別一些參數(shù)過(guò)濾等 這樣可以造出更好的交互式效果 但相應(yīng) 的工作量也較繁瑣 繪制參數(shù)界面 潤(rùn)乾報(bào)表提供可繪制的參數(shù)界面 系統(tǒng)設(shè)計(jì)了一個(gè)專門的參數(shù)面板 taglib 可發(fā)布由用戶進(jìn)行參數(shù)填寫的界面 其中可以支持象下拉選擇等任何編輯風(fēng)格 與填寫控制方案 報(bào)表設(shè)計(jì)時(shí)并不涉及其參數(shù)界面 一個(gè)報(bào)表可以有多種參數(shù)輸入界面 參 數(shù)界面是自行繪制的 利用報(bào)表設(shè)計(jì)器畫 可以只涉及用戶參數(shù) 一般在頁(yè) 面程序 JSP 中將參數(shù)界面與報(bào)表展現(xiàn)配合起來(lái) 并且在這里將系統(tǒng)參數(shù)與 用戶參數(shù)配合起來(lái)提交給報(bào)表服務(wù)器 與自寫參數(shù)界面相比 繪制參數(shù)的方案可以省去許多編寫頁(yè)面程序 JSP 的工作量 也能獲得控制力度略弱但仍很友好的輸入界面 而且也較易于維護(hù) 這是最常用的參數(shù)輸入機(jī)制 參數(shù)面板的定義 參數(shù)的執(zhí)行 生成參數(shù)界面 對(duì)于批量較有規(guī)律的報(bào)表 程序員也可以采用生動(dòng)生成參數(shù)界面的方案 這種方案事實(shí)上與潤(rùn)乾報(bào)表自帶的缺省參數(shù)界面類似 所不同的是由應(yīng)用程序 員根據(jù)業(yè)務(wù)特色編寫程序自動(dòng)生成參數(shù)界面 這樣可以帶有較強(qiáng)的業(yè)務(wù)色彩 使其實(shí)用起來(lái) 報(bào)表服務(wù)器提供了讀出報(bào)表參數(shù)的 API 同時(shí)可以在報(bào)表設(shè)計(jì)時(shí)設(shè)置參數(shù) 的某些自定義屬性 應(yīng)用程序則根據(jù)這些信息自動(dòng)生成相應(yīng)的參數(shù)界面 區(qū)分 出系統(tǒng)參數(shù)與用戶參數(shù) 并根據(jù)參數(shù)屬性生成不同的編輯風(fēng)格和填寫控制等 3 4 2通用查詢通用查詢 潤(rùn)乾報(bào)表還提供通用查詢功能 設(shè)計(jì)人員可以為每張報(bào)表定義與參數(shù)無(wú)關(guān)的可查 詢指標(biāo)及每個(gè)指

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論