Server Edition

Report IconThe Server Edition makes it easy to create and deploy report applications to the web.

Using basic component configuration you can get a Windows service-based report server application up and running, a web application up and running, and have users previewing reports in a web browser in no time. And you can do it all without having to master multi-threaded programming, Windows Services, Windows Sockets, Windows System Tray applications, COM, I/O Completion Ports/Worker Thread Pools, XML, SOAP Services, ISAPI Thread Pools, XHTML, or JavaScript.

The Server Edition includes one server development license, one server deployment license, and a ReportBuilder Enterprise license. For a live demo, please visit http://www.digital-metaphors.com/rbserverlive.

Enterprise Edition

Report IconThe Enterprise Edition includes everything in Professional, plus the RAP language, which allows developers and end users to code calculations and complex event handlers at run-time. RAP enables the entire report definition (data, calculations, and layout) to be stored outside of the application executable. RAP enables developers to include Object Pascal code and Delphi-style event handlers within reports, making report layouts stand alone entities that can simply be loaded and executed.

RAP continues in ReportBuilder’s tradition of extensibility, affording developers the ability to provide powerful Delphi functionality wrapped for users as simple function calls that can be easily generated via the RAP Code Toolbox. It also allows end-users to create calculations with a simple, intuitive drag & drop interface.

Professional Edition

Report IconIncludes all features of ReportBuilder Standard Edition…

Use DADE to visually define and link SQL queries.

DADE enables developers and end-user to quickly and easily build and link SQL queries that can be saved as part of the report definition. Distribute DADE royalty-free, as part of an end-user reporting solution.

DADE adds a Data tab to the Report Designer that provides an easy to user interface for building and linking SQL queries. Build full featured End-User reporting solutions that can be distributed royalty-free.

Standard Edition

Report IconUse the Report Wizards and Drag-and-Drop tools to quickly produce layouts. Then refine the layouts using the MS Office style Report Designer.

Build complex reports using a full suite of components: Text, Lines, Shapes, Charts, Barcodes, Regions, and Subreports.

Elegantly model free-form reports, nested reports, side-by-side reports and drill-down reports.Use the datapipeline components to access data from databases, text files, and in-memory data structures such as arrays and lists. Create custom components to extend the power of the Report Component Library (RCL).

Server Edition

serv

The Server Edition makes it easy to create and deploy report applications to the web.

Using basic component configuration you can get a Windows service-based report server application up and running, a web application up and running, and have users previewing reports in a web browser in no time. And you can do it all without having to master multi-threaded programming, Windows Services, Windows Sockets, Windows System Tray applications, COM, I/O Completion Ports/Worker Thread Pools, XML, SOAP Services, ISAPI Thread Pools, XHTML, or JavaScript.

The Server Edition currently includes a single developer license for ReportBuilder Server and a single developer license to ReportBuilder Enterprise. Also included is a Server Deployment license for a single CPU. This enables you to install a report server solution to a single CPU machine.  Thus to deploy a server solution to a dual processor machine requires two deployment licenses. A report server can support as many clients as the hardware will allow. In summary, the licensing is per server CPU, not per client seat.

Report Server

Serve report content over the web via a multi-threaded Windows Service
Provide a list of available reports in a folder tree structure
Send and receive search criteria for a given report

Web Tier

Publish reports as XHTML to web browser clients
Build ISAPI, ASP, Apache web applications
Customize the generated XHTML and JavaScript framework

Client Support

Web: Select available reports, enter search criteria and preview report content
Thin Client: Use the standard ReportBuilder UI to access server-based reports from within a Delphi application

Enterprise Edition

entWith ReportBuilder Enterprise, you get everything included in ReportBuilder Professional, plus the RAP language, which allows developers and end users to code calculations and complex event handlers at run-time. RAP enables the entire report definition (data, calculations, and layout) to be stored outside of the application executable.

In the introduction to ReportBuilder, the reporting equation is described. The reporting equation divides reporting into four main activities:

    +       +        =    

Data Access       Data Process       Report Layout      Report Output

In ReportBuilder Enterprise, the goal is to deliver a full-fledged reporting solution to end users. This goal is achieved by delivering visual, easy-to-use solutions in each of these four areas. This screen shot of the ReportBuilder Report Designer shows the ergonomic design of the user-interface.

Each of the four areas of reporting has a representative notebook tab containing a visual environment for the creation and configuration of components within that area. The results of each area then become inputs to the next area: data feeds into calculations, calculations feed into components within the report layout, and the report layout is rendered into a preview of the report. The implementation used by ReportBuilder Enterprise for each area of reporting is described below.

Data

Within the work environment of the Data tab, end users can quickly create dataviews, which can then be used to supply data to reports. Dataviews are usually created via the Query Wizard or Query Designer. Both of these tools are visual; they also allow the end user to select the tables, fields, search criteria, and sort order necessary for the report. Behind the scenes, an SQL statement is generated and used to retrieve the data from the database. A screen shot of a completed dataview is shown below.

The solution described above is the standard behavior within the data workspace. However, the developer can customize this user-interface by doing one of three tasks:

Register a replacement query wizard or query designer.
Remove the query wizard or query designer.
Create new dataview template classes that can simplify the data selection process even further by establishing the relationship between the tables in the database and presenting an alternative user-interface (such as a single form that allows search/sort criteria to be entered).

