Report DSL
Contents
Copyright Notice
All rights are reserved by Compex Systemhaus GmbH. In particular, duplications, translations, microfilming, saving and processing in electronic systems are protected by copyright. Use of this manual is only authorized with the permission of Compex Systemhaus GmbH. Infringements of the law shall be punished in accordance with civil and penal laws. We have taken utmost care in putting together texts and images. Nevertheless, the possibility of errors cannot be completely ruled out. The Figures and information in this manual are only given as approximations unless expressly indicated as binding. Amendments to the manual due to amendments to the standard software remain reserved. Please note that the latest amendments to the manual can be accessed through our helpdesk at any time. The contractually agreed regulations of the licensing and maintenance of the standard software shall apply with regard to liability for any errors in the documentation. Guarantees, particularly guarantees of quality or durability can only be assumed for the manual insofar as its quality or durability are expressly stipulated as guaranteed. If you would like to make a suggestion, the Compex Team would be very pleased to hear from you.
(c) 2016-2024 Compex Systemhaus GmbH
Documentation
Introduction
Vaadin
Vaadin is a web application framework for Java. In contrast to Javascript libraries and browser-plugin based solutions, Vaadin features a complete stack that includes a robust server-side programming model as well as client-side development tools based on GWT and HTML5.
More information:
Birt Report
The Business Intelligence and Reporting Tools (BIRT) Project is an open source software project that provides reporting and business intelligence capabilities for rich client and web applications, especially those based on Java and Java EE. BIRT is a top-level software project within the Eclipse Foundation, an independent not-for-profit consortium of software industry vendors and an open source community.
The project's stated goals are to address a wide range of reporting needs within a typical application, ranging from operational or enterprise reporting to multi-dimensional online analytical processing (OLAP). Initially, the project has focused on and delivered capabilities that allow application developers to easily design and integrate reports into applications. The project is supported by an active community of users at BIRT Developer Center and developers at the Eclipse.org BIRT Project page.
BIRT has two main components: a visual report designer within the Eclipse IDE for creating BIRT Reports, and a runtime component for generating reports that can be deployed to any Java environment. The BIRT project also includes a charting engine that is both fully integrated into the report designer and can be used standalone to integrate charts into an application.
BIRT Report designs are persisted as XML and can access a number of different data sources including JDO datastores, JFire Scripting Objects, POJOs, SQL databases, Web Services and XML.
https://en.wikipedia.org/wiki/BIRT_Project
http://developer.actuate.com/about/
Report DSL
ReportDSL generates the vaddin s ui and birt report.
The main semantic elements of the ReportDSL are:
- “package” – the root element that contains all the other elements. A model can contain multiple packages.
- “import” declarations – used to import external models or even Java classes.
- “externalCssURI” – define the optional external CSS URI for all report .
- “pagetemplate” – define the report page template, e.g. page size, orientation, margin, header, footer, etc.
- “formatters” – define the formatter types for all report .
- “colors” – define the color types for all report .
- “fonts” – define the font types for all report .
- “medias” – define the media types for all report .
- “styles” – define the style types for all report .
- “report” – define the data source details for the report, e.g. row/column configurations, legend details and tooltips configurations.
Syntax
Package definition
package <package name> {
[import <import models/class name>]
...
[externalCssURI <URI string> [from bundle <bundle string>]]
[pagetemplate <pagetemplate name>
{
...
}]
...
formatters {...}
colors {...}
fonts{...}
medias{...}
styles{...}
[report <report name>
{
...
}]
...
}
Notes:
- externalCssURI is used to define the external CSS for the all report in this package.
- pagetemplate is used to define the page template formate for all report in this package.
- User can also define different formatters, colors, fonts, medias and styles template for all reports in this package. All these definitions could be defined in a separated package and import to other report-packages as well.
- For each report definition, a <reportname>+Report.java file will be generated, in which a java class named <reportname>+Report extended from java class CCBaseReport is defined. In this class, report and report configurations are defined. Additionally a <reportname>.rptdesign file will be also gererated, in which a birt report is defined.