Welcome to Seal Report

Seal Report offers a complete framework for producing daily reports and dashboards from any database.
The product focuses on easy installation and report design: Once setup, reports can be built and published in a minute.

Seal Report is an Open Source tool for the Microsoft .Net Framework entirely written in C#.

Main Features

  • Dynamic SQL sources: Use either your SQL or let the Seal engine build dynamically the SQL used to query your database.
  • Native Pivot Tables: Simply drag and drop elements directly in a pivot table (Cross Tab) and display them in your report.
  • HTML 5 Charts: Define and display Chart Series in two mouse clicks (Support of ChartJS, NVD3 and Plotly libraries).
  • Fully Responsive and HTML Rendering using Razor engine: Use the power of HTML5 in the report result (Bootstrap layout, Responsiveness, Tables sorting and filtering). Customize your report presentation in HTML with the Razor engine parsing.
  • Drill Down navigation and Sub Reports: Navigate in your report result to drill to a detail or to execute another report.
  • Web Report Server: Publish and edit your reports on the web (requires Internet Information Server with ASP.Net).
  • Dashboards View: Display your KPIs or published Widgets in a single view.
  • Task scheduler: Schedule your report executions and generate results in folders or send them by emails (integrated with the Windows Tasks Scheduler).
  • Report Tasks: Define tasks to perform your batch operations (data load, excel load, backup, data processing, etc.) or to trigger procedures from external assemblies.
  • No SQL Data Sources: Fill up your source Data Tables from your own code and display them in a report.
  • Low TCO (total cost of ownership): The product is designed for minimal ongoing maintenance.

Live Demonstration

A live demonstration of the Web Report Server is available at SealReport.org/demo.

Seal Report Forum

Use the Seal Report Forum to get free support, information and hints on the product, or read the Wiki for technical documentation.

Requirements and License

For use:
  • 2003, Windows 7, 2008, Windows 8, 2012, Windows 10 or greater
  • .Net Framework 4.5
  • Database OLE DB or ODBC Drivers
  • For the Web Report Server: Internet Information Server with Application Development/ASP.Net 4.5 or greater
  • For the Task Scheduler: 7, 2008, 8, 10 or 2012 or greater
For development:
  • Visual Studio 2017 or greater

Seal Report is licensed under the Apache License, Version 2.0

Installation and Compilation

Download

Get the last product releases (including 32bit and a 64bit setup) and source codes at Github.

Installation

Just run the setup executable file to install Seal Report on your computer.
The setup will install the Report Designer, the Server Manager and the Task Scheduler with a default repository located at "C:\ProgramData\Seal Report Repository".

To publish the Web Report Server, run the Server Manager and select the menu Configuration->Publish Web Site on IIS... to execute the Web Server Publisher wizard.

Compilation

Using Visual Studio, open the solution file Seal.sln located at the root directory.
The solution contains the following projects:

  • SealLibrary: Main library shared by all the executables. This library contains the main classes in the Model sub-folder (like Report, MetaTable, Restriction, Task, etc.) plus some helpers.
  • SealReportDesigner: Report Designer executable.
  • SealServerManager: Report Designer executable.
  • SealTaskScheduler: Console application invoked by the Windows Task Scheduler to execute report in batch.
  • SealWebServer: Asp.Net appplication for Web Report Server.
  • TestsAndSamples: Contains unitary tests and basic samples.

Quick Tutorials

Build a report from a simple SQL statement (2 minutes)

This guide shows how to create and execute a report from a simple SQL statement and a database connection.
  1. In the Start menu, point to Programs->Seal Report and then click Report Designer.
  2. Click on New (top-left in the toolbar)
  3. In the left tree view, right-click on the root node named "Sources" and select [Add Data Source] in the contextual menu.
    A new source is created and the source connection is displayed.
  4. Edit the Connection String property with the OLE DB Wizard and verify the connection is working using the [Check Connection] helper or [F7].
  5. In the left tree view, click on the Model node named "SQL Model". The model is displayed.
  6. In the model definition, set the Source property to a the Data Source called "Data Source" that you have previously created.
  7. Press [F7] to edit the SQL Select Statement for the model.
    The SQL Editor Dialog appears.
  8. In the text box, type your SQL statement (e.g. "select * from products") and click [OK]. The Source tree view displays the columns of the Select.
  9. In the elements tree view, drag and drop the elements you want to see in the Row panel.
  10. If necessary, drag and drop elements in the restrictions panel to filter data.
  11. In the left tree view, click on the root views node named "Views" and set the Current View property to "SQL View".
  12. Click [Execute] or press [F5].
    The report is executed.
  13. Click [Close] then [Save] to save the report in the repository.

Build a first repository Data Source and then Reports based on your database schema (5 minutes)

This guide shows how to create a first Data Source describing your database metadata. Based on this Data Source, reports can be easily built and executed using dynamic SQL generation.

Step 1: Create your first Data Source.

  1. In the Start menu, point to Programs->Seal Report and then click Server Manager.
  2. On the File menu, click New->Data Source.
    A new Data Source is created and the connection is selected.
  3. Edit the Connection String property with the OLE DB Wizard and check the connection configured using the [Check Connection] helper or [F7].
  4. In the left tree view, right-click on the root node called "Tables" and select [Add Tables from Catalog...] in the contextual menu.
    A dialog box appears.
  5. Select the tables in your Data Source and click [OK].
    Tables, columns and joins have been automatically added.
  6. Click [Save] to save the Data Source in the repository.