The bottom line is that the Data area contains a turnkey solution that can be used out-of-the-box, but if customizations are needed, an architecture has been provided so that those customizations are possible.

Calc

The Calc workspace is used to manage the RAP code associated with the Report. The Calc workspace contains a tree view of the report, all the bands within the report, and all the objects within each band. When a band or component is selected, all the events for that component are shown in a list. The user can then select an event and code the event handler in the syntax-sensitive code editor at the bottom. The following screen shot shows an OnPrint event as coded for a Line component.

This screen shot shows the Calc workspace in its most feature-rich and complex configuration. Development work completed here can be passed on to end users so that they can modify it, locked down so that end users can only view it, hidden completely so that end users do not know it is there. The most scaled-down version of the Calc tab is provided by the dialog only interface, where no Calc tab exists at all, and a single syntax-sensitive code-editor dialog is accessible from the Calculations… menu option of the variable component. The user-interface and behind-the-scenes architecture has been made highly scalable in order to meet the various needs of developers.

Design

The Design workspace contains the actual layout of the report. The user-interface is identical to the one presented to developers using ReportBuilder at Delphi design-time; in other words, it is full-featured and professional. The Office97 interface-style makes the Design workspace especially easy to learn for end users. A Report Wizard is available for creating reports quickly. You can customize this interface by replacing any of the dialogs it uses and by registering your own report wizards.

Preview

The Preview workspace contains the rendered report. The report can be printed to the printer or to various file formats from this workspace.

Professional Edition

proWith ReportBuilder Professional, you get everything included in ReportBuilder Standard, plus a set of components that enables end-users to perform the data access, report layout, and report output activities of the reporting equation.

 

    +       +        =    

Data Access       Data Process       Report Layout      Report Output

This goal is achieved by delivering visual, easy-to-use solutions.

Data

Within the work environment of the Data tab, end users can quickly create dataviews, which can then be used to supply data to reports. Dataviews are usually created via the Query Wizard or Query Designer. Both of these tools are visual; they also allow the end-user to select the tables, fields, search criteria, and sort order necessary for the report. Behind the scenes, an SQL statement is generated and used to retrieve the data from the database. A screen shot of a completed dataview is shown below.

The solution described above is the standard behavior within the data workspace. However, the developer can customize this user-interface by doing one of three tasks:

Register a replacement query wizard or query designer.
Remove the query wizard or query designer.
Create new dataview template classes that can simplify the data selection process even further by establishing the relationship between the tables in the database and presenting an alternative user-interface (such as a single form that allows search/sort criteria to be entered).

The bottom-line is that the Data area contains a turnkey solution that can be used out-of-the-box, but if customizations are needed, an architecture has been provided so that those customizations are possible.

Design

The Design workspace contains the actual layout of the report. The user-interface is identical to the one presented to developers using ReportBuilder at Delphi design-time; in other words, it is full-featured and professional. The Office97 interface-style makes the Design workspace especially easy to learn for end users. A Report Wizard is available for creating reports quickly. You can customize this interface by replacing any of the dialogs it uses and by registering your own report wizards.

Preview

The Preview workspace contains the rendered report. The report can be printed to the printer or to various file formats from this workspace.

Standard Edition

stdReportBuilder is a development environment that can be used to construct reports, report components, and reporting applications. Because reporting encompasses a very wide range of requirements, it is often difficult to put a limit on what should be expected of a reporting tool.

The designers of ReportBuilder reduced this broad set of requirements down to the following equation:

 

    +       +        =    

Data Access       Data Process       Report Layout      Report Output

Data Access is the retrieval of data from a database table, text file, Delphi object, or other data source in an organized fashion (structured as records and fields).

Data Process refers to the calculation of intermediate results based on the data and the modification of the report layout as the report generates.

Report Layout is a set of components that describe the look and feel of the report and define the behavior of components during report generation.

Report Output is a set of components that describe the exact content of each page.

This equation more or less covers the entire area of development known as reporting. In terms of importance, each element of the equation is basically equal. If any one element of the equation is not supported or is weakly supported, than the utility of the reporting solution is greatly reduced.

Leveraging Delphi

Early versions of ReportBuilder focused on the report layout and report output elements, largely due to the fact that Delphi has abundant solutions for the data access (DataSets, FileStreams, StringLists, etc.) and for the data process (events and Object Pascal) elements. In fact, utilizing these solutions is still a quite valid and productive way for developers to use ReportBuilder. The developer can configure standard Delphi data access components, connect them to a report via the data pipeline component, design and preview the report at Delphi design-time, and, if necessary, code event handlers in Object Pascal to perform calculations or to modify the report layout during generation.

End-User Reporting Solutions

ReportBuilder Professional and Enterprise editions enable developers to provide end-user reporting solutions in which end-users can create and modify reports themselves. In the development of ReportBuilder end-user reporting solutions, it was discovered that facilities for the data access and data process elements were also needed for end-users who were utilizing the ReportBuilder Report Designer as part of a running application. Within the context of a running application, the Delphi developer has no way of providing access to the Data or to Object Pascal as development environments. End-users could not, therefore, avail themselves of these powerful tools. This situation eventually led to the development of DADE (the Data Access Development Environment) and RAP (the Report Application Pascal programming language), which gave end-users complete solutions to data access and data process respectively. DADE is provided with ReportBuilder Professional Edition. ReportBuilder Enterprise Edition includes both DADE and RAP.