Seal Report 是一款基于 C# 語言開發的開源報表工具,可以從各種數據庫或 NoSQL 數據源中生成日常報告,并且執行復雜的計劃任務。
功能特性
- 免費開源:源代碼托管在 GitHub 上,用戶可以自由使用、修改、甚至集成到自己的系統中,成本幾乎為零。
- 多數據源:支持各種 SQL 數據庫(SQL Server、Oracle、MySQL、PostgreSQL、SQLite、Access 等)、ODBC、OLE DB、Excel、XML、MongoDB、JSON、REST API 等。
- 拖拽式報表設計:提供獨立的報表設計器,通過簡單的拖拽操作就能設計出包含表格、交叉表、圖表(柱狀圖、餅圖、折線圖等)、子報表等豐富元素的報表模板,無需精通復雜編程。
- 交互式動態報表:Web 報表支持動態篩選/過濾、數據排序、數據鉆取、圖表聯動等功能,極大增強了數據探索和分析的能力。
- 儀表盤功能:可以將多個關鍵報表或圖表組件組合在一個頁面上,形成一目了然的數據儀表板,方便管理者實時監控業務核心指標 (KPI)。
- 靈活的報表調度:內置強大的任務調度器,可以定時(例如每天、每周)自動執行報表生成任務。支持將生成的報表(PDF、Excel、HTML、CSV 等格式)自動發送到指定郵箱、保存到共享文件夾或 FTP 服務器,實現報表自動化。
- 集成與安全:提供 Web API,方便與其他系統集成。支持集成 Windows 身份驗證或自定義安全機制,保障報表訪問安全。
系統組件
Seal Report 是一個結構清晰、模塊化的報表系統,其核心組件協同工作,共同完成數據連接、報表設計、執行、渲染、分發和管理的全流程。
Seal Report 體系結構和組件如下圖所示:
其中:
- 報表設計器(Report Designer)是用戶創建和修改報表定義的核心工具。它是一個獨立的 Windows 桌面應用程序。
- 服務管理器(Server Manager)承擔報表的集中管理、調度執行、安全控制、外部集成等關鍵任務。
- 任務調度器(Task Scheduler)按照配置計劃自動觸發報表的執行、生成輸出文件以及執行分發操作。
- Web 報表服務器(Web Report Server)是面向最終用戶(業務人員、管理者)的交互式 Web 門戶。
這些組件支持的部署環境如下:
在線體驗
Seal Report 提供了一個在線的 Web 報告服務器,可以通過瀏覽器進行體驗,網址如下:
https://sealreport.org/demo
點擊任意報表可以查看詳細內容:
下載安裝
安裝 Seal Report 需要提前準備以下環境:
- Windows .Net 8.0 (Microsoft Windows Desktop Runtime 8);
- 數據庫 OLE DB、ODBC、SQLServer,、MongoDB、MySQL 或者 PostgreSQL 驅動;
- 報告設計器需要 Microsoft Edge WebView2 組件;
- Web 報告服務器現需要 ASP.Net Core Runtime 8 (Hosting Bundle) 或者更高版本。
輸入以下網址下載安裝文件(sealsetup_8.3.exe):
https://github.com/ariacom/Seal-Report/releases
下載完成后雙擊運行安裝程序:
安裝提示一步步完成即可。
然后啟動報表設計器(SealReportDesigner.exe)開始創建報告,建議從官方教程開始學習:
https://sealreport.org/Tutorials