一張模板替代數百Excel,這個工具讓報表工作自動進行

Excel的重度用戶對這個話題肯定非常感興趣。

因為每天重複以下事情,一天兩天還好,時間長了誰都受不了。

收集數據、複製、粘貼、清洗數據、轉換數據,

然後用固定的處理邏輯,

輸出同樣的結果

我把這些工作稱為常規工作,屬於必須做,做好不出彩,做不好有責任。

作為數據民工,每天要處理非常多的數據,深有體會。相比之下,我更願意每天處理新的需求,分析異常業務情況的數據分析工作,顯然這樣的價值更高。

可如果大部分的時間已被常規工作佔據,哪還有時間來做更有價值的事情?

把這些工作推給別同事? —— 憑什麼!

拼手速、學快捷鍵節省時間? —— 一切不能釋放你雙手的辦法都不是好辦法。

自動化是唯一的出路!把原先需要幾十分鐘,幾個小時甚至幾天的工作內容自動化。騰出了時間,才有機會搞更有價值的東西。

一說到自動化,很多人就想到Excel宏、VBA什麼的,這可是編程呀,必須VBA嗎?

誤會啊誤會,如果是這樣,我今天就不寫這些文字了。

從我自己在企業的數據工作經歷來看,70%的自動化都不需要VBA,VBA我只用於處理一些極個別複雜的需求。大部分常規性的報表我們都交給更專業的報表工具去開發,尤其是固定式報表,這個自動化比例能達到90%,上手難度卻只是VBA的一半。

舉個例子,有一份每天早上需要發佈的銷量報表,老闆的要求是:

1)從總體,區域,產品,城市,分公司視角

2)展示當天、當月、當年的銷售情況

3)還要給出利潤及利潤率

4)除此以外,還要展示出營業利潤額的趨勢。

正常不出意外的情況下,這份報表每天要花2~3個小時彙總製作。用報表工具做自動化模板後,一鍵刷新,整個過程不超過5分鐘,只需要翹腳等待刷新完成。

一張模板替代數百Excel,這個工具讓報表工作自動進行

這個報表工具就是FineReport。

羅列幾個能解決大家報表製作的痛點,也是它廣泛為人所用的亮點:

1、 製作報表高效低重複,自動化;

2、 數據填報,數據自動更新彙總;

3、 可視化dashboard真是酷炫;

一、高效做報表,1張模板頂替數百張Excel

為什麼能如此高效,關鍵在於他做報表的邏輯。

1、FineReport自動化模板的做表邏輯

一張模板替代數百Excel,這個工具讓報表工作自動進行

常規我們用Excel做報表,是把數據從數據庫導出來,複製粘貼到一張或多張表上,然後對這個表數據做處理,每天有數據,就每天手動複製更新。

而FineReport直接是通過連接數據庫,讀取數據字段來設計報表模板的,和數據庫實時對接。製作模板處理的對象是數據字段(區別於Excel的單元格數據)。模板中一個單元格放一個數據字段,對數據字段進行求和、求平均等各種函數公式的運算。且當這個數據字段下的數據有新增時,設置自動刷新就能一鍵更新報表。

其實和excel類似,excel對一個單元格做公式處理,然後下拉。這邊是直接對數據字段處理,省去了下拉的過程,展示報表時,自動擴展開來,就相當於報報表結果中的每一個數據,都變成能自動計算的公式。只要你改變數據源,它將像多米諾骨牌一樣,自動進行。

以下是用FineReport做報表模板時的場景,做的時候可能是僅僅一行,但預覽時卻是擴展出來的密密麻麻的 “風景”,這裡就要談談它的數據是怎麼展開的,即擴展原理。

一張模板替代數百Excel,這個工具讓報表工作自動進行

FineReport報表中單元格的擴展是有方向的,可縱向擴展,也可橫向擴展,也可以不擴展。

一張模板替代數百Excel,這個工具讓報表工作自動進行

單元格的擴展是針對某一個單元格,當報表主體中綁定了多個單元格時,單元格與單元格之間依靠父子格關係跟隨擴展。子格的數據會根據父格的數據進行過濾分組顯示,並且還會跟隨父格的擴展方向而擴展。

一張模板替代數百Excel,這個工具讓報表工作自動進行

2、三大類報表設計方式,基本能解決日常所有報表需求,並且一表複用。

1)普通模板設計,此者最常用。依靠著單元格的擴展與父子格的關係來實現模板效果,可進行參數查詢,填報報表,圖表設計等。比如交叉報表、行式報表、分組報表等等。(以上↑)

2)聚合報表設計,針對不規則大報表。適用於一張模板中顯示多個獨立模塊的報表,幾個報表塊彙總在一起的複雜報表。(以下↓)

一張模板替代數百Excel,這個工具讓報表工作自動進行

