ReportBuilder Enterprise v20.01.322 for Delphi 7 - Delphi 10.3 Rio

ReportBuilder Enterprise v20.01.322 for Delphi 7 - Delphi 10.3 Rio

ReportBuilder Enterprise v20.01.322 for Delphi 7 - Delphi 10.3 Rio
ReportBuilder Enterprise v20.01.322 for Delphi 7 - Delphi 10.3 Rio


ReportBuilder is the defacto standard for Delphi reporting solutions. Delphi developers have consistently voted ReportBuilder Product of the Year (1999 – 2002) and Best Reporting Tool (1999 – 2003). The genesis of ReportBuilder was the desire to deliver a product that does for Reporting what Delphi has done for Windows programming. In that spirit, ReportBuilder provides both a RAD environment and an object-oriented platform for solving the reporting equation.

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.

Bug Fixes for RB 20.01
----------------------

Designer
- Center Horizontally action incorrect when margins displayed
- DataTree, TreeView popup menu was also assigned to ListView (confusing)
- Text InPlaceEditor, AV can occur when press enter key to exit edit mode
- Fix validation for dragging objects within scaled workspace bounds
- PopupMenu, Disable ShiftRelativeTo when Parent is StretchableContainer
- Inspector, Unit finalization should free uCheckMark
- GetStretchableComponents, omit when Parent is StretchableContainer

Dialogs
- Forms, Improve DPI support for old Delphi
- Crosstab Designer, Added DPI support
- PrintDialog, LanguageChange, added calls to ScaleToDPI
- PrintDialog, DPI for Old Delphi, scale owner draw ComboBox ItemHeight
- PrintDialog, Background print support for file export
- PrintDialog, Email file option added for file export
- PrintDialog, Some controls cut off for certain languages
- RichText Editor, DPI, old Delphi - scale owner draw ListBox ItemHeight
- Format Dialog, DPI, old Delphi does not scale owner draw ListBox ItemHeight
- RichText Editor, Panels need ShowCaption False
- ReportWizard, DFM cleanup, delete unused labels
- ReportWizard, DPI, improve MetaBitmaps accuracy
- Group Dialog, DPI, call ancestor SaveWindowBounds/LoadWindowBounds

DataPipeline
- TextPipeline, Published OnGetFieldValue event

Engine
- PageSummary.AlignToBottom, fix case Footer PrintOnFirst/LastPage False

RCL
- Checkbox, enhance BooleanTrue/False props to support empty string
- DBCheckbox, backward compatibility for BooleanTrue/False empty string
- Component, improved SaveOrder validation
- CustomText, Hyperlink hint incorrect in some cases
- CustomText, FormFieldType can be incorrect when loading old archives
- DBText, Hyperlinks not resized when auto-sized
- Stretchable, When Parent is StretchableContainer, force ShiftRelativeTo nil
- Crosstab, DPI mods (requires re-saving reports)

Graphics
- Metagraphics, Fix to work around 64-bit compiler issue
(can occur when exporting RichText to Xlsx/Xls
- Transparent image mask was incorrect in some cases

Output
- File, Check for pages processed when exporting to file (delete file when 0)
- Archive, mod PageEntryRec to ensure correct byte alignment
- Xlsx, Fix for shape renderer when pen and brush are clear
- Xlsx, Fix for line renderer, range check error can occur
- Xlsx, Add hyperlink prefix 'http://' when '://' missing
- Xlsx, Added check for Row < 0, when rendering drawings (image, shape, line)
- Xlsx, Fix range check error. Do not write empty strings
- Xls, Mod to skip writing cells when value is empty string
- Printer, Fix calc print position for printers where DPI X <> Y
- Screen, Fix CalcScaledPageSize & CalcZoomPercentage when Viewer = nil
- Viewer, Memory leak can occur handling DPI change
- Preview, HyperlinkHint can display for non-hint links
- Preview, Text Search result misaligned for centered text
- Preview, Cursor can be incorrect after printing
- Preview, AV can occur when toggling SiglePageOnly property
- Image, Improve thread support, moved Canvas.Lock/Unlock to SavePageToFile
- PDF/RTF, Removed redundant CancelJob code from PDF and RTF devices
- PDF, MS JhengHei font caused AV when exporting as a subset embedded font
- PDF, Improve thread support, moved Canvas.Lock/Unlock to SavePageToFile
- PDF, Transparent image mask incorrect in some cases
- PDF, Updated PDF version for PDF/A files
- PDF, Removed FFormFieldType property from TppPage to prevent some errors

Email
- ExtendedMapi, HTML email body was not displaying correctly
- Rest Mail Outlook365, Updated to use the new Microsoft Graph API
- Rest Mail Outlook365, Fixed preview email bug

------> Professional <--------

ReportExplorer
- Added validation to prevent Folder/Item names from being space(s)

DADE
- SQL, SQLType SybaseASA does not support RowLimit 0

------> Enterprise <--------

RAP
- Null not recognized by compiler


Warning! You are not allowed to view this text.


Only for V.I.P
Warning! You are not allowed to view this text.


Information
Users of Guests are not allowed to comment this publication.