WYSIWYG report designer is the most important component provided by JasperAssistant. To make the WYSIWYG statement actually true, JasperAssistant uses a high precision graphical engine able to reproduce with the highest possible fidelity visual objects that compose a report.
JasperAssistant tightly integrates itself with Eclipse IDE, closely following the best practices and recommendations applying to Eclipse Plug-ins.
JasperAssistant comes with a unique feature, an integrated report compiler. The compiler is implemented as an Eclipse Builder which allows it to participate in the standard build life cycle of the IDE. The report compiler is designed to be very fast, which makes it able to easily perform batch report compilations. Another important feature of the compiler is the precise error reporting. Errors are linked to report objects which makes locating the actual problem an easy task. Another powerful feature of the report compiler is its integration with Eclipse Java Projects. This feature allows you to effectively combine Java and JasperReports development. You can develop scriptlets and other helper classes using standard Eclipse Java Editor and then use them directly in your Jasper reports.
JasperAssistant includes report preview support which is accessible through an additional tab page inside the report designer. This page allows you to quickly switch between edit and preview modes as needed. Reports can be previewed and tested using live data from a JDBC database connection, an XML document, a Custom data source or test data from an empty data source.
Using export wizard, reports can be quickly exported to PDF, Excel, HTML, CSV and XML formats. Export wizard is also able to open the result using a preconfigured viewer, allowing this way to preview the report in any format.
JasperReports uses an internal binary format for compiled reports usually stored in files with *.jasper extension. JasperAssistant allows you to open such files in read-only mode and save them back to the XML format if such a need arises.
JasperAssistant supports drag-and-drop for most of its design tasks. Drag-and-drop is supported in the actual report editor as well as in the Outline View where you can move or reorder objects composing the structure of the edited report. You can also drag parameters, fields and variables from the Outline View into the report editor. Dropping them will automatically create the corresponding text field objects.
Undo/Redo functionality is one of the main requirements for a visual report designer. JasperAssistant is built around the principle that any change to the report is reversible.
JasperAssistant allows you to copy and paste various report objects in the context of the same report or between two different reports opened in the same instance of Eclipse IDE.
Properties View can be used to inspect and modify properties of the current selection. Virtually any report object can be configured through this view which minimizes the need for modal dialogs that clutter the interface. Properties can be simultaneously changed for a multiple selection. This optimizes the time needed to perform routine operations that involve sets of report objects.
Outline View provides an overall perspective of the structure of the edited report. This view is also used to edit non-visual report objects such as fonts, groups, parameters, fields and variables.
JasperAssistant is closely integrated with the Eclipse Problems View. All the report compilation errors are displayed in this view. Errors are mapped back to the structure of the report which allows to jump directly to the report object that is the source of the problem.
Intuitive context menus are provided for all report objects. The menu can be invoked directly in the editor as well as in the Outline View.
JasperAssistant provides a dedicated toolbar for text objects. This toolbar allows to perform a set of common actions specific to text content such as: changing font, font size, font style, text alignment. Toolbar actions work on multiple selections which allows you to change easily text properties for a set of text objects.
Zoom support is required when high precision design operations are performed. JasperAssistant allows you to zoom on any portion of the edited report making such tasks possible.
The report designer comes with an integrated component palette. The palette contains tools needed to perform design operations such as selections and creations of visual report objects. The palette can be customized by changing its size and presentation to match your taste and needs.
JasperAssistant provides a comprehensive set of align and resize actions aimed to speed up the development of Jasper Reports. Multiple report objects can be aligned and resized with minimum amount of effort. All actions are available from IDE's toolbar which further simplifies and speeds-up the report layout development.
JasperAssistant provides an advanced expression editor with integrated Java syntax highlighting and content assistant. Using the content assistant you can easily insert an existing report variable, field or parameter. The content assistant also provides you with a short help for built-in report objects.
JasperAssistant comes with a comprehensive User Guide that can be accessed from the standard Eclipse Help system. The guide is also available in online version or as a downloadable PDF document.
Database integration is one of the most desired features for a report designer. JasperAssistant provides a Field Wizard that automatically discovers the fields returned by a report query and integrates them into the report. The wizard can be invoked at any time during report design allowing you to adjust easily the report fields.
To further simplify the report development, JasperAssistant designer comes with support for Grid and Snap To Grid functionality. By using this feature, laying out visual report objects is easier than ever. To maximize the flexibility, settings such as grid visibility, snap to grid and grid size can be customized globally and individually for each report.
JasperAssistant provides support for rulers and guidelines. The Snap to Guides feature assists you in aligning visual report objects.
To accelerate the report development, JasperAssistant provides the possibility to define shortcuts for any of its actions. This way you can align, modify text style and perform other operations by simply invoking a previously defined key combination. Shortcuts can be defined through standard Eclipse "Key Bindings" interface available under the Preferences->Workbench->Keys preference page.
JasperAssistant comes with full support for JasperReports' data sources. Database, XML and empty data sources can be configured and used directly to preview your reports. Other data sources such as "Java Beans Array" data source, or any other user-defined data sources, can be plugged in using the "Custom Data Source" feature.