潤乾報:cell num exceeds limit的三種情況

單元格超出限制的三種情況:
1、單元格的數據存在多條記錄,如圖中ds1.rq,如果sql查詢的語句返回記錄存在多條,而這裏沒有使用ds1.select(rq),那麼就會報錯。
在這裏插入圖片描述

2、第二種情況就是展示某些批量數據的時候,數據量過大,超出了配置的最大單元格數量。修改reportConfig.xml的maxCellNum的值大於你要展示的數據量。
3、第三種情況也是最頭疼的情況。當我們的報表打印報錯的時候,會使得潤乾計算器(engine.calc())出錯,導致即便打印其他正常的報表也會運算錯誤,提示cell num exceeds limit錯誤。一個報表錯,導致了所有報表都會報錯的情況。查看了配置文件,maxCellNum的值是100000(十萬)。當然自己很清楚自己所打印的那張報表的數據遠遠沒有那麼多,所有一直覺得不應該是這裏的問題。
最後還是妥協了,試着將maxCellNum設置更大一些,設置成了2000000(兩百萬)。結果還真的解決了第三種情況的問題。該報錯的報表還是報錯,其他報表不受影響。當然這根本原因還是因爲報錯導致了運算器出錯了,然後不知道運算器裏幹了啥子消耗了很多單元格,既然如此就給他足夠的單元格就行了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章