報表心得雜談 | FineReport-最強大動態報表與BI商業智慧軟體

報表雜談

越來越多的項目和行業要用到資料報表,但市場上資料報表工具很多,魚龍混雜。面對如此多的產品,很難只從一個方面就分出高低優劣,必須多方面比較。那麼一個合格的資料報表都有哪些標準呢? 標準一:資料報表廠家的發展前景 廠家的發展前景成為衡量資料報表工具好壞的第一條標準,猛一看似乎有些奇怪,但細想一下,就覺得合情合理了。首先,如果資料報表工具廠家運營不善不賺錢,那麼他對產品和服務的投入自然會少,後續結果就是產品不更新了,BUG沒人修復了,服務不給了,到時候用戶系統出BUG了,找哪位給你修復——叫天天不應叫地地不靈,就只能重新換一套報表工具。比如考察資料報表工具FineReport時,可以從其廠家帆軟公司的規模,市場口碑,市場份額,客戶數量和級別,銷售額入手,甚至還可以拿他們的員工學歷,人事招聘情況作為發展前景的指標。 標準二:資料報表廠家的服務和技術支援 不管是什麼企業用軟體產品,都要必須把廠家可以提供的服務與技術支援納入考慮範圍。從服務著眼,需要看三方面的內容:本地服務,服務渠道,服務體系。 本地服務。有了本地服務,才能在系統崩潰之時得到最快的支援,最大限度減少損失。例如FineReport,FineReport在台灣、日本、大陸地區的各大城市都設有本地服務中心。 提供多種服務接入渠道,電話、郵件、線上支援必備,這樣用戶才能方便尋求服務。 廠家的服務體系。服務人員是否熱情、專業、及時,會不會把客戶當夥伴,有服務滿意度調查之類的。廠家是否有標準服務流程以及服務考核機制,這樣對服務就更加放心,服務的不好就可以投訴了,誰敢不好好服務?當然,廠家如果有ISO9001國際服務質量體系認證最好。 標準三:資料報表產品要好學好操作 資料報表工具的使命是「縮短項目時間,減少項目成本」,所以報表工具必須要學起來簡單(學習成本低),操作起來便捷(使用方便,加快項目進度)。從學習角度講,就要求報表工具本身容易上手、學習渠道多、學習資料豐富,比如幫助文檔、視頻要多。像FineReport就挺重視用戶學習的,不僅提供了多種學習資料,還開設了線上免費培訓、線下培訓、技術論壇。參考資料多了,學起來才快。操作便捷,這個要親自體驗,主要是製作報表的過程是否簡捷、是否有引導性的操作界面、報表功能設置是否簡單等。 標準四:類EXCEL的設計模式 以前風靡過的條帶狀、控制項拖拽式的報表設計模式,已逐漸被報表市場的大環境淘汰掉了,中式報表的報表樣式和資料太複雜,表頭千變萬化,對填報的要求也很高,所以現在適合國情的也是主流的,就是類EXCEL的設計模式,單元格式的,靈活性更強,像EXCEL那樣操作,簡單易用,學的也快。條帶狀設計模式代表為Crystal Report(水晶報表),類EXCEL設計模式 代表為FineReport,可下載親自體驗。 標準五:支援多資料源關聯 由於信息化的廣泛應用,企業的資料不再單一,一般都會散布在ERP、CRM、OA、BPM等各種各樣的系統中,系統中的資料庫的多樣要求使用的資料報表也必須要兼容各種資料庫。支援多資料源關聯也就成了資料報表工具的標準之一。比如FineReport直接支援多資料源關聯,而不是先ETL做資料倉庫等工作之後再取數。現在流行甚廣的「企業資料孤島」的一個很便捷的經濟實用的解決辦法,就是用報表工具搭建一個報表中心,聯繫各種系統中的資料,這樣就可以實現全局資料、明細資料將隨用隨取。 標準六:支援報表遠端設計 想像一下一個資料報表工具不支援報表遠端設計是一件多讓人崩潰的事:修改報表必須要到內網伺服器,而一般情況資料庫從安全考慮不讓直接連接!沒有遠端設計,維護的麻煩程度也就可見一般了。報表遠端設計是解決這種問題的金鑰匙。比如FineReport可以本地電腦製作報表遠端發布,可以直接對伺服器端的報表檔案進行編輯更改,可以對報表模板進行許可權設置,而且還可以多人協同工作,這對加快項目進度非常重要。 標準七:有強大的資料統計和分析功能 這裡所說的「強大的資料分析統計功能」,是指能否滿足一些高級的匯總分析的需要,比如同比環比排名序號,是否有封裝好的公式或者模型拿來就用,是否支援資料的多維度分析,是否有支援報表定時調度等。資料存在的重要使命之一就是能夠通過對其的分析找到和發現一些隱藏信息,所以作為資料處理工具,報表也就必須要支援這些功能。 標準八:資料報表支援多種類圖表和動態圖表展現 現在已經是「讀圖」時代,圖表製作與展示資料的優勢早已被大眾了解。作為報表軟體,一定且必須要提供多種多樣的圖表樣式,常見的不說,高大上的諸如資料地圖、GIS地圖集成等。不僅要種類繁多,還要能動態展現,這才叫「圖表會說話」。FineReport提供的動態效果挺多,比如圖表系列交互、資料點提示、坐標軸縮放、圖表熱點鏈接(也是圖表透視探取)、圖表聯動這些都要有的。而且FineReport圖表技術上是html5實現的,動態效果也很好。 標準九:資料報表支援行動端應用 行動端的風行使得商務工作處理也逐漸向行動端的方向傾斜,所以支援行動端應用也就成為資料報表的標準之一。那麼行動端應用要有哪些功能呢?首先需要支援IOS、Android這些行動端系統,能集成到其他系統的APP中,且有自己的獨立的APP。然後行動端的報表要能夠符合行動端,比如支援頁面的放大縮小,支援手勢操作等。其次能夠與企業資料中心實時動態交互。這是相當重要的一點,這樣才能真正做到利用零碎時間,隨時分析資料。 最後,高大上一點就是從安全考慮,多採用驗證方式,比如FineReport支援綁定行動設備,從而增強行動端的登錄驗證,這也是一種方式。