3)決策報表設計,就是表單,也是dashboard,用於彌補普通報表分頁預覽不能展示控件的問題。同時表單可以進行自由拖拽設計,自適應頁面大小顯示,自由製作駕駛艙可以更好的在各種大小類型的屏幕上展示,包括移動端、大屏。

一張模板替代數百Excel,這個工具讓報表工作自動進行

以下舉例一些常見的報表格式。

交叉表

一張模板替代數百Excel,這個工具讓報表工作自動進行

行式報表

一張模板替代數百Excel,這個工具讓報表工作自動進行

分組報表

一張模板替代數百Excel,這個工具讓報表工作自動進行

自由報表

一張模板替代數百Excel,這個工具讓報表工作自動進行

3、參數實現數據查詢和過濾

在很多情況下,我們需要根據條件查詢數據,過濾。在FineReport中,通過設置參數綁定數據字段和過濾的控件(單選框複選框等等),參數可用JS編輯更多複雜的情況,通過界面輸入查詢條件來控制報表顯示的內容及形式,而後導出打印。

一張模板替代數百Excel,這個工具讓報表工作自動進行

二、數據填報自動更新彙總

做報表的另外一個難題是有關數據源的提交,審批,更新,彙總。試想你有沒有經歷過每天守著點等大家發郵件送Excel,挨個保存、打開、彙總數據的麻木操作。回頭數據出錯,還要打回重新溝通,數據採集總是最難的。

填報就是向數據庫中錄入數據,用於固定格式固定條件的數據收集。就好比你註冊頭條時提交的郵箱、收集、用戶名、密碼,都會按照格式存放到數據庫中。

填報也需要一個模板,類似於一個可寫入的操作模式,操作流程如下:

一張模板替代數百Excel,這個工具讓報表工作自動進行

填報模板由控件組成,文本控件、數字控件、密碼控件、單複選框、網頁、文件等等。控件對應著數據字段。有了填報,就可以收集數據,並且允許用戶實現對數據庫的增刪改。出於數據質量和數據安全的考慮,還可以對填報進入的數據做校驗操作。

一張模板替代數百Excel,這個工具讓報表工作自動進行

三、可視化dashboard及分析

酷炫的dashboard都需要通過FineReport的表單(決策報表)來設計展現。通過拖拽報表塊、圖表塊和各類控件初步設計界面。

不同於普通報表,普通報表是一個整體,無法實現局部刷新。表單是由各個組件組成,可以實現組件內刷新,即局部刷新。像動態大屏都是全局或者局部刷新的,所以需要用決策報表製作實現。

一張模板替代數百Excel,這個工具讓報表工作自動進行

決策報表製作過程

新建表單:FineReport支持新建工作薄,即普通報表模板,還支持新建表單,兩種設計模式;

拖入組件:FineReport表單支持多種不同的組件類型,包括報表塊、tab塊、絕對畫布塊、參數、圖表和控件等等;

定義數據集:定義各個組件數據來源,圖表組件數據即可來源於數據集,也可來源於單元格;

設置表單樣式:即設置表單的顯示樣式。

一張模板替代數百Excel,這個工具讓報表工作自動進行

一張模板替代數百Excel,這個工具讓報表工作自動進行

2、數據可視化與交互

大家看到上述的可視化會好奇,這是什麼圖表製作的。其實大多由FineReport自帶的H5圖表。此前有提到FineReport良好的開放性,可讓IT同事寫代碼開發,所以在製作時,也可接入Echarts等第三方控件來製作圖表。

一張模板替代數百Excel,這個工具讓報表工作自動進行

最後

以上便是FineReport一部分功能,篇幅有限,很多細節無法展開。

要說效率,最大的好處就是從數據庫中讀出數據自動產生報表,且一類報表做成一個固定樣式的模板,每次只要同步一下,自動生產週期性的報表,如日報、週報、月報、季報等。 每次按照條件查詢,Excel批量導出/打印,少了人力去一個一個用Excel統計彙總。

而且操作上,大多數功能FineReport都封裝成模塊了,包括寫SQL取數,彙總篩選過濾等,基本上都有對應的功能鍵。像著名的資產負債表,如果按照以往寫代碼或者寫複雜的SQL語句,就有點摧殘生命了,而且那天書般的SQL語句要是出點錯誰來查,如果數據來自多個源,那就徹底無法解脫了。

最後,對於新手,剛開始嘗試這麼做時,會遇到非常多的阻力。原因有兩個:

  • 做表的思維方式完全不一樣,需要適應
  • 上手finereport自動化模板需要學習新的技能

你需要不斷的嘗試和練習。但是,當你擁有這種思維方式,掌握相應的技能後,你將深深體會到它的威力,不過切記低調、低調。

還等什麼呢?趕緊解放自己,get這個技能吧!


分享到:


相關文章: