不想再被報表需求煩到炸,4個妙招讓你實現批量制表

2019-08-13     數據分析不是個事兒

對於經常製作報表的人來說,最痛苦的事情莫過於漫天的複雜報表需求了:

每天來自各個部門的不同需求千奇百怪,什麼績效表、提升表、考勤表、報銷款項表、日報周報等等,最最折磨人的是還需要進行分類匯總、對比匯總、明細匯總等,堆成山的報表需求幾乎占據了報表人的所有時間(包括加班)。

最近就有一個做財務的朋友跟我抱怨,每個月做的報表不說可以繞地球幾圈,關鍵是重複報表製作起來相當的枯燥機械,天天對著Excel取數匯總,很容易失去對工作的熱情,時間和感情雙雙被浪費。

其實面對這些重複複雜的報表需求,只要學會了批量製作報表,就能夠減少80%的制表時間,滑鼠輕輕一點就能生成同類型複雜報表,平時只要做一份模板,需要的時候就調度出來自動生成,是不是相當方便輕鬆?

想要實現批量報表的工具很多,這裡我用一款半自助化的報表工具FineReport來演示一下,如何利用製作報表模板的技巧,減少我們的報表工作量:

1.數據集復用

FineReport對數據的操作,是將數據從資料庫中提取出來作為「數據集」,然後再用於報表模板的設計和數據的展現集合。這樣做的好處是能將不同資料庫中的數據直接整合到一起,置於內存的數據處理性能也比較快。

在開發報表時經常會遇到需要復用已有數據集的情況,比如今天提取的一個數據集1個月前提取過。笨辦法就是把以前的數據集打開,複製取數的sql語句,然後複製粘貼,雖然也比較費時,但比重新輸入要好很多。

但是其他數據集的復用就特別麻煩了,特別是內置數據集。在原電腦上建立的資料庫連接,如果換一台電腦這個連結就會失效,就看不了模板。這時候就可以直接將該模板的數據集定義成內置數據集,這樣該模板就可以在任何電腦上訪問了。

這裡推薦一個又快又不容易出錯的方法——notepad++,它的好處體現在兩個方面:

  • 可以直接用notepad++打開cpt或者frm,把裡面的數據集部分的代碼複製到另外一個cpt或者frm里,一步複製粘貼就可以完全無錯地復用。
  • 一鍵替換用了很多次的模板參數,不需要自己一個個去改,十分方便。
不想再被報表需求煩到炸,4個妙招讓你實現批量制表

2.編輯sql優化

專業的報表工具是通過寫sql來提取數據的,比如FineReport。

一般來說,我們取數都是從其他地方的sql語句粘貼過來,比較麻煩。而設計器內部的sql編輯器沒有智能設置,且顯示區域較小,缺乏像navicat等自動聯想、自動檢測錯誤等人性化功能,導致開發報表時在設計器內部直接編寫sql語句很麻煩。

這個時候就可以安裝一款「高級資料庫查詢」插件,該插件提供了簡化sql輸入、無縫對接sql可視化編輯工具的能力。

  1. 支持數據權限管理,方便之餘更能兼顧安全;
  2. 支持語法提示、自動補全(支持補齊欄位名)和代碼美化;
  3. 在sql中加入帆軟公式支持;
  4. 支持可視化的sql builder,傻瓜式操作。

對比

默認sql編輯窗口:固定大小,代碼無法自動美化:

高級資料庫查詢:可全屏展現,自動美化代碼:

SQL語句優化效果連結和插件下載,私信「插件」即可獲得

3.單元格部分屬性復用

很多時候我們能在別的模板中看到喜歡的設計,比如文字配色、背景色、邊框設置、條件屬性設置、超鏈效果等等,然後就想複製過來,但是一步步設置比較麻煩,希望能想複製粘貼一樣簡單地操作就能完成,其實只需要crtl+B就可複製格式。

但對於擴展、條件屬性、超鏈、控制項等不能實現,直接把全部內容和設置直接複製過來還需要再調整,往往我們只想要複製它眾多屬性中的一個,那麼這裡推薦使用一款插件——可選擇性粘貼,可將單元格的一下部分單獨粘貼:

  • 元素(插入數據列、普通文本、富文本、公式、圖表、子報表、圖片、斜線);
  • 擴展屬性(擴展分享、左父格、上父格、可伸展屬性、擴展後排序及排序公式);
  • 樣式屬性(自定義屬性、文本格式/字體、單元格樣式/邊框/背景、對齊、換行、縮進等);
  • 形態屬性(數據字典、條形碼、公式形態、金額線);
  • 其他屬性(行高列寬調整、插入行策略、分頁設置等);
  • 控制項(文本、文本域、數字、密碼、按鈕、複選按鈕、日期、文件等控制項);
  • 條件屬性(背景、字體、顏色、新值、行高、列寬等條件屬性設置);
  • 超級連結(網絡報表、郵件、網頁連結、動態參數、JS腳本等);

粘貼插件詳細介紹和下載地址,私信「插件」即可獲得

4.決策報表中組件復用

決策報表,是專為解決駕駛艙類報表而開發的,當製作大屏或駕駛艙時,也可以復用已有demo中的整個模塊,也可以復用其中的組件。

比如下面這個展示項目階段及節點時間的模塊,實際上使用了好幾十個控制項疊加起來才可以有這樣的顯示效果。如果要自己一個一個疊加實現需要花費非常非常多的時間和精力才能做好,而且還需要不斷調試組建的大小和相對位置。

但frm里支持對多個組件的同時複製粘貼,並且可以一起放縮大小,保持整體比例和和各組件相對位置不變。

最後,一句話總結。

對於複雜高頻的報表,尤其是企業報表需求,使用專用的報表工具,再掌握一些提高效率的技巧,絕對事半工倍。

文章來源: https://twgreatdaily.com/zh-tw/z2x0R24BMH2_cNUguCvC.html