作為國產Java報表工具的優秀代表,FineReport報表工具不僅僅在報表設計的簡單易用上表現出極大的優勢,更在數據分析等複雜報表處理能力和報表管理等報表綜合應用上凸顯出其報表技術的成熟和領先

藉助FineReport報表工具,企事業單位可以輕鬆搭建報表平台,實現報表的統一訪問和管理,實現財務、銷售、客戶、庫存等各種業務主題分析、數據填報等,為各部門提供數據和報表支持。下面簡單分享一些企事業單位使用FineReport報表軟體搭建報表平台的案例。 三笑集團打造決策平台 三笑集團用FineReport去彌補ERP及OA系統報表上的不足,逐漸形成了綜合的報表分析決策平台,方便集團各級部門,各層級對報表的實時查看與數據的追蹤。 過去三笑集團都是手工通過excel的形式進行報表加工,製作、維護及查看起來均不方便,不能做到WEB形式的。利用FineReport報表工具,可以對以前報表傳送和閱讀方法進行改進提高,以前的報表更直觀多樣化,同時提高開發的效率,大大節約了人力成本,提升工作效率,讓管理人員有更多的時間研究分析數據,提高精細管理水平。 立信會計師事務所 通過建設報表決策平台系統,立信可以充分利用大量積累的數據,發掘其中的價值。立信打破了原有的信息孤島,消除冗餘數據、不規範不統一數據,實現了為決策層便捷的提供準確的全局性數據。同時,立信摒棄了傳統excel填報、匯總、分析數據的模式,改為全線web端填報審批,不僅保證數據的準確性和規範性,也節省了大量的人力物力;最後,立信可以根據業務流程靈活方面的開發所需報表,做到隨需應變,而不是等待軟體公司去二次開發。 湖北省審計廳 湖北審計廳相關負責人表示,審計廳通過應用帆軟報表FineReport搭建報表平台,不僅可以提升在數據管理和展示方面的能力,比如實現多維數據分析、數據地圖分析、動態圖表聯動分析等高級分析效果;還可以解決多系統數據不統一,匯總數據不準確的問題;更可以提高採集其他相關單位比如稅務部門的數據的效率。 蘇州郵政 據蘇州郵政信息部門稱,他們過去並沒有一個成熟的報表平台,報表這一塊還處於原始狀態,原本是業務部門人工用傳統excel手工製作的,每天取表及匯總要花上一小時,每月更改Excel的報表公式更是需耗時半天。因為缺乏報表平台,他們在日常的數據分析中,每次均需耗費大量時間根據分析目標進行取數、加工,重複勞動多,完全不能滿足支撐業務發展的需要。 蘇州郵政金融報表平台包含總餘額表、有效餘額表,以及各種到達、同比、環比、凈增、月均情況表等等。採用FineReport後,業務人員只需短短几秒鐘就能從報表平台中導出需要的報表,大大提高了工作效率,業務處理和運營決策的速度也從單車升級為火箭。細算起來,省去的人工成本遠高於採購FineReport搭建報表決策平台的費用。

如果你用報表控制項做報表的任務,那麼你最開始要做的除了先熟悉下工具再讓他們把需求確定之外,那就是要聯繫售前。然後根據你具體的報表效果,他們會給你最專業的指導,這樣就不用你自己摸索著做了一個又一個版本,然後再被淘汰掉,可以節約很多時間和精力。 用報表控制項的方法其實挺簡單的,按設計器幫助文檔里的介紹,按順序看,並且按步驟實際操作,幫助文檔都看一便並都操作了,就可以說開發優化部署都沒問題了。 一、從遠程伺服器大批量取數進行表樣設計時,最好按「列順序」取一個「空的SQL語句」,這樣可提高設計速度。否則每次設計時模板均要從遠程讀取數據,速度相當慢!! 二、找一個富文本編輯軟體(如NOTEPAD+)編輯SQL語句,這樣會很好地檢查語法。有時候帶參數較多檢查語法複雜時,結合FineReport中生成的日誌,再找一個第三方資料庫訪問軟體(如PL/SQL)進行數據檢索,可以很快定位語法錯誤。 三、想用報表控制項實現的表樣較為複雜,搞不清楚某些單位格的上下左右父格時,將整個模板的父格均設為「無」,再根據需要擴展的單位格重新定位其上下左右父格,結合第一條往下做,最終可以得到較為滿意的表樣。 四、管理員密碼忘記了怎麼辦?不急,刪除 web-inf/resource/privilege.xml,然後重啟設計器,就可以重新設置 五、模板報錯,超出行高或列寬?向下者向左合并單元格! 六、返回月份的第一天和最後一天? 上個月第一天:format(MONTHDELTA(today(),-1),”yyyyMM01″) 上個月最後一天:eval(“format(MONTHDELTA(today(),-1),”yyyyMM”+DAYSOFMONTH(MONTHDELTA(today(),-1))+””)”) 當月:format(today(),”yyyyMM01″) 第一天:eval(“format(today(),”yyyyMM”+DAYSOFMONTH(today())+””)”) 七、自動擴展出月份或者年份?使用range()函數,配合字元串拼接,如:range(12)+”月” 八、自動添加序號,seq()函數,左父格設置為後面的單元格 九、使用單元格數據作為圖表數據時,分類軸、系列名與系列可能不是由一個單元格擴展出來,而是由多個單元格組成,此時定義圖表數據規則如下:如果數據來自於一片連續的單元格如A1~A3:則定義時使用公式=A1:A3,用冒號隔開。如果數據來自於不連續的多個單元格如A1、A3、A5:則定義時使用公式=[A1,A3,A5]用逗號隔開,並且需要加上[]號。 十.在製作模板時,如何將報表控制項中的值傳遞到超鏈接網頁呢? 在項目中以frame方法把F1.CPT放到項目的頁面中,對F1.CPT做網路報表超鏈接F2.CPT,然後在F2.cpt頁面中,做個超鏈接的網頁,超鏈接的URL裡面輸入地址,並在下面輸入要傳遞的參數名和參數值,然後在網頁中通過request.getParameter(“超級鏈接中的參數名”)獲取參數就可以直接使用了。 十一.一個模板的2個sheet之間的取值和校驗? 在某個單元格里直接輸入=sheetname!cellname 來實現跨sheet取值,eg:=sheet2!A2 就是sheet2表單的A2單元格的值,校驗同樣原理。 十二.下拉框的選值發生變化 在下拉框里設置好數據源,顯示值和實際值,但在選中某個值之後卻發現選中的值變為了實際值了,在這裡需要在這個單元格的樣式里重新把數據源再設置一遍就可以了。 十三.超鏈接傳值,如何動態的傳別的對應單元格(一一對應的單元格)的值 在超鏈接中,正常傳遞參數eg: PKID=’${PKID}’,然後在右邊的參數欄里添加參數PKID,其值選擇公式,協商你要傳遞的值的 單元格 十四.JS取值失敗 在用JS GetCellValue取值的時候會發現取值不對,或者為空。這有可能是因為你要取值的單元格是在某個擴展行的後面了,所以導致單元格的位置發生了變化,所以盡量要在擴展行的上面放置你JS要取的值。 十五.報表控制項的的埠: FR自身有一個埠8075,但我們在使用的過程中一般都不會用8075作為FR的埠來使用,通常和TOMCAT之類的服務結合起來使用。 十六.數據混亂,不是一一對應的: 首先檢查資料庫看數據是不是一一對應的,如果沒錯,那可能是單元格的左父格設置問題,建議自己多做幾張實踐下就會明白左父格的含義。 十七. 日期轉換為中文日期[2012-03-20]–>[二〇一二日三月二十日] 設計器單元格: A1:=FORMAT(TODAY(),”yyyy-MM-dd”) A2:=REPLACE(NUMTO(YEAR(A1),true),”零”,”〇”)+”年”+NUMTO(MONTH(A1),false)+”月”+NUMTO(DAY(A1),false)+”日” PS:使用中文日期,直接調用A2單元格即可,或者在A1單元格的公式形態里設置A2的公式。 十八、模擬GridView的一些功能可以去看下面的連接{:soso_e113:} http://bbs.finereport.com/thread-14558-1-1.html 十九.批量導出報表: http://localhost:8079/WebReport/ReportServer?reportlets=({reportlet:/FRTable501.cpt}, {reportlet:/FRTable601.cpt})&format=excel&__filename__=name 但該功能在導出13張報表的時候就會出錯。 二十.點擊頁面彈出子頁面,按鈕的點擊事件 FR.showIframeDialog({ url:”ReportServer?reportlet=SMES/NewAdd.cpt&op=write”, title:”title”, width:600, height:600 }) 二十一.子頁面刷新父頁面 […]