Step 2: Create, execute and store your first reports.

  1. On the Start menu, point to Programs->Seal Report and then click Report Designer.
  2. Click on [New] (top-left in the toolbar).
  3. In the left tree view, click on the Model node called "Model".
    The model is displayed.
  4. In the model definition, select the Data Source you have previously created.
  5. In the elements tree view, expand the nodes with the table names, then drag and drop the elements you want to see in the Row panel.
  6. If necessary, drag and drop elements in the restrictions panel to filter data.
  7. Click [Execute] or press [F5].
    The report is executed.
  8. Click [Close] then [Save] to save the report in the repository.

Overview

Main Entities: Repository and Reports

The Seal Repository stores all the entities managed by Seal Report: Data Sources, Devices, Reports and Dashboards.
In addition, the repository contains extra folders for the Settings (configuration and dictionary for translations), the Views (used to render report result), the Security (configuration and providers).
By default, the repository root folder is located in "C:\ProgramData\Seal Report Repository".

A report is composed of Data Sources, Models, Views and optional Tasks, Outputs and Schedules. The report may also reference Views Templates located in the repository.

  • Data Sources contain the descriptions of database connections, tables, joins and columns.
  • Models define how to generate the ResultSet (Data Table) and Series from a single SQL Statement.
  • The Views are used to generate a HTML document from the Models using Razor parsing and rendering.
  • Output and Schedule can be defined to automate report generation (e.g. Sending an Email every morning).
  • Tasks may be defined to perform SQL or Script tasks.
  • Dashboards offer a view of widgets published in different reports.

Product Components

Seal Report is composed of the Server Manager application, the Report Designer application, the Web Report Server and the Task Scheduler.

  • The Server Manager (a Windows application) edits repository Data Sources, Devices and is used to perform administrative tasks (checking sources and reports, publishing web site, configuring the server, editing the security, etc.).
  • The Report Designer (a Windows application) creates, edits and executes reports.
  • The Web Report Server (an ASP.Net Web application published on IIS) allows the end-users to edit and execute the reports and dashboards published from the Web.
  • The Task Scheduler (a console application) is invoked by the Windows Task Scheduler to schedule report execution on a Device (folder or email).

Repository Folders

Several sub-folders are located from the Repository Root folder. These folders contain all files necessary to run Seal Report.

  • Assemblies: additional DLL (*.dll) that can be referenced in all Razor scripts. You can add your own assemblies in this folder and call them from any script compiled and executed during a report execution (e.g. in a Task).
  • Databases: dedicated folder for local database files (e.g. an MS Access file).
  • Devices: the device configurations (*.scfx) used by the report output. 2 types of devices are available: Folder to generate a report result in a file, or Email to send it to a user by SMTP.
  • Logs: the daily log files (*.txt). All execution messages are logged in a daily file (files are auto-purged).
  • Reports: the reports (*.srex), files and sub-folders published by the Web Report Server. The Reports root folder is the parent of all folders, files and reports published.
  • Security: the security defined for the Web Report Server (Security.xml) and a sub-folder containing the security providers (*.cshtml) available.
  • Settings: the Server configuration (Configuration.xml) and the translation files (*.csv).
  • Sources: the data source files (*.scfx) available for the reports. These data sources are shared amongst all the reports.
  • Dashboards: dashboards files(*.sdax) edited and published by the Web Report Server.
  • SpecialFolders\Personal: dedicated folder to store personal folders for each user. The folder contains reports, dashboards, files and the user's profile (_profile.xml).
  • SubReports: the sub-reports (*.srex) referenced by an element in a data source. Sub-Reports allow master-detail navigation from a report result.
  • Views: the view templates (*.cshtml) used by the report views with their configuration and their related JavaScript, CSS and image files.

Support: Need help ?

The product aims to be self-documented as a description is displayed for every field edited with the Report Designer or the Server Manager.
Use the Seal Report Forum to get free support, information and hints for the product.
Feel free to post your questions, comments or answers...

Consulting and Components: Get State of the Art Help

If you need professional consulting, trainings or workshops, please contact Ariacom.
In addition to the open source version of the Web Report Server, a Web Report Designer is available to edit and schedule your reports and to design your dashboards from any Web browser.
The company also offers a PDF and Excel Converter component to generate PDF Documents and native Excel Workbook directly from your Seal reports.

Pay for a new feature: Become a sponsor forever

If you need a new feature that could be used by the community and be part of the future product release, please contact us at Ariacom or using GitHub.
Check out the last requested product features at the dedicated forum: Feature Request.

Credits

Here is the list of the major Open Source components (Thank you so much !) used in Seal Report:

Contribute to Seal Report

Enhance the documentation and samples

Want to share your experience or to add a new topic ? Something is not clear in the documentation ? Do you have an interesting recipe ?
As the site for the documentation is part of the solution, you are welcome to Pull a Request at GitHub.

Add translation files

Do you have a translation files not yet supported by Seal Report ?
Check first the recipe Adding translation files.
As the translations are part of the project, feel free to Pull a Request at GitHub.

And more...

You are also welcome to help us in several different areas:
  • Beta testing.
  • Libraries of Data Sources and Reports on standard databases.
  • Additional View templates.
  • New features development.
Please feel free to contact us at Ariacom or use GitHub if you are interested in contributing to Seal Report.