核心企業

CORE ENTERPRISE
當前位置:網站首頁>軟件開發 > 正文內容

EOS報表使用經驗

 

一  使用經驗

  1. 在開發報表時,studio的內存最少設到512M,減少因數據量過大導致studio重啟。(著重強調一下,在開發報表項目時,一定不要忘了設jvm參數)
  2. 有多個展開區域,且展開區域包含的字段很多時,建議先展開最大的,方便可以拖動變更展開區域。
  3. 報表導出excel最大支持:65535行*256列,當大于2.8萬條記錄易OutOfMemory,這時考慮用eos查詢向導實現或用鉆取來代替。
  4. 報表的客戶端最低配置:IE6.0+offic03,在IE5或offic2k環境下運行報表易出無規律的故障
  5. 開發報表時盡量少用特殊字體或很花哨的字體,建議采用宋體。
  6. 使用EOS數據源開發報表,展現在報表上全為string型,考慮到excel中進行運算用Number(row[“field”])來表示。
  7. 如何顯示行號:row[0]
  8. 當報表查詢列表為大數據量時,建議少用“同值融合”功能。用戶場景:客戶一般把查詢結果導出為excel進行查看,數據量較大時,一屏一屏翻頁較麻煩,此時客戶通過excel的“篩選”功能查詢出想要的數據,當采用“同值融合”時,“篩選”功能會把這些數據忽略掉,建議填充方式設置為復制數據。
  9. EOS數據源方式開發報表,適合記錄條數<5000
  10. 報表導出excel數值列不能參與計算(有好幾位客戶還問過這個問題,所以明確一下),這個bug在0318的補丁中已得到解決。
  11. 在非winodws環境下運行帶有斜線、圖形的報表,需要在Java虛擬機的啟動命令中加上參數:-Djava.awt.headless=true
  12. 報表中含有圖表,盡量不要使用合并單元格的方式來放圖表,而是將一個單元格拉寬放大來處理。采用合并單元格的方式,特別是合并很多,速度會很慢(10倍左右的差距)。
  13. 統一配置報表數據源:修改%EOS_HOME%/config/reportconfig.xml中的getConnectionByEOSConfig參數為true,表示所有采用jdbc數據源的報表從eosconfig.xml中獲取數據源。
  14. 圖形報表的系列的名稱,是一個公式,不能直接填寫漢字名稱(如:元素值),因此需要用引號括起來,比如:“元素值”或row[“field”]。
  15. 預覽報表時,建議“提交參數值”設置為帶有限制性的條件,不要設為“%”;提交參數值不做過濾, STUDIO會因查詢出大數據量導致Studio異常退出。
  16. 在JDBC數據源方式下,查詢的條件對應數據庫的字段,必須為非空字段。field like ‘%’不包含field is null(如需實現查詢條件包含field is null的記錄,可以使用EOS數據源的方式開發報表)
  17. 圖表不支持交叉字段集和聚合函數。
  18. 在多數據集的報表中,數據集之間的關系要么是包含關系系,要么并列關系,多數據集之間不能存在交叉。
  19. 單元格引用函數是個很有用的函數(感覺報表demo很少有場合用它),特別是在多數據集的場合,例:rcell(0,-1)表示引用當前行左邊的單元格,但目前只支持相對引用,不支持絕對引用。
  20. 在服務器上每執行一次新的報表,都會往eosserver\reportServer\output寫一個報表的臨時文件,而目前這些臨時文件是不會自動刪除的,當運行過的報表過多時容易造成空間的浪費,甚至會造成硬盤上可用的空間過小,這是一個隱患 ,建議大家每隔一段時間清理一下這個目錄下的文件。

二  常見異常

異常一:數據源連接正常,報表預覽出現java.lang.NullPointerException
  原因:未給字段集設置展開區域。

  異常二:控制臺拋以下異常:com.primeton.report.server.ReportServerException: BL_generateReport:運行報表錯誤。
  一種原因是BL_generateReport方法的參數設置有問題(注意:BL方法默認第3、4個參數為變量,節點路徑為"/",如修改為常量是會報錯的。)
  另一種是報表設置有問題(一般情況下第二種原因居多)

  異常三:預覽報表拋Connection has not open
  原因:使用eos數據源方式,導入的xml測試文件不合法或數據不正確

内蒙古 11 选 5 开奖结果 内蒙古11选5手机版 内蒙古11选5走势图表 内蒙古11选5基本走势图 内蒙古11选5开奖 内蒙古11选5历史记录 内蒙古11选5手机版 内蒙古11选5走势图表 内蒙古11选5基本走势图 内蒙古11选5开奖 内蒙古11选5历史记录