FineReport報表在其自定義性上一直備受推崇,在詳述自定義報表的製作方法與技巧中我們主要解析了FineReport報表設計器自身的自定義性,現在,我們來看看FineReport報表的自定義性還表現在其他的什麼方面。 自定義函數 FineReport本身封裝了大量的文本、數學、邏輯、日期等函數,能夠滿足大部分客戶的函數使用需求,但是總會有些函數可能適用面比較小,FineReport暫時沒能考慮到,因此FineReport提供了函數的自定義介面,使得用戶能夠使用起來更加方便。 報表格式設置 我們也可以對報表的格式進行自定義設置:對報表對象的單元格屬性、web屬性、參數、頁面設置等多個屬性進行控制,可以自由控制單元格的顯示樣式、工具欄的按鈕、參數面板的展示、參數的賦值等等。全方位地實現用戶的個性化需求。 自定義交互 在實際報表製作中,有很多時候需要一些觸發事件的發生來使報表製作更加方便和友好。FineReport報表採用jquery v1.5.2框架,使用戶能更方便地處理HTML documents、events、實現動畫效果,方便地為網站提供AJAX交互,並且它兼容各種瀏覽 器 (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。FineReport報表解析後最終成為一個html頁面,因此可以使用js對報表進行各種處理,用戶可以使用jQuery框架的所有方法對報表進行操作。在此基礎上,FineReport還封裝了很多內置的 js方法,滿足用戶自定義報表交互性的需要。 自定義填報 FineReport開放的填報api介面能夠使用戶根據自己的需要來定義填報入庫方式,通過填報介面,用戶可以往資料庫中保存用戶操作日誌、可以在填報成功與失敗時進行各種處理等等。 自定義工具欄 FineReport有內置的工具欄,但是位置與樣式比較死,只能固定在報表上方或下方,不靈活。FineReport提供了自定義工具欄按鈕的功能,以契合用戶的自定義:使用用戶已經定義好了的工具欄,頁面中只需要嵌入報表內容,不使用FineReport的工具欄,如下圖,用戶自己系統裡面自定義的列印與輸出按鈕,放在頁面中報表部分之外,如果需要列印報表,點擊自定義的按鈕,就可調用FineReport的列印方法進行列印。 報表平台 作為聯繫報表的樞紐型組織,FineReport的報表平台也提供強大的自定義性。在報表平台中,用戶可以自定義報表顯示目錄、許可權、報表平台外觀、數據分析等。 報表再處理 FineReport設計器基本可以零編碼地設計出絕大多數報表,然而需求是千變萬化的,也許某些個性化的功能通過設計器無法實現,因此可以將模板讀入程序中,進行修改後再導出,再在瀏覽器中訪問報表。顯然這樣做比較繁瑣,對於這種情況,用戶還可以直接將讀取的模板保存為程序網路報表,直接在Web端訪問定義的程序網路報表。

又題:供應商管理的報表需求調研報告 隨著企業集團的生產規模擴張,為支撐全球供應鏈管理,對於供應商的管理和採購過程的監控已經不局限於簡單的交付以及價格的管理,目前採購及供應商管理各個環節的操作分別在不同的系統下進行,而各個數據源都獨立存在,無法提供統一的數據支持;因此,為了實現對於數據分析以提供採購決策,建立報表體系成為必須。 企業業務目標 1、通過報表為採購決策提供數據分析與支持 2、對供應商進行綜合評估以及管理,合理管理和引導供應商 3、對綜合採購成本進行把控,包括標準重要物料成本構建 4、對採購過程進行跟蹤,以便對供應商進行財務控制和質量管理、對採購人員進行管理促進 5、提供採購績效的數據分析 6、滿足各個層級採購的管理需求 方案評估 動態報表的呈現以數據支持和分析為方式,保證數據源的準確性、及時性、動態性和方便性。 常規上的報表的開發方式有兩種:一種是自行運用軟體工具進行定製表格開發;另一種是使用市場是成熟報表工具,調用各個有效數據源,實現表單實時動態呈現。 自行定製開發特點 優點是:隨時變更需求,隨時可以調用企業內部資源進行更改。 不足有: (1)每一張表單都需要定製開發,不斷重複的工作量巨大,導致開發周期較長。 (2)對於相對獨立的報表開發,容易陷入冗雜和功能無法統一的結果,最終導致難以利用而無法管理。 (3)擴展性較差,很難實現對於變化的需求的應對處理,需要推翻重來的工作量較大。 (4)三由於專業所限和對於業務的理解深度,對於簡單報表容易做開發,但是對於有管理深度要求的報表以及圖標很難理解。 (5)涉及到專業運算和統計分析的工具,需要更長的時間來學習和消化,才能運用到統計報表中。 (6)由於反覆的重複勞動,開發經驗和過程無法進行累積成為項目經驗和成長。 利用市場上成熟的報表工具進行定製開發 (1)避免代碼開發的長周期,和無法實現用戶的需求的情況。 (2)靈活的報表系統,減少固化定製報表的麻煩,可以隨時抽取和變化表單樣式。 (3)藉助有經驗的報表人員,對於動態報表的把控可以做的迅速快捷高效。 (4)可借鑒相應其他公司的報表系統的經驗。 (5)知識的轉移,培訓和學習,各個具體使用人員都方便的應用,不再依賴於開發人員。 選擇結論 通過上述比較,建議採用第二種方式即選用市場成熟報表工具,利用專業的報表開發團隊進行定製開發,可以實現,具體需求實現步驟可以分階段進行。 報表工具的選擇標準 根據集團現有系統和操作流程,在報表工具選擇上考慮以下的因素: (1)開發進度要求和可用資源,包括應用介面 (2)多資料庫、多數據源支持,以支持多個應用平台:OracleERP,UAP,用友,用友OA.手工系統。 (3)功能性,是否支持各種數據呈現、導入導出、數據分離、設計模式 (4)可嵌入性 (5)開發風險 (6)可擴展性,保證新的報表需求 (7)長期成本和維護成本 選擇FineReport的原因 作為中國報表軟體著名品牌,FineReport有著「專業、簡捷、靈活」等特點: (1)FineReport的功能全面、專業。支持關係型資料庫、BI多維資料庫的連接取數,支持中國式複雜報表的處理,支持離線填報、多級上報、數據填報,支持HTML5圖表製作,支持移動端報表,支持數據鑽取、圖表聯動、多維度分析等交互分析模式,支持數據的導入導出和列印,支持移動報表,有著安全、完善的許可權控制方案等。 (2)FineReport設計報表簡單高效,學習成本低。類Excel的界面使用戶不需任何額外學習成本,零編碼開發報表,輕鬆的拖拽數據,就在一兩分鐘內完成報表製作。為幫助用戶更快更好掌握產品的使用,帆軟提供了多種學習途徑和資料,比如線下培訓、網路在線培訓、帆軟論壇等;更提供了多種獲取服務的渠道,比如現場、在線咨詢、電話、郵箱等。 (3)FineReport行業積累豐富。對各個行業都有著自己對到的見解,可以為用戶提供豐富、實用的信息化建設意見,提供諸如一系列或從上之下、從內到外涉及戰略、運營、組織、財務、營銷等多個主題的解決方案和實施方案。 (4)FineReport的服務完善、高效。FineReport的服務網路已經遍及全國,各大、中城市和地區均能享受細膩、專業、及時、高效的本土化服務。同時提供了更多的技術支持服務入口,如電話熱線、Email、在線咨詢、技術論壇等,用戶可以全天候、無限制的享受服務。

報表分析軟體的核心價值 報表分析軟體的核心在於提高報表開發效率和後期維護性,提高客戶滿意度,減少項目成本。對於企業而言,報表分析軟體的最大價值在於學習成本低,可以讓業務人員做報表,甚至構建快速系統。如果一個報表分析軟體能讓最終客戶(業務人員)滿意,那麼一個企業或者單位所有信息系統都將採用同一個報表分析軟體,應為沒有必要每個信息系統用一個報表解決方案。 國內報表分析軟體廠商成長非常快,多少能解決一些報表展現與數據分析軟體問題。但是除了幾家專業報表分析軟體廠商之外,最終能夠在報表市場佔有一席之地公司就只有幾家。這個主要是因為報表分析軟體是一個專業軟體,需要廠商長期專註客戶需求,不斷提取客戶需求,才能創造出完美的報表解決方案。 近期以來,中國報表分析軟體市場異常火爆,原因是,外來報錶廠商(如Crystal Report水晶報表)水土不服,很難解決中國的一些報表需求,其中最常見的是不能解決中國報表中的多數據源問題,而是靠子報表或者視圖來實現,這類方法治標不治本;中國報表需要報表縱橫向動態布局,縱橫向布局的典型例子就是多層交叉報表,而Crystal Report(水晶報表)只能縱向羅列資料庫中數據;還有自定義分組和層級坐標等問題,Crystal Report(水晶報表)無法解決這些問題,就沒有辦法適應中國市場。 報表分析軟體的發展 下面是中國報表分析軟體的幾個發展方向: 報表平台方向 這個方向上,報錶廠商可以依靠以往積累,通過IT集成商間接服務於最終客戶,構建快速開發平台來承接項目。 水平發展工作流 做一個能快速定製小型信息系統報表開發軟體,搶佔廣大的信息化過程中的中小客戶。這個方向有長尾理論作為理論支持。 綜合性發展 這個發展方向需要一個強大的研發團隊支持。發展方向為報表分析軟體集平台、分析等應用於一身,成為一個真正強大的、向商業智能靠攏的報表工具,能滿足中等以上量級企業的大部分報表需求。代表軟體為FineReport。

FineReport報表開發工具概述 FineReport是一款純Java的、輔助開發軟體或項目的報表工具。在軟體產品或者項目開發過程中,Java報表開發工具FineReport可以大大的縮短開發周期;在軟體產品或者項目交付後,FineReport可以大大的降低維護難度,提高最終用戶的滿意度。通過讓最終用戶參與軟體項目的部分開發工作和絕大部分的後期維護工作,給軟體項目的開發效率帶來革命性的變化。 FineReport如何幫助開發和維護軟體項目 在開發一個基於資料庫(Oracle、SqlServer、MySql、DB2、Sybase、Informix等主流的關係型資料庫,Essbase、ssas、sap、hadoop等BI多維資料庫等)的軟體項目中,大部分的工作是通過jsp/asp/php頁面代碼向資料庫中錄入數據以及把資料庫裡面的數據讀取,進行數據分析并展示出來。通過編寫代碼處理多種數據源中的數據,不僅開發效率不高,而且項目交付後的維護工作量很大。 使用Java報表開發工具FineReport可以從根本上解決一切數據靠編寫代碼的問題。通過FineReport提供的視覺化設計器使用拖拽方式製作頁面模板,在BS集成階段,使用FineReport自帶的伺服器把頁面模板解析成html頁面,從而解決代碼開發、應用開源軟體開發報表的各種問題,加快項目進度,降低項目成本;同時由於FineReport的易用性、傻瓜性,可以在項目交付後,使最終用戶可以基於FineReport做簡單的頁面修改以達到自我維護和更新系統的目的。 誰需要FineReport 開發軟體產品或者項目的軟體公司 軟體公司擁有專門的技術人才,且因為FineReport本身的易學易用性,可輕易實現工具學習周期短,且上手快的效果。在ERP,CRM,OA等軟體產品中集成FineReport,極大降低軟體產品或項目的後期維護成本,提高最終用戶的滿意度。 集團企業、政府機關等終端用戶 終端用戶可以利用FineReport對單位現有軟體系統進行改進和增強,這樣,部分修改現有軟體系統就不再需要軟體公司,自己動手,對系統的修改就有極強的自主性;企業所有的系統在交付後,不再是自己不能改進的死系統,而是隨著時間和業務的變化,系統可以按需而變,讓系統真正動起來,從而徹底走出軟體業的怪圈 —— “年年需要花錢上新的軟體系統,新的軟體系統年年不能滿足變化的需求”。 FineReport的組成 FineReport報表系統由報表設計器(設計模板)和報表伺服器(解析模板)兩部分組成: 報表伺服器 報表伺服器是指用在web環境中解析報表的Servlet形式的伺服器,用戶通過瀏覽器和報表伺服器進行應用交互。 報表解析FineReport報表伺服器主要用來讀取和解析設計器製作好的模板,並將模板轉換成HTML頁面,方便用戶通過瀏覽器查看、修改和列印數據。 緩存管理FineReport報表伺服器內置了強大的緩存機制,提高報表運算效率集群機制。 性能管理FineReport報表伺服器支持分布式集群,支持超巨量資料量運算,支持大數量用戶並發處理。 報表設計器 FineReport報表設計器可以進行表樣、數據、展現、列印等報表設計文件中各種元素的設計,是報表設計和報表應用開發、調試、部署的一體化平台。 可設計的報表類型分組報表、交叉報表、多層交叉報表、明細表、主子報表、多源分片報表,以及其它任意不規則的報表類型。

報表開發工具是幾乎每一個企業和IT項目都需要的功能。從早期的企業自主開發,到更多的使用第三方報表開發工具,大部分企業和IT項目已經認識到,使用現有的開發工具是在總的成本上更優化的解決方案。那麼怎樣選擇一個報表開發軟體,以求達到最高的回報率呢?我們一起來看看報表管理系統選擇中需要了解和比較的因素。 大部分關於報表系統的信息,無論是廠家自己的宣傳資料,還是用戶的介紹,大都以比較工具的功能為主。但是在報表工具已經使用了幾十年的今天,詳細功能對比的意義已經不大。因為在最根本的報表開發實現上,幾乎所有報表軟體都可以通過不同的方法提供不錯的支持。 在確保報表開發工具基本功能的前提下,報表工具選擇更應該注意一些高層次的理念、方法、和大致以後的方向。即使這個工具只在一個IT項目里使用,如果選擇好了,開發人員往往可以在以後的項目里繼續使用同一個工具,從而降低學習和培訓的費用。 從產品定位上,可以把報表系統大致分為三類:大而全產品,主要以國外大廠家為代表;國內複雜報表專家;國外專註高效靈活應用產品。 國外大廠家,比如IBM(Cognos)和SAP(BO),雖然各有自己的特點,但最大的特點卻是什麼都能做。它們宣傳的往往是我提供了你所需要的所有BI相關的功能,有我就夠了。現實也確實如此,從ETL,數據模型,到報表,Dashboard,Scorecard,OLAP,數據預測、數據分析等等,基本上你能想到的它都有了。 這類工具最大的優點也正是它最大的缺點。且不論價格上的差別,這些大型BI系統往往要求很高的學習和實施周期。在完成開發之後,它們也往往需要大量的維護和管理。所以它們最適合的還是企業中大企業級的應用。基本上只有在這種企業環境里,用戶才有足夠的資金來支持它的應用,這類工具所帶來的優點也可以得到充分的發揮。在數據量和用戶數達到一定的等級之後,一個龐大的系統才能真正的顯示出它的長處。 國內複雜報表是指那些帶有複雜表頭,或者不規則布局的報表。在過去的幾年裡,國內報表開發工具廠商在不同程度上都把這個需求作為主攻方向。而在國內廠家中,帆軟軟體(報表產品:FineReport)是當之無愧的代表。首創了B/S報表設計器,率先提出移動決策理念,幫助用戶定製屬於自己的移動BI應用,而後,其它國內廠家紛紛效仿。FineReport是國內複雜報表開發需求的一個代表性報表開發工具。 國內複雜報表開發工具最大的優點是絕對以國內報表開發需求為主,專註於中式複雜報表的解決技術。多年的研發和開發經驗的積累,國內複雜報表開發工具對於複雜報表的處理已經到了極高的水準。對於一般的國內企業和IT項目而言,在面臨大量的複雜表格開發需求時,國內廠家應是考慮範疇的優選項。 國外大廠家之外,還有一批需要提及的中小規模解決方案。現在一個比較有代表的趨勢是提供一個簡便靈活,而又功能強大的軟體。也就是說,在保持一部分大型BI系統的優勢的同時,解決它實現複雜和難於管理的問題。這類軟體中最具代表性的是Qlikview和Style Report。 Qlikview是Qliktech的一個以視覺化為主的工具。它採取了完全內存的數據處理技術,不需要OLAP或資料庫。從而極大的簡化了BI系統的實現難度和周期。它所提出的兩周實現一個BI系統就是這一理念的典型代表。 Style Report是英網的報表管理系統。而它的BI軟體叫Style Intelligence。在報表基礎上,它還包含了及時報表和視覺化分析的功能。在功能方面,Style Intelligence包含了大部分Qlikview的功能。最大的不同是它有一個十分成熟的報表工具。在數據處理方面,Style Intelligence採用了雲計算的技術,可以支持極巨量資料量的即時分析。 除了功能之外,這類產品最大的共同點是以提供一個簡單高效的環境,讓用戶可以把總體費用控制在最小。當然,在這過程中肯定也會有一些限制。如果企業或IT項目需要支持萬億級以上的數據,那可能需要一個最大型的系統。 從產品理念上,可以把報表工具大致分為三類:BI完整解決方案;純報表開發工具;報表+N解決方案。 BI完整解決方案包含了兩個方面。首先軟體本身包含了大部分和BI有關的功能。更重要的,是廠家的提供整套服務的觀念。一部分因為軟體本身的複雜性,一部分因為廠家的銷售和定位,當你選擇一個大型BI軟體的時候,通常需要包括大量的服務和支持費用。 純報表開發工具基本包括了所有的低端報表產品,比如BIRT,傑表,數巨報表等等。這類工具通常還在繼續完善基礎報表功能的階段。但總體來講,對最基礎的報表設計還是可以達到一個滿意的支持。因為這類產品大都是國內廠家,前幾年也不斷投入在複雜表格的支持上,所以對「中國式報表」的支持往往還是不錯的。如果你的項目需要的是單純的報表工具,同時數據量和用戶量都很有限,那這也是一個不錯的選擇。 報表+N指的是以報表為基礎,加上一些創新和高端功能的產品。這類報表開發工具在報表功能日漸成熟後,都開始著手增加一些高端功能,只是選擇的方向往往不大一樣,所以這個N就代表了不同的功能。例如,數據分析軟體FineReport,除了強大的圖表製作和數據分析功能,還有移動BI應用和數據決策平台等應用。 企業在選擇報表開發工具時,大致可以按以下的條件來分析: 如果企業需要一個大企業規模,支持萬億級數據以上的解決方案,可以集中精力比較一下幾個大型解決方案。 如果企業的目標是以最小的費用,製作最基本的報表,那可以看看低端的軟體,甚至一些免費的開源報表開發工具。 如果企業除了基礎的開發報表功能,還希望做出一些能夠出彩、超出競爭對手的效果,那不妨看看報表開發工具廠家中比較創新領先的功能。

報表,顧名思義,是由「報」和「表」兩部分構成的。「報」指數據的匯總統計,即將數據從資料庫中取出按一定規則運算統計後 排列。「表」則指格式,數據需要放在格子中,才能清楚定位,體現數據之間的層次與對應關係。數據分析軟體只有統籌好「報」和「表」兩方面,才能稱得上是一個優秀的報表系統解決方案。 目前很多國際品牌的報表分析工具,基本上都能把數據源中的數據取出來,運算排列製作出動態的變數統計報表——即「報」的能力不錯。但「表」的實現方式就比較複雜,一般需要採用控制項拖放的方式編輯表樣,靠矩形邊線重合對齊畫表樣,一條直線要拼接多條線段,可想而知,僅僅一個多層表頭就要多大的工作量。而且線條還和解析度相關,在屏幕上畫齊的列印出來可能又不整齊了。還有一類仿製Excel的產品,合并格、設邊框都很方便,可以很快地畫出一個複雜格式的報表樣式,但是卻沒有數據處理界面,除簡單的格內運算外,與數據源交接的過濾、分組等統計運算都要自己做,很致命的是不能自己完成變長報表,需要靠編實現動態插行插列。這些「報」「表」分離的報表分析工具,給用戶帶了諸多麻煩。  報表之苦 那麼,中式報表的難點到底在哪裡? 普遍的說法是中式報表樣式複雜(如複雜表頭),其實中式報表的難點遠不止這一處。相比之下其他難點,樣式問題還是只要費工夫就能解決的小問題,而中式報表還有大量費了工夫也極難解決的大問題,總結如下: 「用」之累 「用」指應用集成能力,即報表分析工具能否被很好地集成到企業應用系統中。當前業界的高端報表分析工具均採用獨立伺服器方式,與主程序溝通要通過網路協議,嚴重影響性能,而且控制力度減弱;獨立伺服器都會有自己的用戶許可權管理機制,對應用而言永遠都不夠用,卻要應用程序向這個規則靠攏,無端浪費工作量;而且獨立伺服器無法享用伺服器的各種優勢能力,如共享連接池、集群能力等。 「報」之難 「報」指統計匯總能力。中式報表最困難的地方是數據統計。中式報表具有的多數據源、整表規則分片、不完全劃分、跨行組運算及獨立格間運算、行列對稱等諸多特徵,是傳統報表分析工具無法滿足的,於是很多要求編寫代碼準備數據或進行子表拼接以完成一個複雜報表的要求就出來了,細想一下,覺得十分荒謬,但是這卻是中式報表解決方案的普遍做法。 「表」之煩 「表」指數據展現樣式能力。表樣格式複雜也是中式報表比較麻煩的地方,中式報表均要求有整齊的格線,多層表頭層次分明。業內有名的報表分析工具一般採用控制項式拖拽的繪製方案,畫起來非常煩瑣,且還與解析度相關,屏幕與列印一般不一致,而中式報表對列印樣式要求向來很高。 「填」之亂 「填」指填寫上報能力。中式報表幾乎都有填報的需求,報表分析工具前端需要支持各種填報控制,如編輯風格、自動計算、合法性校驗等;填寫好的數據能夠方便地寫入資料庫以進行下一步的統計匯總;還需要能支持離線填報和多級匯總填報等。而很多報表分析工具不支持填報能力,一般的填報解決方案都不能自動處理數據入庫的問題,導致相應的編程工作量仍然很大。 報表之惑 中式報表的複雜是舉世公認的,用業界常見的傳統工具去完成中式報表會很困難。但這些複雜的報表是否很有必要,還是僅是庸人自擾? 一種常見的看法是:中式報表的複雜是現實,這主要是由於業務不規範和應用水平低下造成的,但這其實是沒有必要的,隨著業務的完善和應用水平的進步,這些報表會逐步簡化以至取消。 但實際情況是怎樣的呢? 由於業務不規範和應用水平低下造成的沒道理的複雜報表是現實存在的,某些信息化程度較低的行業確實常常是這樣。但是,我們考察中國信息化程度相對較高的銀行業就會發現,銀行報表沒幾個是很簡單的,而且複雜得也很有道理,很難把這些報表搞得更簡單了。看來,複雜報表具有一目了然、信息量大的優勢,並非沒有必要,與業務規範程度及應用水平的高低並無直接關係。 造成這個現象的一個可能因素是東方文化習慣。中國的漢字就很複雜,常用字就有幾千之多,每個字把多種筆劃組成一體;而西文則都是由有限幾個字母去組合而成的,老外習慣於用簡單的東西去拼接組合,而我們則習慣於把相關的信息組織在一起。事實上,我們永遠都沒有資格去指責需求,而應當正視這些困難並去解決它。 報表之道 中式報表的困難無法避開,而當前的一些報表軟體在諸多方面不能適應中式報表的需求,新一代的報表軟體在開發時,需要從以下幾個方面考慮: 首先,充分考慮應用集成的要求,使報表運算引擎能夠方便地嵌入到業務系統中,並享受應用體系架構的優勢,集中精力處理報表運算。 其次,徹底摒棄傳統工具的條帶狀數據處理模型,設計全新的適合於中式報表的數學模型演演算法,全面支持多源、分片、不完全劃分、格間運算、行列對稱等中式報表的統計特性。 然後,採用與Excel類似的表格展現方式,充分體現表格規律性,特別重要的是,需要與統計演演算法很好地結合在一起,保證表格也可自動地隨數據動態變化。 最後,對於填報功能,設計單元格與數據表欄位的對應機制,使之適應任何類型的填寫,可自動複製對應規則,解決填寫數據自動入庫的難題。