您的報表工具支持JSON數據嗎?
報表可以理解為多樣的布局 + 動態的數據 + 豐富的輸出,數據是報表的核心。所有炫動的布局和展示都是建立在真實數據基礎上,缺少了真實數據報表則是空洞沒有意義的。因此數據源設置是報表數據綁定操作的第一步,也是最核心的一步。
如果說數據是水,資料庫或數據文件就是水庫,那麼數據源就是連接水庫的管道,用戶看到的數據集是管道里流出來的水。因此信息化工具必須能夠支持強大的數據源,兼容的數據源類型必須能夠覆蓋現有的數據類型。
報表的數據來源可以是資料庫(如:SQL Server、Oracle、Mysql、SQLite、Postgresql)等關係型的數據結構,也可以是單獨文件(如:Excel、XML、Txt,CSV,Json)等業務系統生成的數據文件,也可以是其他形式(如:WebService、Google Analytics、Salesforce)。
葡萄城報表支持更豐富的數據源格式,不僅支持常用的SQL Server,Oracle,Mysql 等關係型資料庫,更能夠支持JSON,CSV,XML 等文檔型數據源,JSON 數據是Web系統數據傳遞的DNA,因此支持Json 數據源為用戶創建Web端報表提供了極大的便捷性。
常見報表支持綁定數據源方式
1. 根據報表狀態將綁定數據源類型分為:
設計時數據源:在設計時為報表設置報表數據源,即設計報表時,已經預先設置報表數據源,用於研發內部、報表小組進行配置、測試報表用。運行時數據源:在運行時為報表設置報表數據源,即動態綁定數據源,用於數據動態生成的報表系統,運行時數據源可在運行時執行相關數據源操作如修改資料庫連接字元串。設計時數據源的運行比較廣:配置報表、測試、運行報表。而運行時資料庫切換資料庫連接字元串即可無縫實現數據源在用戶現場部署,相對比較容易。
2. 根據綁定的報表數據源數量分為:單數據源:為報表只設置單一的數據源。多數據源:當單一數據源無法滿足報表需求時,需要為報表設置多個數據源,報表顯示的數據來自多個不同的文件或資料庫。
設置報表數據源
每個報表工具都有自己的數據源綁定操作流程,但是無論是哪種報表工具,都包含以下基本步驟。
設置設計時數據源的基本步驟:
1.指定數據源
2.指定數據集
3.將數據集欄位與數據控制項綁定
設置動態時數據源的基本步驟:
1.添加數據控制項
2.設置空數據源及數據集,數據欄位
3.將數據欄位與數據控制項綁定
4.在代碼中添加需要的數據源,與設置的數據集對應
葡萄城報表中使用 JSON 數據源
JSON數據格式已成為互聯網的DNA。因此在AR11中我們智慧的開發者們也教會AR來使用JSON 數據源,增加了對JSON 數據的支持:
文件系統
Web服務
REST API
葡萄城報表不僅支持靜態時直連JSON數據,也支持為報表綁定運行時JSON數據;頁面和RDL 報表均提供了JSON 數據提供器。
JSON 連接字元串和查詢語句定義
JSON 數據源的連接字元串包含以下內容:
Json schema 可以是schema URL 或文件路徑
內嵌JSON Schema
JSON 數據文件可以是引用外部json 文件的url或路徑,這些文件中必須包含 」xmldoc」關鍵字。如:
jsondoc=http://www.xmlfiles.com/examples/cd_catalog.json
使用」jsondata」關鍵字將數據內嵌到報表中,如:
jsondata={"employees":[
{"firstName":"John","lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"}]}
jsondata支持表達式的使用,表達式可以在運行時使用,如依賴用戶使用上下文的json數據源。
數據集查詢語句遵循JSON PATH的規範。
1. 新建RDL 報表
2. 添加數據源
2.1 選擇JSON 類型
選擇Schema
如果您不知道具體的JSON Schema ,推薦網站可根據您的Json Data生成對應的Schema:
http://jsonschema.net/#/
設置內容
查看連接字元串
3. 添加數據集
右鍵單擊「DataSource1」選擇添加數據集
選擇可視化查詢設計器
JSON查詢生成器,會根據您指定的JSON Schema生成具體的Json結構,可根據選擇生成查詢語句
選擇節點後,點擊確定,自動生成查詢語句,點擊確定後,會生成可選的欄位名稱。
在數據控制項中綁定數據
在這裡Json數據源就綁定成功了。


※為什麼你需要將代碼遷移到ASP.NET Core 2.0?
※如何使用Flexbox和CSS Grid,實現高效布局
※使用多級分組報表展現分類數據
※最常用的四種大數據分析方法
※如何將水晶報表(Crystal Report)導入葡萄城報表
TAG:葡萄城控制項 |