基於數據安全的考慮,很多企業往往不允許業務系統直接訪問數據庫;或者爲了便於業務系統集成,企業通常會開放一系列的數據接口。這些數據接口返回的一般都是JSON格式的數據,但問題是,這種格式的數據無法直接應用於FineReport中進行數據分析,這導致大量的數據無法產生價值,企業IT人員對此很苦惱。針對此場景,「數據工廠」插件應運而生,它具有強大的數據格式轉換能力,可以輕鬆解決類似問題!下面跟着大師兄一起看一看吧
插件介紹「數據工廠」
插件可對接網絡爬蟲、自主開發的數據中心、JSON、WebService等,並將這些數據轉換成FineReport可用的數據類型。同時,該插件具有高度擴展性,也可以通過二次開發來適應更復雜的場景。
使用流程
步驟一:
在安裝數據工廠插件後,數據集管理面板會新增「數據工廠」選項。
步驟二:
點擊進入數據工廠主面板,用戶可根據實際需要,完成主面板的配置。
數據工廠主面板的主要功能有6個:
①數據集名字;②裝載器與解析器;③高級設置;④緩存功能;⑤參數面板;⑥預覽按鈕
下面讓我們來詳細看一下。
①數據集名字:在名字欄可以爲數據集命名。
②裝載器與解析器:裝載器負責從數據源裝載數據,解析器則負責將裝載的數據轉換成 FineReport 支持的數據模型。插件內置了兩種裝載方式(Http、單參數)和三種解析方式(Json 、JS 解析器、原始數據)。
裝載器:
- Http:通過配置相關請求(主要含url、type、charset、header4個字段),可以實現從 Web 端裝載數據。( 比如 Json 服務等 )
- 單參數:可以實現將裝載器界面的數據參數,經過計算後原樣傳給解析器,主要是供調試使用。( 比如 Json、XML 等結構化數據 )
解析器:
- Json:提供了不完整的JPATH語法,可以對結構化的 Json數據進行解析,生成 FineReport 支持的數據模型。
- JS解析器:通過JS腳本解析數據,生成 FineReport 支持的數據模型。
- 原始數據:原樣返回數據,主要是供調試使用。
③高級設置:當內置的裝載器和解析器無法滿足用戶需求時,可以使用高級設置功能,進行二次開發,進行功能擴展。
④緩存:實現將外部讀取的數據暫存到緩存中,支持直接從緩存中取數,不通過接口取數,以提高數據讀取的速度。該功能支持將數據緩存到本地磁盤或內存中,並可設置數據緩存的時長。
⑤參數面板:參數面板可自動識別裝載器界面出現過的參數,用戶也可手動添加新的參數作爲請求參數。
⑥預覽按鈕:點擊預覽按鈕,可以預覽經轉換後的數據。
步驟三:
在完成配置後,在FineReport設計器中,可看到模板數據集中新增的數據工廠數據集,該數據集可直接應用於報表製作。
實際案例
看了上面的使用流程,你可能還是對“如何使用數據工廠插件”一頭霧水,那麼,下面大師兄就用一個實際案例帶着大家一起實操一下。
案例需求:用數據工廠插件,將Json格式的帆軟市場插件列表數據,轉換成FineReport支持的數據格式。
(1)按照如圖所示配置數據工廠主面板本示例採用Http裝載方式,實現從帆軟市場 Web 端裝載數據,在參數面板添加參數searchKeyword=導出中心 ,以獲取與“導出中心”相關的數據;對於返回的數據採用Json解析方式進行解析。
(2)接口實際返回Json格式的數據如下(此處僅做對比說明,在實際插件使用過程中,不會出現該步驟)。
(3)再點擊預覽按鈕,即可看到取出的與“導出中心”相關的數據。
看到這裏,你是不是心動了呢?
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
文章推薦
◆跟資料打交道的人都得會的這8種資料模型,滿足工作中95%的需求
關注數據君的臉書:
我是「數據分析那些事」。常年分享數據分析乾貨,不定期分享好用的職場技能工具。按贊我的臉書,會有豐富資料包贈送唷!