Report design recommendations

Top  Previous  Next

In this chapter, special design requirements of reports intended for export to other data formats will be discussed.

 

FastReport allows a great number of ways to manipulate objects during report creation. This gives the advantage of fast development of any reports and their further printing. Printed document will look just as on display. And this is the primary intent of FastReport report generator usage.

 

The downside of such development freedom is the complexity of exporting the FastReport document to different data formats, which have their own limits and requirements for information presentation, and are sometimes rather complex. Many formats, such as HTML, XLS or RTF, use table data presentation. These formats do not allow cell crossing or arranging in layers when table marking.

 

Export filters, as a rule, take into account these requirements. This is carried out by special algorithm which takes object crossings into account and places them optimally. At object crossing, there are new columns and rows in the resulting output table appear. That is necessary for getting maximum resemblance between the result and original report. A large number of crossed objects in report design, leads to an increased number of columns and rows in the resulting table, that affects the file size and its complexity.

 

The quality of the export depends greatly on competent design of initial report. Let us look at the following example:

 

badFormedReport1

 

There is a slight crossing of two objects placed one under another on the same band. The number of records on report forming was 150. On export to RTF format 450 rows will be created (150 rows for each object and 150 ones for crossing). If we remove crossing, there will be only 300 rows in the resulting table. In large reports and on huge number of objects the difference will be really tremendous. That, of course, will affect output file size.

 

When creating tables in report, pay attention to neighboring cell's borders. It is important that cells do not cross and arrange in layers. Export filter algorithm will cut off cells but export result may be far from desirable (you will see not exactly what you wanted to). Arrange objects in such a way that they are placed in line vertically as well as horizontally. Guidelines can help to perform this.

 

The grid alignment can also be helpful in case of cells overlapping. Enable grid alignment in designer options. In order to simplify alignment you can extend grid pitch. Setting of grid pitch and alignment can be found in the "View|Options..." menu:

 

snapToGrid

 

For text framing it is better to use text object's border instead of single graphic objects such as lines, rectangles, etc. Try not to use background objects under transparent text objects.

 

Applying these simple rules will help you to create a report which will look perfect after being exported to any table-based format.